LQDecomposition<T> Class
Definition
Assembly: Numerics.NET (in Numerics.NET.dll) Version: 9.1.5
public class LQDecomposition<T> : Decomposition<T>
- Inheritance
 - Object → LinearOperator<T> → Decomposition<T> → LQDecomposition<T>
 
Type Parameters
- T
 
Remarks
The LQ decomposition of a matrix A rewrites the matrix in the form A= LQ, where Q is an orthogonal matrix, and L is a lower-triangular matrix.
The LQDecomposition<T> class has no constructors. Instead, use the GetLQDecomposition() instance method to create an LQ decomposition for a matrix.
LQDecomposition<T> can operate in two modes. In overwrite mode, the original matrix is overwritten by the decomposition. In preserve mode, the original matrix is preserved, and a new matrix is created to hold the decomposition. You can set the mode through the Overwrite property.
LQDecomposition<T> inherits from LinearOperator<T>. This means you can use it to solve systems of linear equations. You can solve for a single right-hand side, or for multiple right-hand sides using the Solve(Vector<T>) method. You can also calculate the determinant, the inverse, and an estimate for the EstimateConditionNumber().
Constructors
| LQDecomposition<T> | Constructs a new LQDecomposition<T>. | 
Properties
| Base | 
            Gets the underlying matrix of the decomposition.
             (Inherited from Decomposition<T>)  | 
| Column | 
            Gets the number of columns in the matrix.
             (Inherited from LinearOperator<T>)  | 
| Column | 
            Gets or sets the index of labels for the columns of the matrix.
             (Inherited from LinearOperator<T>) Preliminary  | 
| Done | 
            Gets or sets a value that indicates whether the decomposition
            has been performed.
             (Inherited from Decomposition<T>)  | 
| Element | 
            Gets the element type of the matrix.
             (Inherited from LinearOperator<T>)  | 
| Factors | 
            Gets a collection of the matrix factors that make up the decomposition.
             (Overrides Decomposition<T>.Factors)  | 
| Lower | Gets the upper triangular matrix R of this LQDecomposition<T>. | 
| Orthogonal | Gets the orthogonal matrix Q of this LQDecomposition<T>. | 
| Overwrite | 
            Gets or sets whether the
            BaseMatrix should be overwritten by
            its decomposition.
             (Inherited from Decomposition<T>)  | 
| Row | 
            Gets the number of rows in the matrix.
             (Inherited from LinearOperator<T>)  | 
| Row | 
            Gets or sets the index of labels for the rows of the matrix.
             (Inherited from LinearOperator<T>) Preliminary  | 
| Thin | Gets the 'thin' part of the orthogonal matrix Q of this LQDecomposition<T>. | 
| Trimmed | Gets the upper triangular matrix R of this LQDecomposition<T>. | 
Methods
| Decompose | 
            Calculates the actual LQ decomposition.
             (Overrides Decomposition<T>.Decompose())  | 
| Deconstruct | Deconstructs an LQ decomposition into its component matrices. | 
| Equals | Determines whether the specified object is equal to the current object. (Inherited from Object)  | 
| Estimate | 
            Calculates an estimate for the condition
            number of the matrix.
             (Overrides LinearOperator<T>.EstimateConditionNumber())  | 
| Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object)  | 
| Get | 
            Calculates the determinant of the decomposed
            matrix.
             (Overrides LinearOperator<T>.GetDeterminant())  | 
| Get | Serves as the default hash function. (Inherited from Object)  | 
| Get | 
            Calculates the inverse matrix..
             (Inherited from LinearOperator<T>)  | 
| Get | 
            Calculates the inverse of the factorized
            matrix.
             (Overrides LinearOperator<T>.GetInverse(Boolean))  | 
| Get | 
            Populates a SerializationInfo with the data
            needed to serialize the target object.
             (Inherited from LinearOperator<T>) Obsolete.  | 
| Get | Gets the Type of the current instance. (Inherited from Object)  | 
| IsSingular | 
            Gets whether the BaseMatrix of this decomposition
            is singular.
             (Inherited from Decomposition<T>)  | 
| Least | 
            Solves the system of linear equations for the specified
            right-hand side matrix in the least squares sense.
             (Inherited from LinearOperator<T>)  | 
| Least | 
            Solves the system of linear equations for the specified
            right-hand side vector.
             (Inherited from LinearOperator<T>)  | 
