This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.


Discrete-time, state-space filter


Hd = dfilt.statespace(A,B,C,D)
Hd = dfilt.statespace


Hd = dfilt.statespace(A,B,C,D) returns a discrete-time state-space filter, Hd, with rectangular arrays A, B, C, and D.

A, B, C, and D are from the matrix or state-space form of a filter's difference equations


where x(n) is the vector states at time n, u(n) is the input at time n, y is the output at time n, A is the state-transition matrix, B is the input-to-state transmission matrix, C is the state-to-output transmission matrix, and D is the input-to-output transmission matrix. For single-channel systems, A is an m-by-m matrix where m is the order of the filter, B is a column vector, C is a row vector, and D is a scalar.

Hd = dfilt.statespace returns a default, discrete-time state-space filter, Hd, with A=[ ], B=[ ], C=[ ], and D=1. This filter passes the input through to the output unchanged.

The resulting filter states column vector has the same number of rows as the number of rows of A or B.


Create a second-order, state-space filter structure from a second-order, lowpass Butterworth design.

[A,B,C,D] = butter(2,0.5);
Hd = dfilt.statespace(A,B,C,D)

See Also

Introduced before R2006a

Was this topic helpful?