| Simulink® | ![]() |
Continuous

The State-Space block implements a system whose behavior is defined by
![]()
where x is the state vector, u is the input vector, and y is the output vector. The matrix coefficients must have these characteristics, as illustrated in the following diagram:
A must be an n-by-n matrix, where n is the number of states.
B must be an n-by-m matrix, where m is the number of inputs.
C must be an r-by-n matrix, where r is the number of outputs.
D must be an r-by-m matrix.

The block accepts one input and generates one output. The input vector width is determined by the number of columns in the B and D matrices. The output vector width is determined by the number of rows in the C and D matrices.
Simulink® software converts a matrix containing zeros to a sparse matrix for efficient multiplication.
By default Simulink software uses the absolute tolerance value specified in the Configuration Parameters dialog box (see Solver Pane) to solve the states of the State-Space block. If this value does not provide sufficient error control, specify a more appropriate value in the Absolute tolerance field of the State-Space block's dialog box. The value that you specify is used to solve all the block's states.
A State-Space block accepts and outputs real signals of type double.

The matrix coefficients.
The initial state vector. Simulink software does not allow the initial conditions of this block to be inf or NaN.
Absolute tolerance used to solve the block's states. You can enter auto or a numeric value. If you enter auto, Simulink software determines the absolute tolerance (see Solver Pane). If you enter a numeric value, Simulink software uses the specified value to solve the block's states. Note that a numeric value overrides the setting for the absolute tolerance in the Configuration Parameters dialog box.
Use this to assign a unique name to each state. The state names apply only to the selected block. If left blank, no name is assigned.
To assign a name to a single state, enter the name between quotes, for example, 'velocity'.
To assign names to multiple states, enter a comma-delimited list surrounded by braces. For example, {'a', 'b', 'c'}. Each name must be unique.
The number of states must be evenly divided by the number of state names. There can be fewer names than the number of states, but there cannot be more names than states.
For example, you can specify two names in a system with four states. Simulink software will assign the first name to the first two states and the second name to the last two.
To assign state names with a variable that has been defined in the MATLAB® workspace, enter the variable without quotes. A variable can be a string, cell, or structure.
Direct Feedthrough | Only if D ≠ 0 |
Sample Time | Continuous |
Scalar Expansion | Yes, of the initial conditions |
States | Depends on the size of A |
Dimensionalized | Yes |
Zero Crossing | No |
![]() | Squeeze | Step | ![]() |
| © 1984-2008- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |