You are on page 1of 3

SIGSSP - state space dynamic_state_space

Description
Implements a linear state space system of the form

dx
= Ax+ Bu
dt
y = Cx+ D u
where

u is the vector of inputs


y is the vector of outputs
x is the state vector
A, B, C, D are the matrices describing the system.

The A, B, C, D matrices can be set either by reading 4 XY tables, a linearization file (.jac), a state space file created using Matlab and the
M-file ss2ame, or set manually as parameters. This working mode is set with the matrix setting parameter.

Usage
This submodel is designed for importing state space systems defined by their A, B, C, D matrices. Note that the import linear model
option does not use SIGSSP, but DYNSTATESPACE submodel.

External variables

Title Variable name Unit Type In/Out Default value


Port 1
1 output y null basic variable output -
Port 2
1 input u null basic variable input -

Internal variables
Title Variable name Unit Type Default value
1 state variable x null explicit state 0

Integer parameters
Title Variable name Default value
1 matrix setting matset 1: direct

Text parameters
Title Variable name Default value
1 filename for A matrix Afile Amat.data
2 filename for B matrix Bfile Bmat.data
3 filename for C matrix Cfile Cmat.data
4 filename for D matrix Dfile Dmat.data
5 A matrix row Arow 1
6 B matrix row Brow 1
7 C matrix row Crow 1
8 D matrix row Drow 1
9 AMESim jacobian file (*.jac) jacfile file.jac
10 state space file (*.ssp) sspfile file.ssp

Structural parameters
Title Variable name Default value
1 number of inputs numInp 1
2 number of outputs numOut 1
3 number of states numStates 1

Parameter settings
The number of inputs, number of outputs and number of states of the model are structural parameters. These can be defined when the
icon of SIGSSP is selected from the category, by the following dialog:

These 3 parameters will fix the dimensions of the A, B, C, D matrices. Their dimensions are

A : numStates by numStates
B : numStates by numInp
C : numOut by numStates
D : numOut by numInp

The matrix setting parameter offers the choice between 4 different methods to enter the coefficients of the A, B, C, D matrices: either
direct setting of numerical values, or read from 3 different types of files.

Direct method for coefficients of matrices


This method creates one line of text per matrix row. The coefficients must be separated by semicolon (or pipes). The following
figure is an example with 3 inputs, 2 outputs and 3 states:
Each coefficient can be a constant value but also an expression. The coefficient A(1,1) illustrates this since it is equal to
"0.7+0.3". The expression can even depend on global parameters. Referencing global parameters in matrix coefficients is a
useful way to perform optimization on some matrix coefficients.

Coefficients read from matrix files


The coefficients of each matrix are read in a file having the format of an XY table. Note that if the dimension of one matrix read in
a table does not match the dimension requested by the submodel, the simulation will be stopped.

Coefficients read from Jacobian file


The Jacobian file (.jac) is a file created during a linearization process. The file contains the coefficients of the A, B, C, D
matrices in text format. Refer to the Linear Analysis manual for more information on the way to set a linearization time. Note that
the linearization file must come from another model than the model containing the instance of SIGSSP.

Coefficients read from state space file


The state space file (.ssp) is a file created by the script tool ss2ame, available in Matlab or Python languages. The ssp file
contains the coefficients of the A, B, C, D matrices.

Contents of the Signal, Control library

©2019 Siemens Industry Software NV

You might also like