Mathter
A configurable 3D math library for game developers.
Public Member Functions | Public Attributes | List of all members
mathter::DecompositionLUP< T, Dim, Order, Layout, Packed > Class Template Reference

A utility class that can do common operations with the LUP decomposition, i.e. solving equation systems. More...

#include <DecomposeLU.hpp>

Public Member Functions

 DecompositionLUP (MatrixT L, MatrixT U, Vector< int, Dim, false > P)
 
Vector< float, Dim, Packed > Solve (const Vector< T, Dim, Packed > &b) const
 Solves the equation system Ax=b, that is LUx=Pb. More...
 
bool Solvable ()
 

Public Attributes

MatrixT L
 
Parameters
LLower triangular matrix, LU=P'A.
More...
 
MatrixT U
 
Parameters
UUpper triangular matrix, LU=P'A.
More...
 
Vector< int, Dim, falseP
 
Parameters
PRow permutations. LU=P'A, where P' is a matrix whose i-th row's P[i]-th element is one.
More...
 

Detailed Description

template<class T, int Dim, eMatrixOrder Order, eMatrixLayout Layout, bool Packed>
class mathter::DecompositionLUP< T, Dim, Order, Layout, Packed >

A utility class that can do common operations with the LUP decomposition, i.e. solving equation systems.

Constructor & Destructor Documentation

◆ DecompositionLUP()

template<class T, int Dim, eMatrixOrder Order, eMatrixLayout Layout, bool Packed>
mathter::DecompositionLUP< T, Dim, Order, Layout, Packed >::DecompositionLUP ( MatrixT  L,
MatrixT  U,
Vector< int, Dim, false P 
)
inline

Member Function Documentation

◆ Solvable()

template<class T, int Dim, eMatrixOrder Order, eMatrixLayout Layout, bool Packed>
bool mathter::DecompositionLUP< T, Dim, Order, Layout, Packed >::Solvable ( )
inline

◆ Solve()

template<class T , int Dim, eMatrixOrder Order, eMatrixLayout Layout, bool Packed>
Vector< float, Dim, Packed > mathter::DecompositionLUP< T, Dim, Order, Layout, Packed >::Solve ( const Vector< T, Dim, Packed > &  b) const

Solves the equation system Ax=b, that is LUx=Pb.

If the equation is singular garbage is returned.

Parameters
bThe right hand side vector.
Returns
The solution x.

Member Data Documentation

◆ L

template<class T, int Dim, eMatrixOrder Order, eMatrixLayout Layout, bool Packed>
MatrixT mathter::DecompositionLUP< T, Dim, Order, Layout, Packed >::L

Parameters
LLower triangular matrix, LU=P'A.

◆ P

template<class T, int Dim, eMatrixOrder Order, eMatrixLayout Layout, bool Packed>
Vector<int, Dim, false> mathter::DecompositionLUP< T, Dim, Order, Layout, Packed >::P

Parameters
PRow permutations. LU=P'A, where P' is a matrix whose i-th row's P[i]-th element is one.

◆ U

template<class T, int Dim, eMatrixOrder Order, eMatrixLayout Layout, bool Packed>
MatrixT mathter::DecompositionLUP< T, Dim, Order, Layout, Packed >::U

Parameters
UUpper triangular matrix, LU=P'A.


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