InterfaceJump Class Reference

#include <InterfaceJump.H>

List of all members.

Public Member Functions

 InterfaceJump ()
 ~InterfaceJump ()
void define (const MFIndexSpace &a_MFIS, const ProblemDomain &a_domain, const DisjointBoxLayout &a_dbl, const RealVect &a_vectDx, const RealVect &a_physOrigin, const bool a_isVectorJump=false)
void setJump (const Real &a_gD, const Real &a_gN)
void setJump (const RealVect &a_gD, const RealVect &a_gN)
void setJump (const Vector< RefCountedPtr< BaseBCValue > > &a_phiValVect, const Vector< RefCountedPtr< BaseBCValue > > &a_flxValVect, const Vector< Real > &a_alpha, const Vector< Real > &a_beta, const Real &a_time=0.0)
void resetJump (const Vector< Real > &a_alpha, const Vector< Real > &a_beta, const Real &a_time)
void getFaceStencil (VoFStencil &a_istencil, VoFStencil &a_jstencil, const Vector< Real > &a_beta, const VolIndex &a_ivof, const DataIndex &a_dix, const int &a_iphase, const int &a_iface)
void computeScalarBV (const EBCellFAB &a_P0, const EBCellFAB &a_P1, const Vector< Real > &a_beta, const DataIndex &a_dataInd, BaseIVFAB< Real > &a_PBV0, BaseIVFAB< Real > &a_PBV1, BaseIVFAB< Real > &a_dpDN0, BaseIVFAB< Real > &a_dpDN1, bool homogeneous=false)
void computeVectorBV (const EBCellFAB &a_P0, const EBCellFAB &a_P1, const Vector< Real > &a_beta, const DataIndex &a_dataInd, BaseIVFAB< Real > &a_PBV0, BaseIVFAB< Real > &a_PBV1, BaseIVFAB< Real > &a_dpDN0, BaseIVFAB< Real > &a_dpDN1, bool homogeneous=false)

Protected Member Functions