| Least | 
            Solves the system of linear equations for the specified
            right-hand side dense matrix in the least squares sense and optionally overwrites the
            right-hand side with the solution.
             (Inherited from LinearOperator<T>)  | 
| Least | 
            Solves the system of linear equations for the specified
            right-hand side dense vector in the least squares sense and optionally
            overwrites the right-hand side with the solution.
             (Inherited from LinearOperator<T>)  | 
| Least | 
            Solves a system of equations defined by the matrix and multiple right-hand sides in the least squares sense.
             (Inherited from LinearOperator<T>)  | 
| Least | 
            Solves a system of equations defined by the matrix and the specified right-hand side in the least squares sense.
             (Overrides Decomposition<T>.LeastSquaresSolveInto(Vector<T>, Vector<T>))  | 
| Memberwise | Creates a shallow copy of the current Object. (Inherited from Object)  | 
| Multiply( | Applies the linear operator to a matrix. (Inherited from LinearOperator<T>)  | 
| Multiply( | Applies the linear operator to a vector. (Inherited from LinearOperator<T>)  | 
| Multiply | 
            Multiplies the matrix with a vector, adds the scaled result to another scaled
            vector, and returns the result.
             (Inherited from Decomposition<T>)  | 
| Multiply | 
            Multiplies a matrix by the linear operator and returns the result.
             (Inherited from Decomposition<T>)  | 
| Multiply | 
            Multiplies a vector by the linear operator and returns the result.
             (Inherited from Decomposition<T>)  | 
| Multiply | Applies the transpose of the linear operator to a matrix. (Inherited from LinearOperator<T>)  | 
| Multiply | Applies the (conjugate) transpose of the linear operator to a vector. (Inherited from LinearOperator<T>)  | 
| Rank() | 
            Returns the numerical rank of a matrix.
             (Inherited from LinearOperator<T>)  | 
| Rank( | 
            Returns the numerical rank of a matrix using the specified tolerance.
             (Overrides LinearOperator<T>.Rank(T))  | 
| Set | 
            Sets a flag that indicates the underlying matrix of this
            decomposition is singular.
             (Inherited from Decomposition<T>)  | 
| Solve( | 
            Solves the system of linear equations for the specified
            right-hand side matrix.
             (Inherited from LinearOperator<T>)  | 
| Solve( | 
            Solves the system of linear equations for the specified
            right-hand side vector.
             (Inherited from LinearOperator<T>)  | 
| Solve( | 
            Solves the system of linear equations for the specified
            right-hand side dense matrix and optionally overwrites the
            right-hand side with the solution.
             (Inherited from LinearOperator<T>)  | 
| Solve( | 
            Solves the system of linear equations for the specified
            right-hand side dense vector and optionally
            overwrites the right-hand side with the solution.
             (Inherited from LinearOperator<T>)  | 
| Solve | 
            Solves a system of equations defined by the matrix and multiple right-hand sides.
             (Inherited from LinearOperator<T>)  | 
| Solve | 
            Solves a system of equations defined by the matrix and the specified right-hand side.
             (Inherited from LinearOperator<T>)  | 
| Solve | 
            Solves a system of equations defined by the matrix and multiple right-hand sides.
             (Overrides LinearOperator<T>.SolveInto(TransposeOperation, Matrix<T>, Matrix<T>))  | 
| Solve | 
            Solves a system of equations defined by the matrix and the specified right-hand side.
             (Overrides LinearOperator<T>.SolveInto(TransposeOperation, Vector<T>, Vector<T>))  | 
| Solve | 
            Solves the transposed system of linear equations for the specified
            right-hand side matrix.
             (Inherited from LinearOperator<T>)  | 
| Solve | 
            Solves the system of linear equations for the specified
            right-hand side vector.
             (Inherited from LinearOperator<T>)  | 
| Solve | 
            Solves the transposed system of linear equations for the specified
            right-hand side dense matrix and optionally overwrites the
            right-hand side with the solution.
             (Inherited from LinearOperator<T>)  | 
| Solve | 
            Solves the transposed system of linear equations for the specified
            right-hand side dense vector and optionally
            overwrites the right-hand side with the solution.
             (Inherited from LinearOperator<T>)  | 
| Solve | 
            Solves a system of equations defined by the matrix and multiple right-hand sides.
             (Inherited from LinearOperator<T>)  | 
| Solve | 
            Solves a system of equations defined by the matrix and the specified right-hand side.
             (Inherited from LinearOperator<T>)  | 
| ToString | Returns a string that represents the current object. (Inherited from Object)  |