append

Group models by appending their inputs and outputs

Syntax

sys = append(sys1,sys2,...,sysN)

Description

sys = append(sys1,sys2,...,sysN) appends the inputs and outputs of the models sys1,...,sysN to form the augmented model sys depicted below.

For systems with transfer functions H1(s), . . . , HN(s), the resulting system sys has the block-diagonal transfer function

[H1(s)000H2(s)000HN(s)]

For state-space models sys1 and sys2 with data (A1B1C1D1) and (A2B2C2D2), append(sys1,sys2) produces the following state-space model:

[x˙1x˙2]=[A100A2][x1x2]+[B100B2][u1u2][y1y2]=[C100C2][x1x2]+[D100D2][u1u2]

Arguments

The input arguments sys1,..., sysN can be model objects s of any type. Regular matrices are also accepted as a representation of static gains, but there should be at least one model in the input list. The models should be either all continuous, or all discrete with the same sample time. When appending models of different types, the resulting type is determined by the precedence rules (see Rules That Determine Model Type for details).

There is no limitation on the number of inputs.

Examples

The commands

sys1 = tf(1,[1 0]);
sys2 = ss(1,2,3,4);
sys = append(sys1,10,sys2)

produce the state-space model

a = 
       x1  x2
   x1   0   0
   x2   0   1
 
b = 
       u1  u2  u3
   x1   1   0   0
   x2   0   0   2
 
c = 
       x1  x2
   y1   1   0
   y2   0   0
   y3   0   3
 
d = 
       u1  u2  u3
   y1   0   0   0
   y2   0  10   0
   y3   0   0   4
 
Continuous-time model.
Was this topic helpful?