Maxplus Function
Last update : 18/05/2014

mpsyslin - maxplus linear system constructor

Calling Sequence

[sl]=syslin(A,B,C [,D [,x0] ])

Parameters

Description

mpsyslin defines an implicit dynamic linear maxplus system as a list and checks the consistency of data in the state space representation.

sl=mpsyslin(A,B,C [,D [,x0] ])
   

represents the maxplus system :

      x(n) =  D*x(n) + A*x(n-1) + B*u(n)
        y  =  C*x(n) 
      x(0) = x0
   

The output of mplsyslin is a list of the following form: sl=tlist(['mpls','A','B','C','D','X0'],A,B,C,D,x0) printed

      x=Dx+Ax'+Bu
      y=Cx
   

as soon as the sizes of the matrices are compatible with this pretty print.

Maxplus Linear systems defined as mpsyslin can be manipulated as usual matrices -- see examples below.

Most of maxplus state-space control functions receive a mpsyslin list as input instead of the four matrices defining the system.

Examples

A=[%0,1;%0,%0];B=#([1;1]);C=#([1,1]);
S1=mpsyslin(A,B,C) 
S1("A")
S1("D")
S1("X0")
S2=mpsyslin([%1],[%1],[%1])
S1+S2 // Parallel composition
S2*S1 // Series composition
[S1,S2] // Output addition composition
[S1;S2] // Input in common composition
S3=S1|S2 // Diagonal composition
S1/.S2 // star(S1*S2)*S1 Feedback composition
S3(1,1) // Subsystem  extraction
 

See Also

tlist,