eigenValueMatrix

Return real valued block diagonal matrix J of eigenvalues of matrix A (A=V*J*Vinv)

Information

This information is part of the Modelica Standard Library maintained by the Modelica Association.

Syntax

Matrices.eigenValueMatrix(eigenvalues);

Description

The function call returns a block diagonal matrix J from the two-column matrix eigenvalues (computed by function Matrices.eigenValues). Matrix eigenvalues must have the real part of the eigenvalues in the first column and the imaginary part in the second column. If an eigenvalue i has a vanishing imaginary part, then J[i,i] = eigenvalues[i,1], i.e., the diagonal element of J is the real eigenvalue. Otherwise, eigenvalue i and conjugate complex eigenvalue i+1 are used to construct a 2 by 2 diagonal block of J:

J[i  , i]   := eigenvalues[i,1];
J[i  , i+1] := eigenvalues[i,2];
J[i+1, i]   := eigenvalues[i+1,2];
J[i+1, i+1] := eigenvalues[i+1,1];

See also

Matrices.eigenValues

Syntax

J = eigenValueMatrix(eigenValues)

Inputs (1)

eigenValues

Type: Real[:,2]

Description: Eigen values from function eigenValues(..) (Re: first column, Im: second column)

Outputs (1)

J

Type: Real[size(eigenValues, 1),size(eigenValues, 1)]

Description: Real valued block diagonal matrix with eigen values (Re: 1x1 block, Im: 2x2 block)