void calculateJump (const Vector< Real > &a_alpha, const Vector< Real > &a_beta, const Real &a_time)
void defineLayoutData (EBISLayout &a_ebisl, LayoutData< BaseIVFAB< Vector< VoFStencil > > > &a_stencils, LayoutData< BaseIVFAB< Vector< Real > > > &a_inHomDirichWeight, LayoutData< BaseIVFAB< Vector< int > > > &a_dirichletDropOrder, LayoutData< BaseIVFAB< Vector< VolIndex > > > &a_boundaryVofs, LayoutData< BaseIVFAB< Vector< int > > > &a_boundaryFaceIndices)
void defineScalarJumpLayoutData (EBISLayout &a_ebisl, LayoutData< BaseIVFAB< Vector< Real > > > &a_scalarGD, LayoutData< BaseIVFAB< Vector< Real > > > &a_scalarGN)
void defineVectorJumpLayoutData (EBISLayout &a_ebisl, LayoutData< BaseIVFAB< Vector< RealVect > > > &a_vectorGD, LayoutData< BaseIVFAB< Vector< RealVect > > > &a_vectorGN)
void cacheVoFIt ()
void definePhase (const MFIndexSpace &a_MFIS, const ProblemDomain &a_domain, const DisjointBoxLayout &a_dbl, EBISLayout &a_ebisl, LayoutData< BaseIVFAB< Vector< VoFStencil > > > &a_stencils, LayoutData< BaseIVFAB< Vector< Real > > > &a_inHomDirichWeight, LayoutData< BaseIVFAB< Vector< int > > > &a_dirichletDropOrder, LayoutData< BaseIVFAB< Vector< VolIndex > > > &a_boundaryVofs, LayoutData< BaseIVFAB< Vector< int > > > &a_boundaryFaceIndices, const int &a_numEBISLGhost, const int &a_phase)
void computeBoundaryLayoutData (LayoutData< BaseIVFAB< Vector< VolIndex > > > &a_0boundaryVofs, LayoutData< BaseIVFAB< Vector< VolIndex > > > &a_1boundaryVofs, LayoutData< BaseIVFAB< Vector< int > > > &a_0boundaryFaceIndices, LayoutData< BaseIVFAB< Vector< int > > > &a_1boundaryFaceIndices)
void leastSquaresDirichStencil (VoFStencil &a_stencil, Real &a_weight, const RealVect &a_normal, const RealVect &a_centroid, const Real &a_bndryArea, const VolIndex &a_vof, const EBISBox &a_ebisBox, const RealVect &a_dx, const ProblemDomain &a_domain, int a_ivar)
void johanDirichletStencil (const RealVect &a_normal, const RealVect &a_centroid, const VolIndex &a_vof, const EBISBox &a_ebisBox, VoFStencil &a_vofStencil, int &a_dirichletDropOrder, Real &a_inHomDirichWeight)
void boundarySlope (Real *a_dPhiDn, const RealVect &a_normal, const VolIndex &a_vof, const EBCellFAB &a_phiFab, const EBISBox &a_ebisBox, const int &a_ivar=0)
void setDxConstants ()
void invert2x2 (const Real &a_betaZeta1, const Real &a_betaZeta2, const Real &a_r1, const Real &a_r2, Real &a_pB1, Real &a_pB2)
void normalDeriv (const Real &a_qs, const Real &a_zetas, const Real &a_pBs, Real &a_dPdns)
void findTangentPlane (RealVect &a_t1, RealVect &a_t2, const RealVect a_normal)
void crossProduct (Real a_cp[3], const Real a_c1[3], const Real a_c2[3])
Real euclidianNorm (const RealVect a_vect)
Real innerProduct (const RealVect &a_v1, const RealVect &a_v2)
void AInvTimesVelocity3D (RealVect &a_answer, const RealVect &a_velocity, const RealVect &a_normal, const RealVect &a_t1, const RealVect &a_t2, const Vector< Real > &a_nu, const Vector< Real > &a_zeta)
void AInvTimesVelocity2D (RealVect &a_answer, const RealVect &a_velocity, const RealVect &a_normal, const RealVect &a_t1, const Vector< Real > &a_nu, const Vector< Real > &a_zeta)
void AInvTimesVelocity (RealVect &a_answer, const RealVect &a_velocity, const RealVect &a_normal, const RealVect &a_t1, const RealVect &a_t2, const Vector< Real > &a_nu, const Vector< Real > &a_zeta)
void ATimesQ3D (RealVect &a_answer, const RealVect &a_q, const RealVect &a_normal, const RealVect &a_t1, const RealVect &a_t2, const Real a_nu)
void ATimesQ2D (RealVect &a_answer, const RealVect &a_q, const RealVect &a_normal, const RealVect &a_t1, const Real a_nu)
void ATimesQ (RealVect &a_answer, const RealVect &a_q, const RealVect &a_normal, const RealVect &a_t1, const RealVect &a_t2, const Real a_nu)

Protected Attributes

bool m_isDefined
bool m_isVectorJump
RealVect m_vectDx
RealVect m_d2Vect
Real m_dxScale
RealVect m_origin
ProblemDomain m_domain
int m_nComp
LayoutData< BaseIVFAB< Vector
< Real > > > 
m_scalarGD
LayoutData< BaseIVFAB< Vector
< Real > > > 
m_scalarGN
LayoutData< BaseIVFAB< Vector
< RealVect > > > 
m_vectorGD
LayoutData< BaseIVFAB< Vector
< RealVect > > > 
m_vectorGN
Vector< RefCountedPtr
< BaseBCValue > > 
m_phiValVect
Vector< RefCountedPtr
< BaseBCValue > > 
m_flxValVect
LayoutData< BaseIVFAB< Vector
< VoFStencil > > > 
m_0stencils
LayoutData< BaseIVFAB< Vector
< Real > > > 
m_0inHomDirichWeight
LayoutData< BaseIVFAB< Vector
< int > > > 
m_0dirichletDropOrder
LayoutData< BaseIVFAB< Vector
< VolIndex > > > 
m_0boundaryVofs
LayoutData< BaseIVFAB< Vector
< int > > > 
m_0boundaryFaceIndices
LayoutData< BaseIVFAB< Vector
< VoFStencil > > > 
m_1stencils
LayoutData< BaseIVFAB< Vector
< Real > > > 
m_1inHomDirichWeight
LayoutData< BaseIVFAB< Vector
< int > > > 
m_1dirichletDropOrder
LayoutData< BaseIVFAB< Vector
< VolIndex > > > 
m_1boundaryVofs
LayoutData< BaseIVFAB< Vector
< int > > > 
m_1boundaryFaceIndices
LayoutData< VoFIteratorm_vofItBndry
EBISLayout m_0ebisl
EBISLayout m_1ebisl
DisjointBoxLayout m_dbl


