functiontoDiagonalForm

Perform the similarity transformation with the (real) inverse right eigenvector matrix of the system, that lead to the Jordan canonical form for single eigenvalues

Information

Syntax

tss = StateSpace.Transformation.toDiagonalForm(ss)

Description

This function computes the diagonal form of a SISO state space system, i.e.

tss:
der(z) = inv(T)*A*T*z + inv(T)*B*u
    y  = C*inv(T)*z + D*u

Matrix T has to be diagonalizable, i.e. the algebraic and geometric multiplicities of an eigenvalue must coincide. The diagonal entries of the new system matrix tss.A are the eigenvalues off the systemmatrix ss.A.

Example

   Modelica_LinearSystems2.StateSpace ss=Modelica_LinearSystems2.StateSpace(
      A=[-1, 1; 0, -2],
      B=[1; 0],
      C=[1, 1],
      D=[2]);

algorithm
  tss:=Modelica_LinearSystems2.StateSpace.Transformation.toDiagonalForm(ss);
//  tss=StateSpace(
      A=[-1, 0; 0, -2],
      B=[1; 0],
      C=[1, 0],
      D=[0])

See also

toSimilarForm

Inputs

TypeNameDefaultDescription
StateSpacessState space system

Outputs

TypeNameDefaultDescription
StateSpacetssTransformed state space system