WOLFRAM SYSTEM MODELER

StateSpace

Discrete-time State Space block

Wolfram Language

In[1]:=
SystemModel["Modelica_Synchronous.RealSignals.Periodic.StateSpace"]
Out[1]:=

Information

This block defines the state space representation of a discrete-time block with input vector u, output vector y and state vector x:

    x = A * previous(x) + B * u
    y = C * previous(x) + D * u

where previous(x) is the value of the clocked state x at the previous clock tick. The input is a vector of length nu, the output is a vector of length ny and nx is the number of states. Accordingly

        A has the dimension: A(nx,nx),
        B has the dimension: B(nx,nu),
        C has the dimension: C(ny,nx),
        D has the dimension: D(ny,nu)

Example:

     parameter: A = [0.12, 2;3, 1.5]
     parameter: B = [2, 7;3, 1]
     parameter: C = [0.1, 2]
     parameter: D = zeros(ny,nu)

results in the following equations:
  [x[1]]   [0.12  2.00] [previous(x[1])]   [2.0  7.0] [u[1]]
  [    ] = [          ]*[              ] + [        ]*[    ]
  [x[2]]   [3.00  1.50] [previous(x[2])]   [0.1  2.0] [u[2]]

                        [previous(x[1])]            [u[1]]
  y[1]   = [0.1  2.0] * [              ] + [0  0] * [    ]
                        [previous(x[2])]            [u[2]]

Parameters (6)

nin

Value: size(B, 2)

Type: Integer

Description: Number of inputs

nout

Value: size(C, 1)

Type: Integer

Description: Number of outputs

A

Value:

Type: Real[:,size(A, 1)]

Description: Matrix A of state space model

B

Value:

Type: Real[size(A, 1),:]

Description: Matrix B of state space model

C

Value:

Type: Real[:,size(A, 1)]

Description: Matrix C of state space model

D

Value: zeros(size(C, 1), size(B, 2))

Type: Real[size(C, 1),size(B, 2)]

Description: Matrix D of state space model

Outputs (1)

x

Type: Real[size(A, 1)]

Description: State vector

Connectors (2)

u

Type: RealInput[nin]

Description: Connector of clocked, Real input signals

y

Type: RealOutput[nout]

Description: Connector of clocked, Real output signals

Used in Examples (1)

TestStateSpace

Modelica_Synchronous.WorkInProgress.Tests

Revisions

Release Notes:

  • August 13, 2012 by Bernhard Thiele:
    Used the code from Blocks.Discrete.StateSpace and converted it into the Modelica 3.3 clocked equation style.