functionsolve2
Solve real system of linear equations A*X=B with a B matrix (Gaussian elemination with partial pivoting)
Extends from Modelica.Icons.Function (Icon for functions).
Information
Syntax
Matrices.solve2(A,b);
Description
This function call returns the solution X of the linear system of equations
A*X = B
If a unique solution X does not exist (since A is singular), an exception is raised.
Note
The solution is computed with the LAPACK function "dgesv", i.e., by Gaussian elemination with partial pivoting.
Example
Real A[3,3] = [1,2,3;
3,4,5;
2,1,4];
Real B[3,2] = [10, 20;
22, 44;
12, 24];
Real X[3,2];
algorithm
(LU, pivots) := Matrices.LU(A);
X := Matrices.solve2(A, B1); /* X = [3, 6;
2, 4;
1, 2] */
See also
Inputs
| Type | Name | Default | Description |
|---|---|---|---|
| Real[:,size(A, 1)] | A | Matrix A of A*X = B | |
| Real[size(A, 1),:] | B | Matrix B of A*X = B |
Outputs
| Type | Name | Default | Description |
|---|---|---|---|
| Real[size(B, 1),size(B, 2)] | X | Matrix X such that A*X = B |