Open CASCADE Technology 6.6.0
|
Symmetric Sparse ProfileMatrix useful for 1D Finite
Element methods
#include <FEmTool_ProfileMatrix.hxx>
Public Member Functions | |
FEmTool_ProfileMatrix (const TColStd_Array1OfInteger &FirstIndexes) | |
void | Init (const Standard_Real Value) |
Standard_Real & | ChangeValue (const Standard_Integer I, const Standard_Integer J) |
Standard_Boolean | Decompose () |
To make a Factorization of <me> | |
void | Solve (const math_Vector &B, math_Vector &X) const |
Direct Solve of AX = B | |
Standard_Boolean | Prepare () |
Make Preparation to iterative solve | |
void | Solve (const math_Vector &B, const math_Vector &Init, math_Vector &X, math_Vector &Residual, const Standard_Real Tolerance=1.0e-8, const Standard_Integer NbIterations=50) const |
Iterative solve of AX = B | |
void | Multiplied (const math_Vector &X, math_Vector &MX) const |
returns the product of a SparseMatrix by a vector. An exception is raised if the dimensions are different | |
Standard_Integer | RowNumber () const |
returns the row range of a matrix. | |
Standard_Integer | ColNumber () const |
returns the column range of the matrix. | |
Standard_Boolean | IsInProfile (const Standard_Integer i, const Standard_Integer j) const |
void | OutM () const |
void | OutS () const |
FEmTool_ProfileMatrix::FEmTool_ProfileMatrix | ( | const TColStd_Array1OfInteger & | FirstIndexes | ) |
Standard_Real& FEmTool_ProfileMatrix::ChangeValue | ( | const Standard_Integer | I, |
const Standard_Integer | J | ||
) | [virtual] |
Implements FEmTool_SparseMatrix.
Standard_Integer FEmTool_ProfileMatrix::ColNumber | ( | ) | const [virtual] |
Implements FEmTool_SparseMatrix.
Standard_Boolean FEmTool_ProfileMatrix::Decompose | ( | ) | [virtual] |
Implements FEmTool_SparseMatrix.
void FEmTool_ProfileMatrix::Init | ( | const Standard_Real | Value | ) | [virtual] |
Implements FEmTool_SparseMatrix.
Standard_Boolean FEmTool_ProfileMatrix::IsInProfile | ( | const Standard_Integer | i, |
const Standard_Integer | j | ||
) | const |
void FEmTool_ProfileMatrix::Multiplied | ( | const math_Vector & | X, |
math_Vector & | MX | ||
) | const [virtual] |
Implements FEmTool_SparseMatrix.
void FEmTool_ProfileMatrix::OutM | ( | ) | const |
void FEmTool_ProfileMatrix::OutS | ( | ) | const |
Standard_Boolean FEmTool_ProfileMatrix::Prepare | ( | ) | [virtual] |
Implements FEmTool_SparseMatrix.
Standard_Integer FEmTool_ProfileMatrix::RowNumber | ( | ) | const [virtual] |
Implements FEmTool_SparseMatrix.
void FEmTool_ProfileMatrix::Solve | ( | const math_Vector & | B, |
math_Vector & | X | ||
) | const [virtual] |
Implements FEmTool_SparseMatrix.
void FEmTool_ProfileMatrix::Solve | ( | const math_Vector & | B, |
const math_Vector & | Init, | ||
math_Vector & | X, | ||
math_Vector & | Residual, | ||
const Standard_Real | Tolerance = 1.0e-8 , |
||
const Standard_Integer | NbIterations = 50 |
||
) | const [virtual] |
Implements FEmTool_SparseMatrix.