Memosa-FVM
0.2
|
#include <DiagonalMatrix.h>
Public Types | |
typedef Array< Diag > | DiagArray |
typedef Array< X > | XArray |
Public Member Functions | |
DiagonalMatrix (const int length) | |
virtual | ~DiagonalMatrix () |
DEFINE_TYPENAME ("DiagonalMatrix<"+NumTypeTraits< Diag >::getTypeName()+","+NumTypeTraits< X >::getTypeName()+">") | |
virtual void | multiply (IContainer &yB, const IContainer &xB) const |
virtual void | multiplyAndAdd (IContainer &yB, const IContainer &xB) const |
virtual void | forwardGS (IContainer &xB, IContainer &bB, IContainer &) const |
virtual void | reverseGS (IContainer &xB, IContainer &bB, IContainer &r) const |
virtual void | solveBoundary (IContainer &xB, IContainer &bB, IContainer &r) const |
virtual void | computeResidual (const IContainer &xB, const IContainer &bB, IContainer &rB) const |
virtual void | transpose () |
Diag & | operator[] (int n) |
const Diag & | operator[] (int n) const |
void | addToDiag (const int i, const Diag &d) |
void | unitize () |
void | unitize (const int i) |
virtual shared_ptr < CRConnectivity > | createCoarseConnectivity (const IContainer &gCoarseIndex, const CRConnectivity &coarseToFine, const StorageSite &coarseRowSite, const StorageSite &coarseColSite) |
virtual shared_ptr< Matrix > | createCoarseMatrix (const IContainer &gCoarseIndex, const CRConnectivity &coarseToFine, const CRConnectivity &) |
virtual void | initAssembly () |
virtual bool | isInvertible () |
![]() | |
Matrix () | |
virtual | ~Matrix () |
DEFINE_TYPENAME ("Matrix") | |
virtual shared_ptr< ArrayBase > | quadProduct (const IContainer &xB) const |
virtual void | Jacobi (IContainer &xnew, const IContainer &xold, const IContainer &b) const |
virtual void | iluSolve (IContainer &xB, const IContainer &bB, const IContainer &residual) const |
virtual void | spikeSolve (IContainer &xB, const IContainer &bB, const IContainer &residual, const SpikeStorage &spike_storage) const |
virtual int | createCoarsening (IContainer &coarseIndex, const int groupSize, const double weighRatioThreshold) |
virtual const CRConnectivity & | getConnectivity () const |
virtual void | eliminateBoundaryEquations (IContainer &xB) |
virtual void | printRow (const int nr) const |
virtual void * | getDiagData () const |
virtual void * | getOffDiagData () const |
virtual int | getDiagDataSize () const |
virtual int | getOffDiagDataSize () const |
virtual shared_ptr< Matrix > | createMergeMatrix (const LinearSystemMerger &mergeLS) |
virtual void | setFlatMatrix (Matrix &fmg) const |
Private Attributes | |
const int | _length |
Array< Diag > | _diag |
Definition at line 16 of file DiagonalMatrix.h.
typedef Array<Diag> DiagonalMatrix< Diag, X >::DiagArray |
Definition at line 19 of file DiagonalMatrix.h.
typedef Array<X> DiagonalMatrix< Diag, X >::XArray |
Definition at line 20 of file DiagonalMatrix.h.
|
inline |
Definition at line 22 of file DiagonalMatrix.h.
References logCtor.
Referenced by DiagonalMatrix< Diag, X >::createCoarseMatrix().
|
inlinevirtual |
Definition at line 30 of file DiagonalMatrix.h.
|
inline |
|
inlinevirtual |
Reimplemented from Matrix.
Definition at line 75 of file DiagonalMatrix.h.
References DiagonalMatrix< Diag, X >::_diag, and DiagonalMatrix< Diag, X >::_length.
|
inlinevirtual |
Reimplemented from Matrix.
Definition at line 109 of file DiagonalMatrix.h.
|
inlinevirtual |
Reimplemented from Matrix.
Definition at line 119 of file DiagonalMatrix.h.
References DiagonalMatrix< Diag, X >::_diag, DiagonalMatrix< Diag, X >::DiagonalMatrix(), CRConnectivity::getCount(), CRConnectivity::getRowDim(), and Array< T >::zero().
DiagonalMatrix< Diag, X >::DEFINE_TYPENAME | ( | "DiagonalMatrix<"+NumTypeTraits< Diag >::getTypeName()+","+NumTypeTraits< X >::getTypeName()+">" | ) |
|
inlinevirtual |
Reimplemented from Matrix.
Definition at line 57 of file DiagonalMatrix.h.
References DiagonalMatrix< Diag, X >::_diag, and DiagonalMatrix< Diag, X >::_length.
Referenced by DiagonalMatrix< Diag, X >::reverseGS(), and DiagonalMatrix< Diag, X >::solveBoundary().
|
inlinevirtual |
Implements Matrix.
Definition at line 146 of file DiagonalMatrix.h.
References DiagonalMatrix< Diag, X >::_diag, and Array< T >::zero().
|
inlinevirtual |
|
inlinevirtual |
Reimplemented from Matrix.
Definition at line 37 of file DiagonalMatrix.h.
References DiagonalMatrix< Diag, X >::_diag, and DiagonalMatrix< Diag, X >::_length.
|
inlinevirtual |
Reimplemented from Matrix.
Definition at line 47 of file DiagonalMatrix.h.
References DiagonalMatrix< Diag, X >::_diag, and DiagonalMatrix< Diag, X >::_length.
|
inline |
|
inline |
|
inlinevirtual |
Reimplemented from Matrix.
Definition at line 65 of file DiagonalMatrix.h.
References DiagonalMatrix< Diag, X >::forwardGS().
|
inlinevirtual |
Reimplemented from Matrix.
Definition at line 70 of file DiagonalMatrix.h.
References DiagonalMatrix< Diag, X >::forwardGS().
|
inlinevirtual |
|
inline |
Definition at line 98 of file DiagonalMatrix.h.
References DiagonalMatrix< Diag, X >::_diag.
Referenced by FlowModel< T >::Impl::linearizeContinuity().
|
inline |
Definition at line 103 of file DiagonalMatrix.h.
References DiagonalMatrix< Diag, X >::_diag.
|
private |
Definition at line 155 of file DiagonalMatrix.h.
Referenced by DiagonalMatrix< Diag, X >::addToDiag(), DiagonalMatrix< Diag, X >::computeResidual(), DiagonalMatrix< Diag, X >::createCoarseMatrix(), DiagonalMatrix< Diag, X >::forwardGS(), DiagonalMatrix< Diag, X >::initAssembly(), DiagonalMatrix< Diag, X >::multiply(), DiagonalMatrix< Diag, X >::multiplyAndAdd(), DiagonalMatrix< Diag, X >::operator[](), and DiagonalMatrix< Diag, X >::unitize().
|
private |
Definition at line 154 of file DiagonalMatrix.h.
Referenced by DiagonalMatrix< Diag, X >::computeResidual(), DiagonalMatrix< Diag, X >::forwardGS(), DiagonalMatrix< Diag, X >::multiply(), and DiagonalMatrix< Diag, X >::multiplyAndAdd().