GenericDecompositionOperations<T>.BandCholeskySolve Method

Definition

Namespace: Numerics.NET.LinearAlgebra.Implementation
Assembly: Numerics.NET.Generic (in Numerics.NET.Generic.dll) Version: 9.0.3

Overload List

BandCholeskySolve(MatrixTriangle, Int32, Int32, Int32, Array2D<TComplex>, Array2D<TComplex>, Int32) 
BandCholeskySolve(MatrixTriangle, Int32, Int32, Int32, Array2D<TComplex>, Array2D<TComplex>, Int32)

Solves a system of linear equations A*X = B with a Hermitian positive definite band matrix A using the Cholesky factorization A = UH *U or A = L*LH computed by ZPBTRF.

BandCholeskySolve(MatrixTriangle, Int32, Int32, Int32, ReadOnlySpan2D<TComplex>, Span2D<TComplex>, Int32)

Solves a system of linear equations A*X = B with a Hermitian positive definite band matrix A using the Cholesky factorization A = UH *U or A = L*LH computed by ZPBTRF.

BandCholeskySolve(MatrixTriangle, Int32, Int32, Int32, Span2D<TReal>, Span2D<TReal>, Int32)

Solves a system of linear equations A*X = B with a symmetric positive definite band matrix A using the Cholesky factorization A = UT*U or A = L*LT computed by DPBTRF.

BandCholeskySolve(MatrixTriangle, Int32, Int32, Int32, ReadOnlySpan<Complex<T>>, Int32, Span<Complex<T>>, Int32, Int32)

Solves a system of linear equations A*X = B with a Hermitian positive definite band matrix A using the Cholesky factorization A = UH *U or A = L*LH computed by ZPBTRF.

BandCholeskySolve(MatrixTriangle, Int32, Int32, Int32, Span<T>, Int32, Span<T>, Int32, Int32)

Solves a system of linear equations A*X = B with a symmetric positive definite band matrix A using the Cholesky factorization A = UT*U or A = L*LT computed by DPBTRF.

BandCholeskySolve(MatrixTriangle, Int32, Int32, Int32, ReadOnlySpan<Complex<T>>, Int32, Span<Complex<T>>, Int32, Int32)

Solves a system of linear equations A*X = B with a Hermitian positive definite band matrix A using the Cholesky factorization A = UH *U or A = L*LH computed by ZPBTRF.

C#
public override void BandCholeskySolve(
	MatrixTriangle storedTriangle,
	int n,
	int kd,
	int nrhs,
	ReadOnlySpan<Complex<T>> ab,
	int ldab,
	Span<Complex<T>> b,
	int ldb,
	out int info
)

Parameters

storedTriangle  MatrixTriangle
 
n  Int32
            The order of the matrix A.  N >= 0.
            
kd  Int32
            The number of superdiagonals of the matrix A if UPLO = 'U',
            or the number of subdiagonals if UPLO = 'L'.  KD >= 0.
            
nrhs  Int32
            The number of right hand sides, i.e., the number of columns
            of the matrix B.  NRHS >= 0.
            
ab  ReadOnlySpan<Complex<T>>
            AB is TComplex array, dimension (LDAB,N)
            The triangular factor U or L from the Cholesky factorization
            A = UH *U or A = L*LH of the band matrix A, stored in the
            first KD+1 rows of the array.  The j-th column of U or L is
            stored in the j-th column of the array AB as follows:
            if UPLO ='U', AB(kd+1+i-j,j) = U(i,j) for max(1,j-kd)<=i<=j;
            if UPLO ='L', AB(1+i-j,j)    = L(i,j) for j<=i<=min(n,j+kd).
            
ldab  Int32
            The leading dimension of the array AB.  LDAB >= KD+1.
            
b  Span<Complex<T>>
            B is TComplex 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

Authors: Univ. of Tennessee, Univ. of California Berkeley, Univ. of Colorado Denver, NAG Ltd.

Date: November 2011

BandCholeskySolve(MatrixTriangle, Int32, Int32, Int32, Span<T>, Int32, Span<T>, Int32, Int32)

Solves a system of linear equations A*X = B with a symmetric positive definite band matrix A using the Cholesky factorization A = UT*U or A = L*LT computed by DPBTRF.

C#
public override void BandCholeskySolve(
	MatrixTriangle storedTriangle,
	int n,
	int kd,
	int nrhs,
	Span<T> ab,
	int ldab,
	Span<T> b,
	int ldb,
	out int info
)

Parameters

storedTriangle  MatrixTriangle
            = 'U':  Upper triangular factor stored in AB;
            = 'L':  Lower triangular factor stored in AB.
            
n  Int32
            The order of the matrix A.  N >= 0.
            
kd  Int32
            The number of superdiagonals of the matrix A if UPLO = 'U',
            or the number of subdiagonals if UPLO = 'L'.  KD >= 0.
            
nrhs  Int32
            The number of right hand sides, i.e., the number of columns
            of the matrix B.  NRHS >= 0.
            
ab  Span<T>
            AB is TReal array, dimension (LDAB,N)
            The triangular factor U or L from the Cholesky factorization
            A = UT*U or A = L*LT of the band matrix A, stored in the
            first KD+1 rows of the array.  The j-th column of U or L is
            stored in the j-th column of the array AB as follows:
            if UPLO ='U', AB(kd+1+i-j,j) = U(i,j) for max(1,j-kd)<=i<=j;
            if UPLO ='L', AB(1+i-j,j)    = L(i,j) for j<=i<=min(n,j+kd).
            
ldab  Int32
            The leading dimension of the array AB.  LDAB >= KD+1.
            
b  Span<T>
            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 ?PBTRS.

See Also