MOAB: Mesh Oriented datABase
(version 5.4.1)
|
Iterate over only diagonal blocks of element corner Hessian data. More...
Public Member Functions | |
CornerHessDiagIterator (const Matrix3D *corner_hessians, EntityTopology elem_type) | |
SymMatrix3D | operator* () const |
CornerHessDiagIterator & | operator++ () |
CornerHessDiagIterator | operator++ (int) |
Private Attributes | |
const Matrix3D * | cornerHess |
Current location in concatenated Hessian data. | |
const EntityTopology | elemType |
Element topology for Hessian data. | |
unsigned | mCorner |
unsigned | mStep |
Amount to step to reach next diagonal block. |
Iterate over only diagonal blocks of element corner Hessian data.
Given concatenation of corner Hessian data for an element, iterate over only the diagonal terms for each corner. This class allows common code to be used to generate Hessian diagonal blocks from either the diagonal blocks for each corner or the full Hessian data for each corner, where this class is used for the latter.
Definition at line 100 of file AveragingQM.cpp.
MBMesquite::CornerHessDiagIterator::CornerHessDiagIterator | ( | const Matrix3D * | corner_hessians, |
EntityTopology | elem_type | ||
) | [inline] |
SymMatrix3D MBMesquite::CornerHessDiagIterator::operator* | ( | ) | const [inline] |
Definition at line 116 of file AveragingQM.cpp.
References cornerHess, and MBMesquite::Matrix3D::upper().
{ return cornerHess->upper(); }
CornerHessDiagIterator& MBMesquite::CornerHessDiagIterator::operator++ | ( | ) | [inline] |
Definition at line 121 of file AveragingQM.cpp.
References cornerHess, elemType, mCorner, and mStep.
Referenced by operator++().
CornerHessDiagIterator MBMesquite::CornerHessDiagIterator::operator++ | ( | int | ) | [inline] |
Definition at line 132 of file AveragingQM.cpp.
References operator++().
{ CornerHessDiagIterator copy( *this ); operator++(); return copy; }
const Matrix3D* MBMesquite::CornerHessDiagIterator::cornerHess [private] |
Current location in concatenated Hessian data.
Definition at line 103 of file AveragingQM.cpp.
Referenced by operator*(), and operator++().
const EntityTopology MBMesquite::CornerHessDiagIterator::elemType [private] |
Element topology for Hessian data.
Definition at line 104 of file AveragingQM.cpp.
Referenced by CornerHessDiagIterator(), and operator++().
unsigned MBMesquite::CornerHessDiagIterator::mCorner [private] |
The element corner for which cornerHess is pointing into the corresponding Hessian data.
Definition at line 105 of file AveragingQM.cpp.
Referenced by CornerHessDiagIterator(), and operator++().
unsigned MBMesquite::CornerHessDiagIterator::mStep [private] |
Amount to step to reach next diagonal block.
Definition at line 107 of file AveragingQM.cpp.
Referenced by CornerHessDiagIterator(), and operator++().