GenericDecompositionOperations<T>.TriangularEstimateCondition Method

Definition

Namespace: Extreme.Mathematics.LinearAlgebra.Implementation
Assembly: Extreme.Numerics.Generic (in Extreme.Numerics.Generic.dll) Version: 8.1.4

Overload List

TriangularEstimateCondition(MatrixNorm, MatrixTriangle, MatrixDiagonal, Int32, Array2D<T>, T, Int32)

Estimates the reciprocal of the condition number of a triangular matrix A, in either the 1-norm or the infinity-norm.

TriangularEstimateCondition(MatrixNorm, MatrixTriangle, MatrixDiagonal, Int32, Array2D<Complex<T>>, T, Int32) Approximates the reciprocal of the condition number of a complex triangular matrix.

TriangularEstimateCondition(MatrixNorm, MatrixTriangle, MatrixDiagonal, Int32, Array2D<T>, T, Int32)

Estimates the reciprocal of the condition number of a triangular matrix A, in either the 1-norm or the infinity-norm.

C#
public override void TriangularEstimateCondition(
	MatrixNorm norm,
	MatrixTriangle storedTriangle,
	MatrixDiagonal diag,
	int n,
	Array2D<T> a,
	out T rcond,
	out int info
)

Parameters

norm  MatrixNorm
            Specifies whether the 1-norm condition number or the
            infinity-norm condition number is required:
            = '1' or 'O':  1-norm;
            = 'I':         Infinity-norm.
            
storedTriangle  MatrixTriangle
            = 'U':  A is upper triangular;
            = 'L':  A is lower triangular.
            
diag  MatrixDiagonal
            = 'N':  A is non-unit triangular;
            = 'U':  A is unit triangular.
            
n  Int32
            The order of the matrix A.  N >= 0.
            
a  Array2D<T>
            Dimension (LDA,N)
            The triangular matrix A.  If UPLO = 'U', the leading N-by-N
            upper triangular part of the array A contains the upper
            triangular matrix, and the strictly lower triangular part of
            A is not referenced.  If UPLO = 'L', the leading N-by-N lower
            triangular part of the array A contains the lower triangular
            matrix, and the strictly upper triangular part of A is not
            referenced.  If DIAG = 'U', the diagonal elements of A are
            also not referenced and are assumed to be 1.
            
            The leading dimension of the array A.  LDA >= max(1,N).
            
rcond  T
            The reciprocal of the condition number of the matrix A,
            computed as RCOND = 1/(norm(A) * norm(inv(A))).
            
info  Int32
info is INTEGER
            = 0:  successful exit
            < 0:  if info = -i, the i-th argument had an illegal value
            

Remarks

            The norm of A is computed and an estimate is obtained for
            norm(inv(A)), then the reciprocal of the condition number is
            computed as
               RCOND = 1 / ( norm(A) * norm(inv(A)) ).
            

This method corresponds to the LAPACK routine DTRCON.

TriangularEstimateCondition(MatrixNorm, MatrixTriangle, MatrixDiagonal, Int32, Array2D<Complex<T>>, T, Int32)

Approximates the reciprocal of the condition number of a complex triangular matrix.
C#
public override void TriangularEstimateCondition(
	MatrixNorm norm,
	MatrixTriangle storedTriangle,
	MatrixDiagonal diag,
	int n,
	Array2D<Complex<T>> a,
	out T rcond,
	out int info
)

Parameters

norm  MatrixNorm
A MatrixNorm value that specifies which norm to use in the expression for the condition number.
storedTriangle  MatrixTriangle
A MatrixTriangle value that indicates whether the matrix is upper or lower triangular.
diag  MatrixDiagonal
A MatrixDiagonal value that indicates whether the matrix is unit diagonal.
n  Int32
The number of rows and columns of the matrix.
a  Array2D<Complex<T>>
A complex array that contains the elements of the matrix.
rcond  T
On return, an estimate for the reciprocal of the condition number of the matrix.
info  Int32
On return, indicates error conditions.

See Also