IGLib  1.7.2
The IGLib base library EXTENDED - with other lilbraries and applications.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events Macros
Meta.Numerics.Matrices.SquareQRDecomposition Class Reference

Represents the QR decomposition of a square matrix. More...

Public Member Functions

SquareMatrix QMatrix ()
 The orthogonal matrix Q. More...
 
SquareMatrix RMatrix ()
 The upper-right triangular matrix R. More...
 
ColumnVector Solve (IList< double > rhs)
 Solve the system of equations Ax=b, where A is the original matrix. More...
 
double Determinant ()
 Computes the determinant of the original matrix. More...
 
SquareMatrix Inverse ()
 Computes the inverse of the original matrix. More...
 

Properties

int Dimension [get]
 Gets the dimension of the original matrix. More...
 

Private Attributes

readonly double[] qtStore
 
readonly double[] rStore
 
readonly int dimension
 

Detailed Description

Represents the QR decomposition of a square matrix.

A QR decomposition represents a matrix as the product of an orthogonal matrix Q and an upper-right-triangular matrix R.

Like a LU decomposition (LUDecomposition, a QR decomposition can be used to solve systems of equations, or compute a determinant or matrix inverse.

To obtain the QR decomposition of a square matrix, use the SquareMatrix.QRDecomposition method of the SquareMatrix class.

Member Function Documentation

SquareMatrix Meta.Numerics.Matrices.SquareQRDecomposition.QMatrix ( )
inline

The orthogonal matrix Q.

Returns
The orthogonal matrix Q.

References Meta.Numerics.Matrices.SquareMatrix.Transpose().

Referenced by Test.SquareMatrixTest.SquareRandomMatrixQRDecomposition().

SquareMatrix Meta.Numerics.Matrices.SquareQRDecomposition.RMatrix ( )
inline

The upper-right triangular matrix R.

Returns
The upper-right triangular matrix R.

The returned matrix is read-only. If you need to make changes to it, you can call SquareMatrix.Copy to obtain a writable copy.

Referenced by Test.SquareMatrixTest.SquareRandomMatrixQRDecomposition().

ColumnVector Meta.Numerics.Matrices.SquareQRDecomposition.Solve ( IList< double >  rhs)
inline

Solve the system of equations Ax=b, where A is the original matrix.

Parameters
rhsThe right-hand-side vector b.
Returns
The solution vector x.

The components of rhs are not modified.

Referenced by Test.SquareMatrixTest.SquareRandomMatrixQRDecomposition().

double Meta.Numerics.Matrices.SquareQRDecomposition.Determinant ( )
inline

Computes the determinant of the original matrix.

Returns
det A
SquareMatrix Meta.Numerics.Matrices.SquareQRDecomposition.Inverse ( )
inline

Computes the inverse of the original matrix.

Returns
A-1

References Meta.Numerics.Matrices.SquareMatrix.Copy().

Referenced by Test.SquareMatrixTest.SquareRandomMatrixQRDecomposition().

Member Data Documentation

readonly double [] Meta.Numerics.Matrices.SquareQRDecomposition.qtStore
private
readonly double [] Meta.Numerics.Matrices.SquareQRDecomposition.rStore
private
readonly int Meta.Numerics.Matrices.SquareQRDecomposition.dimension
private

Property Documentation

int Meta.Numerics.Matrices.SquareQRDecomposition.Dimension
get

Gets the dimension of the original matrix.

Referenced by Test.SquareMatrixTest.SquareRandomMatrixQRDecomposition().


The documentation for this class was generated from the following file: