Engee documentation

Cholesky Solver

Solving a system of linear equations with a square Hermite positively defined coefficient matrix using the Cholecki decomposition.

cholesky solver

Description

The Cholesky Solver block solves the linear system of equations using the Cholesky decomposition of the input matrix :

  • - the input signal at port S as a square Hermite positively defined matrix to .

  • - input signal on port B as a matrix to .

  • - solution of the system of equations as a matrix at .

Ports

Input

S - input matrix S
`matrix M by M

The input matrix in equation is of size by . The matrix must be Hermite positively definite. The block uses only elements on the diagonal and above the main diagonal of the matrix and ignores the rest. Imaginary parts in diagonal elements are ignored. Inputs S and B must have the same number of rows.

If the input matrix is not positively definite, the block behaviour depends on the value of the Non-positive definite parameter.

Data types: Float32, Float64.

Support for complex numbers: Yes

B - input matrix B
matrix M by N | vector M by 1

The matrix in equation is of size by or a vector of size by 1.

If a vector of length is given, the block treats it as a matrix by 1. Inputs S and B must have the same number of rows.

Data types: Float32, Float64.

Support for complex numbers: Yes

Output

X is the solution of the system of equations
matrix M on N | vector M on 1

The block finds the solution of the equations as a matrix of size by or a vector of size by 1. The size of the matrix is the same as the size of the matrix .

Data types: Float32, Float64.

Support for complex numbers: Yes

Parameters

Non-positive definite input - block behaviour if the input matrix S is not positively definite
Ignore (by default) | Warning | Error

Specify the block behaviour if the input matrix is not positively defined:

  • Ignore - the block continues calculations and does not generate a warning. The obtained result is not a correct solution.

  • Warning - the block continues calculations, but a warning message is displayed in the Engee command window. The obtained result is not a correct solution.

  • Error - an error dialogue box is displayed and calculations are stopped.

The Non-positive definite input parameter is diagnostic. Like all diagnostic parameters, it is set to Ignore in the code generated for this block by the code generator.

Algorithms

The Cholecki decomposition algorithm uniquely represents the Hermite positively defined input matrix as

,

where

  • - is a lower triangular matrix with positive diagonal elements;

  • - Hermite (complex-conjugate) transposed matrix .

The resulting equation will have the form:

.

Substitution of yields two systems of equations with triangular matrices, which are solved by direct and inverse substitution, respectively:

,

.

Additional options

C code generation: Yes