LduMatrix is a general matrix class in which the coefficients are stored as three arrays, one for the upper triangle, one for the lower triangle and a third for the diagonal. More...
Classes | |
class | preconditioner |
class | smoother |
class | solver |
Public Member Functions | |
ClassName ("LduMatrix") | |
LduMatrix (const lduMesh &) | |
LduMatrix (const LduMatrix< Type, DType, LUType > &) | |
LduMatrix (LduMatrix< Type, DType, LUType > &, bool reuse) | |
LduMatrix (const lduMesh &, Istream &) | |
~LduMatrix () | |
const lduMesh & | mesh () const |
const lduAddressing & | lduAddr () const |
const lduSchedule & | patchSchedule () const |
const LduInterfaceFieldPtrsList< Type > & | interfaces () const |
LduInterfaceFieldPtrsList< Type > & | interfaces () |
Field< DType > & | diag () |
Field< LUType > & | upper () |
Field< LUType > & | lower () |
Field< Type > & | source () |
FieldField< Field, LUType > & | interfacesUpper () |
FieldField< Field, LUType > & | interfacesLower () |
const Field< DType > & | diag () const |
const Field< LUType > & | upper () const |
const Field< LUType > & | lower () const |
const Field< Type > & | source () const |
const FieldField< Field, LUType > & | interfacesUpper () const |
const FieldField< Field, LUType > & | interfacesLower () const |
bool | hasDiag () const |
bool | hasUpper () const |
bool | hasLower () const |
bool | hasSource () const |
bool | diagonal () const |
bool | symmetric () const |
bool | asymmetric () const |
void | sumDiag () |
void | negSumDiag () |
void | sumMagOffDiag (Field< LUType > &sumOff) const |
void | Amul (Field< Type > &, const tmp< Field< Type >> &) const |
void | Tmul (Field< Type > &, const tmp< Field< Type >> &) const |
void | sumA (Field< Type > &) const |
void | residual (Field< Type > &rA, const Field< Type > &psi) const |
tmp< Field< Type > > | residual (const Field< Type > &psi) const |
void | initMatrixInterfaces (const bool add, const FieldField< Field, LUType > &interfaceCoeffs, const Field< Type > &psiif, Field< Type > &result) const |
void | updateMatrixInterfaces (const bool add, const FieldField< Field, LUType > &interfaceCoeffs, const Field< Type > &psiif, Field< Type > &result) const |
tmp< Field< Type > > | H (const Field< Type > &) const |
tmp< Field< Type > > | H (const tmp< Field< Type >> &) const |
tmp< Field< Type > > | faceH (const Field< Type > &) const |
tmp< Field< Type > > | faceH (const tmp< Field< Type >> &) const |
void | operator= (const LduMatrix< Type, DType, LUType > &) |
void | negate () |
void | operator+= (const LduMatrix< Type, DType, LUType > &) |
void | operator-= (const LduMatrix< Type, DType, LUType > &) |
void | operator*= (const scalarField &) |
void | operator*= (scalar) |
Friends | |
class | SolverPerformance< Type > |
Ostream & | operator (Ostream &, const LduMatrix< Type, DType, LUType > &) |
LduMatrix is a general matrix class in which the coefficients are stored as three arrays, one for the upper triangle, one for the lower triangle and a third for the diagonal.
Addressing arrays must be supplied for the upper and lower triangles.
Definition at line 68 of file LduMatrix.H.
~LduMatrix | ( | ) |
Definition at line 158 of file LduMatrix.C.
ClassName | ( | "LduMatrix" | ) |
|
inline |
Definition at line 488 of file LduMatrix.H.
|
inline |
Definition at line 494 of file LduMatrix.H.
Referenced by TDILUPreconditioner< Type, DType, LUType >::calcInvD(), LduMatrix< Type, DType, LUType >::patchSchedule(), and TGaussSeidelSmoother< Type, DType, LUType >::smooth().
|
inline |
Definition at line 500 of file LduMatrix.H.
|
inline |
Definition at line 506 of file LduMatrix.H.
|
inline |
Definition at line 512 of file LduMatrix.H.
Foam::Field< DType > & diag | ( | ) |
Definition at line 185 of file LduMatrix.C.
Referenced by DiagonalPreconditioner< Type, DType, LUType >::DiagonalPreconditioner(), and TGaussSeidelSmoother< Type, DType, LUType >::TGaussSeidelSmoother().
Foam::Field< LUType > & upper | ( | ) |
Definition at line 197 of file LduMatrix.C.
Referenced by TDILUPreconditioner< Type, DType, LUType >::calcInvD(), LduMatrix< Type, DType, LUType >::negSumDiag(), TGaussSeidelSmoother< Type, DType, LUType >::smooth(), LduMatrix< Type, DType, LUType >::sumDiag(), and LduMatrix< Type, DType, LUType >::sumMagOffDiag().
Foam::Field< LUType > & lower | ( | ) |
Definition at line 220 of file LduMatrix.C.
Referenced by TDILUPreconditioner< Type, DType, LUType >::calcInvD(), LduMatrix< Type, DType, LUType >::negSumDiag(), TGaussSeidelSmoother< Type, DType, LUType >::smooth(), LduMatrix< Type, DType, LUType >::sumDiag(), and LduMatrix< Type, DType, LUType >::sumMagOffDiag().
Foam::Field< Type > & source | ( | ) |
Definition at line 243 of file LduMatrix.C.
Referenced by TGaussSeidelSmoother< Type, DType, LUType >::smooth().
|
inline |
Definition at line 525 of file LduMatrix.H.
Referenced by TGaussSeidelSmoother< Type, DType, LUType >::smooth().
|
inline |
Definition at line 530 of file LduMatrix.H.
const Foam::Field< DType > & diag | ( | ) | const |
Definition at line 255 of file LduMatrix.C.
const Foam::Field< LUType > & upper | ( | ) | const |
Definition at line 269 of file LduMatrix.C.
const Foam::Field< LUType > & lower | ( | ) | const |
Definition at line 290 of file LduMatrix.C.
const Foam::Field< Type > & source | ( | ) | const |
Definition at line 311 of file LduMatrix.C.
|
inline |
Definition at line 541 of file LduMatrix.H.
|
inline |
Definition at line 546 of file LduMatrix.H.
|
inline |
Definition at line 552 of file LduMatrix.H.
|
inline |
Definition at line 557 of file LduMatrix.H.
|
inline |
Definition at line 562 of file LduMatrix.H.
|
inline |
Definition at line 567 of file LduMatrix.H.
|
inline |
Definition at line 572 of file LduMatrix.H.
Referenced by LduMatrix::solver::New().
|
inline |
Definition at line 577 of file LduMatrix.H.
Referenced by LduMatrix::solver::New(), LduMatrix::smoother::New(), and LduMatrix::preconditioner::New().
|
inline |
Definition at line 582 of file LduMatrix.H.
Referenced by LduMatrix::solver::New(), LduMatrix::smoother::New(), and LduMatrix::preconditioner::New().
void sumDiag | ( | ) |
Definition at line 27 of file LduMatrixOperations.C.
void negSumDiag | ( | ) |
Definition at line 45 of file LduMatrixOperations.C.
void sumMagOffDiag | ( | Field< LUType > & | sumOff | ) | const |
Definition at line 64 of file LduMatrixOperations.C.
Definition at line 59 of file LduMatrixATmul.C.
Definition at line 115 of file LduMatrixATmul.C.
void sumA | ( | Field< Type > & | sumA | ) | const |
Definition at line 170 of file LduMatrixATmul.C.
Definition at line 218 of file LduMatrixATmul.C.
Foam::tmp< Foam::Field< Type > > residual | ( | const Field< Type > & | psi | ) | const |
Definition at line 275 of file LduMatrixATmul.C.
void initMatrixInterfaces | ( | const bool | add, |
const FieldField< Field, LUType > & | interfaceCoeffs, | ||
const Field< Type > & | psiif, | ||
Field< Type > & | result | ||
) | const |
Definition at line 29 of file LduMatrixUpdateMatrixInterfaces.C.
Referenced by TGaussSeidelSmoother< Type, DType, LUType >::smooth().
void updateMatrixInterfaces | ( | const bool | add, |
const FieldField< Field, LUType > & | interfaceCoeffs, | ||
const Field< Type > & | psiif, | ||
Field< Type > & | result | ||
) | const |
Definition at line 101 of file LduMatrixUpdateMatrixInterfaces.C.
Referenced by TGaussSeidelSmoother< Type, DType, LUType >::smooth().
Definition at line 163 of file LduMatrixOperations.C.
void negate | ( | ) |
Definition at line 206 of file LduMatrixOperations.C.
Definition at line 234 of file LduMatrixOperations.C.
Definition at line 311 of file LduMatrixOperations.C.
void operator*= | ( | const scalarField & | ) |
void operator*= | ( | scalar | ) |
|
friend |
Definition at line 108 of file LduMatrix.H.
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.