Generic Decomposition Operations<T>.Band LUSolve Method
Definition
Assembly: Extreme.Numerics.Generic (in Extreme.Numerics.Generic.dll) Version: 8.1.4
Overload List
Band | Solves a system of linear equations A * X = B or AT * X = B with a general band matrix A using the LU factorization computed by DGBTRF. |
Band | Solves a system of linear equations A * X = B, AT * X = B, or AH * X = B with a general band matrix A using the LU factorization computed by ZGBTRF. |
BandLUSolve(TransposeOperation, Int32, Int32, Int32, Int32, Array2D<T>, Array1D<Int32>, Array2D<T>, Int32)
Solves a system of linear equations A * X = B or AT * X = B with a general band matrix A using the LU factorization computed by DGBTRF.
public override void BandLUSolve(
TransposeOperation trans,
int n,
int kl,
int ku,
int nrhs,
Array2D<T> ab,
Array1D<int> ipiv,
Array2D<T> b,
out int info
)
Parameters
- trans TransposeOperation
Specifies the form of the system of equations. = 'N': A * X = B (No transpose) = 'T': AT* X = B (Transpose) = 'C': AT* X = B (Conjugate transpose = Transpose)
- n Int32
The order of the matrix A. N >= 0.
- kl Int32
The number of subdiagonals within the band of A. KL >= 0.
- ku Int32
The number of superdiagonals within the band of A. KU >= 0.
- nrhs Int32
The number of right hand sides, i.e., the number of columns of the matrix B. NRHS >= 0.
- ab Array2D<T>
Dimension (LDAB,N) Details of the LU factorization of the band matrix A, as computed by DGBTRF. U is stored as an upper triangular band matrix with KL+KU superdiagonals in rows 1 to KL+KU+1, and the multipliers used during the factorization are stored in rows KL+KU+2 to 2*KL+KU+1.
The leading dimension of the array AB. LDAB >= 2*KL+KU+1.
- ipiv Array1D<Int32>
Dimension (N) The pivot indices; for 1 <= i <= N, row i of the matrix was interchanged with row IPIV(i).
- b Array2D<T>
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
info is INTEGER = 0: successful exit < 0: if info = -i, the i-th argument had an illegal value
Remarks
This method corresponds to the LAPACK routine DGBTRS.
BandLUSolve(TransposeOperation, Int32, Int32, Int32, Int32, Array2D<Complex<T>>, Array1D<Int32>, Array2D<Complex<T>>, Int32)
Solves a system of linear equations A * X = B, AT * X = B, or AH * X = B with a general band matrix A using the LU factorization computed by ZGBTRF.
public override void BandLUSolve(
TransposeOperation trans,
int n,
int kl,
int ku,
int nrhs,
Array2D<Complex<T>> ab,
Array1D<int> ipiv,
Array2D<Complex<T>> b,
out int info
)
Parameters
- trans TransposeOperation
Specifies the form of the system of equations. = 'N': A * X = B (No transpose) = 'T': AT * X = B (Transpose) = 'C': AH * X = B (Conjugate transpose)
- n Int32
The order of the matrix A. N >= 0.
- kl Int32
The number of subdiagonals within the band of A. KL >= 0.
- ku Int32
The number of superdiagonals within the band of A. KU >= 0.
- nrhs Int32
The number of right hand sides, i.e., the number of columns of the matrix B. NRHS >= 0.
- ab Array2D<Complex<T>>
AB is COMPLEX*16 array, dimension (LDAB,N) Details of the LU factorization of the band matrix A, as computed by ZGBTRF. U is stored as an upper triangular band matrix with KL+KU superdiagonals in rows 1 to KL+KU+1, and the multipliers used during the factorization are stored in rows KL+KU+2 to 2*KL+KU+1.
The leading dimension of the array AB. LDAB >= 2*KL+KU+1.
- ipiv Array1D<Int32>
Dimension (N) The pivot indices; for 1 <= i <= N, row i of the matrix was interchanged with row IPIV(i).
- b Array2D<Complex<T>>
B is COMPLEX*16 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
info is INTEGER = 0: successful exit < 0: if info = -i, the i-th argument had an illegal value
Remarks
Authors: Univ. of Tennessee, Univ. of California Berkeley, Univ. of Colorado Denver, NAG Ltd.
Date: November 2011