Constructor & Destructor Documentation

InterfaceJump::InterfaceJump (  ) 

InterfaceJump::~InterfaceJump (  ) 


Member Function Documentation

void InterfaceJump::define ( const MFIndexSpace a_MFIS,
const ProblemDomain a_domain,
const DisjointBoxLayout a_dbl,
const RealVect a_vectDx,
const RealVect a_physOrigin,
const bool  a_isVectorJump = false 
)

void InterfaceJump::setJump ( const Real a_gD,
const Real a_gN 
)

void InterfaceJump::setJump ( const RealVect a_gD,
const RealVect a_gN 
)

void InterfaceJump::setJump ( const Vector< RefCountedPtr< BaseBCValue > > &  a_phiValVect,
const Vector< RefCountedPtr< BaseBCValue > > &  a_flxValVect,
const Vector< Real > &  a_alpha,
const Vector< Real > &  a_beta,
const Real a_time = 0.0 
)

void InterfaceJump::resetJump ( const Vector< Real > &  a_alpha,
const Vector< Real > &  a_beta,
const Real a_time 
)

void InterfaceJump::getFaceStencil ( VoFStencil a_istencil,
VoFStencil a_jstencil,
const Vector< Real > &  a_beta,
const VolIndex a_ivof,
const DataIndex a_dix,
const int &  a_iphase,
const int &  a_iface 
)

void InterfaceJump::computeScalarBV ( const EBCellFAB a_P0,
const EBCellFAB a_P1,
const Vector< Real > &  a_beta,
const DataIndex a_dataInd,
BaseIVFAB< Real > &  a_PBV0,
BaseIVFAB< Real > &  a_PBV1,
BaseIVFAB< Real > &  a_dpDN0,
BaseIVFAB< Real > &  a_dpDN1,
bool  homogeneous = false 
)

void InterfaceJump::computeVectorBV ( const EBCellFAB a_P0,
const EBCellFAB a_P1,
const Vector< Real > &  a_beta,
const DataIndex a_dataInd,
BaseIVFAB< Real > &  a_PBV0,
BaseIVFAB< Real > &  a_PBV1,
BaseIVFAB< Real > &  a_dpDN0,
BaseIVFAB< Real > &  a_dpDN1,
bool  homogeneous = false 
)

void InterfaceJump::calculateJump ( const Vector< Real > &  a_alpha,
const Vector< Real > &  a_beta,
const Real a_time 
) [protected]

void InterfaceJump::defineLayoutData ( EBISLayout a_ebisl,
LayoutData< BaseIVFAB< Vector< VoFStencil > > > &  a_stencils,
LayoutData< BaseIVFAB< Vector< Real > > > &  a_inHomDirichWeight,
LayoutData< BaseIVFAB< Vector< int > > > &  a_dirichletDropOrder,
LayoutData< BaseIVFAB< Vector< VolIndex > > > &  a_boundaryVofs,
LayoutData< BaseIVFAB< Vector< int > > > &  a_boundaryFaceIndices 
) [protected]

void InterfaceJump::defineScalarJumpLayoutData ( EBISLayout a_ebisl,
LayoutData< BaseIVFAB< Vector< Real > > > &  a_scalarGD,
LayoutData< BaseIVFAB< Vector< Real > > > &  a_scalarGN 
) [protected]

void InterfaceJump::defineVectorJumpLayoutData ( EBISLayout a_ebisl,
LayoutData< BaseIVFAB< Vector< RealVect > > > &  a_vectorGD,
LayoutData< BaseIVFAB< Vector< RealVect > > > &  a_vectorGN 
) [protected]

void InterfaceJump::cacheVoFIt (  )  [protected]

void InterfaceJump::definePhase ( const MFIndexSpace a_MFIS,
const ProblemDomain a_domain,
const DisjointBoxLayout a_dbl,
EBISLayout a_ebisl,
LayoutData< BaseIVFAB< Vector< VoFStencil > > > &  a_stencils,
LayoutData< BaseIVFAB< Vector< Real > > > &  a_inHomDirichWeight,
LayoutData< BaseIVFAB< Vector< int > > > &  a_dirichletDropOrder,
LayoutData< BaseIVFAB< Vector< VolIndex > > > &  a_boundaryVofs,
LayoutData< BaseIVFAB< Vector< int > > > &  a_boundaryFaceIndices,
const int &  a_numEBISLGhost,
const int &  a_phase 
) [protected]

