#include <EBStenVarCoef.H>
Public Member Functions | |
| ~EBStenVarCoef () | |
| EBStenVarCoef (const Vector< VolIndex > &a_srcVofs, const BaseIVFAB< VoFStencil > &a_vofstencil, const Box &a_validBox, const EBISBox &a_ebisbox, const IntVect &a_ghostVect, int a_varDest) | |
| void | apply (EBCellFAB &a_lofphi, const EBCellFAB &a_phi, const EBCellFAB &a_alphaWeight, const Real &a_alpha, const EBCellFAB &a_betaWeight, const Real &a_beta) |
| void | relax (EBCellFAB &a_phi, const EBCellFAB &a_rhs, const EBCellFAB &a_alphaWeight, const EBCellFAB &a_betaWeight, const EBCellFAB &a_lambda, Real a_alpha, Real a_beta) const |
| void | cache (const EBCellFAB &a_phi, int ivar) |
| void | uncache (EBCellFAB &a_phi, int ivar) const |
Protected Member Functions | |
| void | computeOffsets (const Vector< VolIndex > &a_srcVoFs, const BaseIVFAB< VoFStencil > &a_vofstencil) |
Protected Attributes | |
| Box | m_box |
| EBISBox | m_ebisBox |
| Box | m_grownBox |
| IntVect | m_ghostVect |
| int | m_destVar |
| Vector< varcsten_t > | m_stencil |
| Vector< destTerm_t > | m_destTerms |
| Vector< destTerm_t > | m_sourTerms |
| Vector< Real > | m_cache |
| Vector< Real > | m_cachePhi |
| Vector< VolIndex > | m_srcVoFs |
Private Member Functions | |
| EBStenVarCoef () | |
| weak construction is bad | |
| void | operator= (const EBStenVarCoef &stenin) |
| object contains pointered data. assignment is a bad idea | |
| EBStenVarCoef (const EBStenVarCoef &stenin) | |
| object contains pointered data. copy construction is a bad idea | |
Classes | |
| struct | destTerm_t |
| struct | stencilTerm |
| struct | varcsten_t |
| EBStenVarCoef::~EBStenVarCoef | ( | ) | [inline] |
Destructor
| EBStenVarCoef::EBStenVarCoef | ( | const Vector< VolIndex > & | a_srcVofs, | |
| const BaseIVFAB< VoFStencil > & | a_vofstencil, | |||
| const Box & | a_validBox, | |||
| const EBISBox & | a_ebisbox, | |||
| const IntVect & | a_ghostVect, | |||
| int | a_varDest | |||
| ) |
srcVofs = list of vofs for which the stencil will be applied vofstencil = stencil for the divergence(F) validBox = valid cells (box from the DBL) ghostVect = number of ghost cells (for both phi, L(phi), rho, lambda, everything) ebisbox = geometric information varDest = variable of lphi
| EBStenVarCoef::EBStenVarCoef | ( | ) | [inline, private] |
| EBStenVarCoef::EBStenVarCoef | ( | const EBStenVarCoef & | stenin | ) | [inline, private] |
| void EBStenVarCoef::apply | ( | EBCellFAB & | a_lofphi, | |
| const EBCellFAB & | a_phi, | |||
| const EBCellFAB & | a_alphaWeight, | |||
| const Real & | a_alpha, | |||
| const EBCellFAB & | a_betaWeight, | |||
| const Real & | a_beta | |||
| ) |
lphi = alpha*alphaWeight*phi + beta*betaWeight*(div(F)) The offsets of this object compute divF. lofphi = result phi = phi alphaWeight = variable coefficient factor of the identity term alpha = constant coefficient factor of the identity term betaWeight = variable coefficient factor of the div(F) term beta = constant coefficient factor of the div(F) term
| void EBStenVarCoef::relax | ( | EBCellFAB & | a_phi, | |
| const EBCellFAB & | a_rhs, | |||
| const EBCellFAB & | a_alphaWeight, | |||
| const EBCellFAB & | a_betaWeight, | |||
| const EBCellFAB & | a_lambda, | |||
| Real | a_alpha, | |||
| Real | a_beta | |||
| ) | const |
phi := phi + lambda*(lphi-rhs) where lphi = alpha*alphaWeight*phi + beta*betaWeight*(div(F)) The offsets of this object compute divF. lofphi = result phi = phi alphaWeight = variable coefficient factor of the identity term alpha = constant coefficient factor of the identity term betaWeight = variable coefficient factor of the div(F) term beta = constant coefficient factor of the div(F) term lambda = relaxation coefficient
| void EBStenVarCoef::cache | ( | const EBCellFAB & | a_phi, | |
| int | ivar | |||
| ) |
Cache the irregular values of the input
| void EBStenVarCoef::uncache | ( | EBCellFAB & | a_phi, | |
| int | ivar | |||
| ) | const |
take values of internal cache and put them into phi
| void EBStenVarCoef::computeOffsets | ( | const Vector< VolIndex > & | a_srcVoFs, | |
| const BaseIVFAB< VoFStencil > & | a_vofstencil | |||
| ) | [protected] |
| void EBStenVarCoef::operator= | ( | const EBStenVarCoef & | stenin | ) | [inline, private] |
Box EBStenVarCoef::m_box [protected] |
EBISBox EBStenVarCoef::m_ebisBox [protected] |
Box EBStenVarCoef::m_grownBox [protected] |
IntVect EBStenVarCoef::m_ghostVect [protected] |
int EBStenVarCoef::m_destVar [protected] |
Vector<varcsten_t> EBStenVarCoef::m_stencil [protected] |
Vector<destTerm_t> EBStenVarCoef::m_destTerms [protected] |
Vector<destTerm_t> EBStenVarCoef::m_sourTerms [protected] |
Vector<Real> EBStenVarCoef::m_cache [mutable, protected] |
Vector<Real> EBStenVarCoef::m_cachePhi [mutable, protected] |
Vector<VolIndex> EBStenVarCoef::m_srcVoFs [protected] |
1.5.5