Decomposition Operations<TReal, TComplex>.Symmetric Solve Method
Definition
Assembly: Numerics.NET (in Numerics.NET.dll) Version: 9.0.3
Overload List
Symmetric | Solves a system of linear equations A*X = B with a real symmetric matrix A using the factorization A = U*D*UT or A = L*D*LT computed by DSYTRF. |
Symmetric | Solves a system of linear equations A*X = B with a real symmetric matrix A using the factorization A = U*D*UT or A = L*D*LT computed by DSYTRF. |
Symmetric | Solves a system of linear equations A*X = B with a real symmetric matrix A using the factorization A = U*D*UT or A = L*D*LT computed by DSYTRF. |
SymmetricSolve(MatrixTriangle, Int32, Int32, Array2D<TReal>, Array1D<Int32>, Array2D<TReal>, Int32)
Solves a system of linear equations A*X = B with a real symmetric matrix A using the factorization A = U*D*UT or A = L*D*LT computed by DSYTRF.
public void SymmetricSolve(
MatrixTriangle storedTriangle,
int n,
int nrhs,
Array2D<TReal> a,
Array1D<int> ipiv,
Array2D<TReal> b,
out int info
)
Parameters
- storedTriangle MatrixTriangle
Specifies whether the details of the factorization are stored as an upper or lower triangular matrix. = 'U': Upper triangular, form is A = U*D*UT; = 'L': Lower triangular, form is A = L*D*LT.
- n Int32
The order of the matrix A. N >= 0.
- nrhs Int32
The number of right hand sides, i.e., the number of columns of the matrix B. NRHS >= 0.
- a Array2D<TReal>
A is TReal array, dimension (LDA,N) The block diagonal matrix D and the multipliers used to obtain the factor U or L as computed by DSYTRF.
The leading dimension of the array A. LDA >= max(1,N).
- ipiv Array1D<Int32>
Dimension (N) Details of the interchanges and the block structure of D as determined by DSYTRF.
- b Array2D<TReal>
B is TReal array, dimension (LDB,NRHS) On entry, the right hand side matrix B. On exit, the solution matrix X.
The leading dimension of the array B. LDB >= max(1,N).
- info Int32
= 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
Remarks
This method corresponds to the LAPACK routine ?SYTRS.
SymmetricSolve(MatrixTriangle, Int32, Int32, ReadOnlySpan2D<TReal>, ReadOnlySpan<Int32>, Span2D<TReal>, Int32)
Solves a system of linear equations A*X = B with a real symmetric matrix A using the factorization A = U*D*UT or A = L*D*LT computed by DSYTRF.
public void SymmetricSolve(
MatrixTriangle storedTriangle,
int n,
int nrhs,
ReadOnlySpan2D<TReal> a,
ReadOnlySpan<int> ipiv,
Span2D<TReal> b,
out int info
)
Parameters
- storedTriangle MatrixTriangle
Specifies whether the details of the factorization are stored as an upper or lower triangular matrix. = 'U': Upper triangular, form is A = U*D*UT; = 'L': Lower triangular, form is A = L*D*LT.
- n Int32
The order of the matrix A. N >= 0.
- nrhs Int32
The number of right hand sides, i.e., the number of columns of the matrix B. NRHS >= 0.
- a ReadOnlySpan2D<TReal>
A is TReal array, dimension (LDA,N) The block diagonal matrix D and the multipliers used to obtain the factor U or L as computed by DSYTRF.
The leading dimension of the array A. LDA >= max(1,N).
- ipiv ReadOnlySpan<Int32>
Dimension (N) Details of the interchanges and the block structure of D as determined by DSYTRF.
- b Span2D<TReal>
B is TReal array, dimension (LDB,NRHS) On entry, the right hand side matrix B. On exit, the solution matrix X.
The leading dimension of the array B. LDB >= max(1,N).
- info Int32
= 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
Remarks
This method corresponds to the LAPACK routine ?SYTRS.
SymmetricSolve(MatrixTriangle, Int32, Int32, ReadOnlySpan<TReal>, Int32, ReadOnlySpan<Int32>, Span<TReal>, Int32, Int32)
Solves a system of linear equations A*X = B with a real symmetric matrix A using the factorization A = U*D*UT or A = L*D*LT computed by DSYTRF.
public abstract void SymmetricSolve(
MatrixTriangle storedTriangle,
int n,
int nrhs,
ReadOnlySpan<TReal> a,
int lda,
ReadOnlySpan<int> ipiv,
Span<TReal> b,
int ldb,
out int info
)
Parameters
- storedTriangle MatrixTriangle
Specifies whether the details of the factorization are stored as an upper or lower triangular matrix. = 'U': Upper triangular, form is A = U*D*UT; = 'L': Lower triangular, form is A = L*D*LT.
- n Int32
The order of the matrix A. N >= 0.
- nrhs Int32
The number of right hand sides, i.e., the number of columns of the matrix B. NRHS >= 0.
- a ReadOnlySpan<TReal>
A is TReal array, dimension (LDA,N) The block diagonal matrix D and the multipliers used to obtain the factor U or L as computed by DSYTRF.
- lda Int32
The leading dimension of the array A. LDA >= max(1,N).
- ipiv ReadOnlySpan<Int32>
Dimension (N) Details of the interchanges and the block structure of D as determined by DSYTRF.
- b Span<TReal>
B is TReal array, dimension (LDB,NRHS) On entry, the right hand side matrix B. On exit, the solution matrix X.
- ldb Int32
The leading dimension of the array B. LDB >= max(1,N).
- info Int32
= 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
Remarks
This method corresponds to the LAPACK routine ?SYTRS.