.Modelica_LinearSystems2.StateSpace.'*'

Information

Syntax

ss = StateSpace.'*'(ss1, ss2)

Description

This operator function computes the addition of two state space systems connected in series.

The operator is used by writing just the following command:

result := ss1 * ss2;

Example

  StateSpace ss1 = StateSpace(A=[-1, 0; 0, -2], B=[1; 2], C=[0, 1], D=[0]);
  StateSpace ss2 = StateSpace(A=[-3, 0; 0, -4], B=[3; 4], C=[0, 2], D=[0.2]);

  StateSpace ss3;

algorithm
  ss3 := ss1 - ss2;
// ss.A = [-1, 0, 0, 0; 0, -2, 0, 0; 0, 0, -3, 0; 0, 0, 0, -4],
// ss.B = [0.2; 0.4; 3; 4],
// ss.C = [0, 1, 0, 0],
// ss.D = [0],

Interface

encapsulated operator function '*'
  import Modelica_LinearSystems2.StateSpace;
  input StateSpace ss1 "State space system 1";
  input StateSpace ss2 "State space system 2";
  output StateSpace result(redeclare Real A[size(ss1.A, 1) + size(ss2.A, 1), size(ss1.A, 2) + size(ss2.A, 2)], redeclare Real B[size(ss1.B, 1) + size(ss2.B, 1), size(ss2.B, 2)], redeclare Real C[size(ss1.C, 1), size(ss1.C, 2) + size(ss2.C, 2)], redeclare Real D[size(ss1.D, 1), size(ss2.D, 2)]) "y = G(s)*u = G(ss1)*G(ss2)*u";
end '*';

Generated at 2024-11-22T19:25:38Z by OpenModelicaOpenModelica 1.24.2 using GenerateDoc.mos