void InterfaceJump::computeBoundaryLayoutData ( LayoutData< BaseIVFAB< Vector< VolIndex > > > &  a_0boundaryVofs,
LayoutData< BaseIVFAB< Vector< VolIndex > > > &  a_1boundaryVofs,
LayoutData< BaseIVFAB< Vector< int > > > &  a_0boundaryFaceIndices,
LayoutData< BaseIVFAB< Vector< int > > > &  a_1boundaryFaceIndices 
) [protected]

void InterfaceJump::leastSquaresDirichStencil ( VoFStencil a_stencil,
Real a_weight,
const RealVect a_normal,
const RealVect a_centroid,
const Real a_bndryArea,
const VolIndex a_vof,
const EBISBox a_ebisBox,
const RealVect a_dx,
const ProblemDomain a_domain,
int  a_ivar 
) [protected]

void InterfaceJump::johanDirichletStencil ( const RealVect a_normal,
const RealVect a_centroid,
const VolIndex a_vof,
const EBISBox a_ebisBox,
VoFStencil a_vofStencil,
int &  a_dirichletDropOrder,
Real a_inHomDirichWeight 
) [protected]

void InterfaceJump::boundarySlope ( Real a_dPhiDn,
const RealVect a_normal,
const VolIndex a_vof,
const EBCellFAB a_phiFab,
const EBISBox a_ebisBox,
const int &  a_ivar = 0 
) [protected]

void InterfaceJump::setDxConstants (  )  [protected]

void InterfaceJump::invert2x2 ( const Real a_betaZeta1,
const Real a_betaZeta2,
const Real a_r1,
const Real a_r2,
Real a_pB1,
Real a_pB2 
) [protected]

void InterfaceJump::normalDeriv ( const Real a_qs,
const Real a_zetas,
const Real a_pBs,
Real a_dPdns 
) [protected]

void InterfaceJump::findTangentPlane ( RealVect a_t1,
RealVect a_t2,
const RealVect  a_normal 
) [protected]

void InterfaceJump::crossProduct ( Real  a_cp[3],
const Real  a_c1[3],
const Real  a_c2[3] 
) [protected]

Real InterfaceJump::euclidianNorm ( const RealVect  a_vect  )  [protected]

Real InterfaceJump::innerProduct ( const RealVect a_v1,
const RealVect a_v2 
) [protected]

void InterfaceJump::AInvTimesVelocity3D ( RealVect a_answer,
const RealVect a_velocity,
const RealVect a_normal,
const RealVect a_t1,
const RealVect a_t2,
const Vector< Real > &  a_nu,
const Vector< Real > &  a_zeta 
) [protected]

void InterfaceJump::AInvTimesVelocity2D ( RealVect a_answer,
const RealVect a_velocity,
const RealVect a_normal,
const RealVect a_t1,
const Vector< Real > &  a_nu,
const Vector< Real > &  a_zeta 
) [protected]

void InterfaceJump::AInvTimesVelocity ( RealVect a_answer,
const RealVect a_velocity,
const RealVect a_normal,
const RealVect a_t1,
const RealVect a_t2,
const Vector< Real > &  a_nu,
const Vector< Real > &  a_zeta 
) [protected]

void InterfaceJump::ATimesQ3D ( RealVect a_answer,
const RealVect a_q,
const RealVect a_normal,
const RealVect a_t1,
const RealVect a_t2,
const Real  a_nu 
) [protected]

void InterfaceJump::ATimesQ2D ( RealVect a_answer,
const RealVect a_q,
const RealVect a_normal,
const RealVect a_t1,
const Real  a_nu 
) [protected]

void InterfaceJump::ATimesQ ( RealVect a_answer,
const RealVect a_q,
const RealVect a_normal,
const RealVect a_t1,
const RealVect a_t2,
const Real  a_nu 
) [protected]


Member Data Documentation

bool InterfaceJump::m_isDefined [protected]

int InterfaceJump::m_nComp [protected]


The documentation for this class was generated from the following file:

Generated on Wed Mar 29 03:27:06 2017 for Chombo + EB + MF by  doxygen 1.5.5