AMRLevelOp< T > Class Template Reference

#include <AMRMultiGrid.H>

Inheritance diagram for AMRLevelOp< T >:

Inheritance graph
[legend]

List of all members.


Detailed Description

template<typename T>
class AMRLevelOp< T >

Operator class for AMR Multigrid

Public Member Functions

virtual void dumpAMR (Vector< T * > &a_data, string name)
virtual void dumpLevel (T &a_data, string name)
 AMRLevelOp ()
 Constructor.
virtual void dumpStuff (Vector< T * > data, string filename)
virtual ~AMRLevelOp ()
 Destructor.
virtual Real AMRNorm (const T &a_coarResid, const T &a_fineResid, const int &a_refRat, const int &a_ord)
virtual void outputLevel (T &a_rhs, string &a_name)
virtual void outputAMR (Vector< T * > &a_rhs, string &a_name)
virtual int refToCoarser ()=0
virtual void AMRResidual (T &a_residual, const T &a_phiFine, const T &a_phi, const T &a_phiCoarse, const T &a_rhs, bool a_homogeneousDomBC, AMRLevelOp< T > *a_finerOp)=0
virtual void AMRResidualNF (T &a_residual, const T &a_phi, const T &a_phiCoarse, const T &a_rhs, bool a_homogeneousBC)=0
virtual void AMRResidualNC (T &a_residual, const T &a_phiFine, const T &a_phi, const T &a_rhs, bool a_homogeneousBC, AMRLevelOp< T > *a_finerOp)=0
virtual void AMROperator (T &a_LofPhi, const T &a_phiFine, const T &a_phi, const T &a_phiCoarse, bool a_homogeneousDomBC, AMRLevelOp< T > *a_finerOp)=0
virtual void AMROperatorNF (T &a_LofPhi, const T &a_phi, const T &a_phiCoarse, bool a_homogeneousBC)=0
virtual void AMROperatorNC (T &a_LofPhi, const T &a_phiFine, const T &a_phi, bool a_homogeneousBC, AMRLevelOp< T > *a_finerOp)=0
virtual void AMRRestrict (T &a_resCoarse, const T &a_residual, const T &a_correction, const T &a_coarseCorrection, bool a_skip_res)=0
virtual void AMRProlong (T &a_correction, const T &a_coarseCorrection)=0
virtual void AMRUpdateResidual (T &a_residual, const T &a_correction, const T &a_coarseCorrection)=0
virtual void createCoarsened (T &a_lhs, const T &a_rhs, const int &a_refRat)=0
virtual void buildCopier (Copier &a_copier, const T &a_lhs, const T &a_rhs)
virtual void assignCopier (T &a_lhs, const T &a_rhs, const Copier &a_copier)
virtual void zeroCovered (T &a_lhs, T &a_rhs, const Copier &a_copier)
virtual Real localMaxNorm (const T &a_phi)
virtual void AMRProlongS (T &a_correction, const T &a_coarseCorrection, T &a_temp, const Copier &a_copier)
virtual void AMRProlongS_2 (T &a_correction, const T &a_coarseCorrection, T &a_temp, const Copier &a_copier, const Copier &a_cornerCopier, const AMRLevelOp< LevelData< FArrayBox > > *a_crsOp)
virtual void AMRRestrictS (T &a_resCoarse, const T &a_residual, const T &a_correction, const T &a_coarseCorrection, T &scratch, bool a_skip_res=false)
virtual unsigned int orderOfAccuracy (void) const
virtual void enforceCFConsistency (T &a_coarseCorrection, const T &a_correction)
 This routine is for operators with orderOfAccuracy()>2.

Constructor & Destructor Documentation

template<typename T>
AMRLevelOp< T >::AMRLevelOp (  )  [inline]

Constructor.

template<typename T>
virtual AMRLevelOp< T >::~AMRLevelOp (  )  [inline, virtual]

Destructor.


Member Function Documentation

template<typename T>
virtual void AMRLevelOp< T >::dumpAMR ( Vector< T * > &  a_data,
string  name 
) [inline, virtual]

Reimplemented in EBAMRPoissonOp, and EBConductivityOp.

template<typename T>
virtual void AMRLevelOp< T >::dumpLevel ( T &  a_data,
string  name 
) [inline, virtual]

Reimplemented in EBAMRPoissonOp, and EBConductivityOp.

template<typename T>
virtual void AMRLevelOp< T >::dumpStuff ( Vector< T * >  data,
string  filename 
) [inline, virtual]

template<typename T>
virtual Real AMRLevelOp< T >::AMRNorm ( const T &  a_coarResid,
const T &  a_fineResid,
const int &  a_refRat,
const int &  a_ord 
) [inline, virtual]

template<typename T>
virtual void AMRLevelOp< T >::outputLevel ( T &  a_rhs,
string &  a_name 
) [inline, virtual]

template<typename T>
virtual void AMRLevelOp< T >::outputAMR ( Vector< T * > &  a_rhs,
string &  a_name 
) [inline, virtual]

template<typename T>
virtual int AMRLevelOp< T >::refToCoarser (  )  [pure virtual]

return the refinement ratio to next coarser level. return 1 when there are no coarser AMRLevelOp objects.

Implemented in AMRNodeOp, AMRPoissonOp, ViscousTensorOp, NWOViscousTensorOp, ResistivityOp, ViscousTensorOp, EBAMRPoissonOp, EBConductivityOp, EBViscousTensorOp, NWOEBConductivityOp, NWOEBViscousTensorOp, and slowEBCO.

Referenced by AMRMultiGrid< T >::init(), and AMRFASMultiGrid< T >::init().

template<typename T>
virtual void AMRLevelOp< T >::AMRResidual ( T &  a_residual,
const T &  a_phiFine,
const T &  a_phi,
const T &  a_phiCoarse,
const T &  a_rhs,
bool  a_homogeneousDomBC,
AMRLevelOp< T > *  a_finerOp 
) [pure virtual]

template<typename T>
virtual void AMRLevelOp< T >::AMRResidualNF ( T &  a_residual,
const T &  a_phi,
const T &  a_phiCoarse,
const T &  a_rhs,
bool  a_homogeneousBC 
) [pure virtual]

template<typename T>
virtual void AMRLevelOp< T >::AMRResidualNC ( T &  a_residual,
const T &  a_phiFine,
const T &  a_phi,
const T &  a_rhs,
bool  a_homogeneousBC,
AMRLevelOp< T > *  a_finerOp 
) [pure virtual]

template<typename T>
virtual void AMRLevelOp< T >::AMROperator ( T &  a_LofPhi,
const T &  a_phiFine,
const T &  a_phi,
const T &  a_phiCoarse,
bool  a_homogeneousDomBC,
AMRLevelOp< T > *  a_finerOp 
) [pure virtual]

template<typename T>
virtual void AMRLevelOp< T >::AMROperatorNF ( T &  a_LofPhi,
const T &  a_phi,
const T &  a_phiCoarse,
bool  a_homogeneousBC 
) [pure virtual]

template<typename T>
virtual void AMRLevelOp< T >::AMROperatorNC ( T &  a_LofPhi,
const T &  a_phiFine,
const T &  a_phi,
bool  a_homogeneousBC,
AMRLevelOp< T > *  a_finerOp 
) [pure virtual]

template<typename T>
virtual void AMRLevelOp< T >::AMRRestrict ( T &  a_resCoarse,
const T &  a_residual,
const T &  a_correction,
const T &  a_coarseCorrection,
bool  a_skip_res 
) [pure virtual]

template<typename T>
virtual void AMRLevelOp< T >::AMRProlong ( T &  a_correction,
const T &  a_coarseCorrection 
) [pure virtual]

template<typename T>
virtual void AMRLevelOp< T >::AMRUpdateResidual ( T &  a_residual,
const T &  a_correction,
const T &  a_coarseCorrection 
) [pure virtual]

template<typename T>
virtual void AMRLevelOp< T >::createCoarsened ( T &  a_lhs,
const T &  a_rhs,
const int &  a_refRat 
) [pure virtual]

template<typename T>
virtual void AMRLevelOp< T >::buildCopier ( Copier a_copier,
const T &  a_lhs,
const T &  a_rhs 
) [inline, virtual]

Reimplemented in AMRPoissonOp, and EBAMRPoissonOp.

Referenced by AMRMultiGrid< T >::init().

template<typename T>
virtual void AMRLevelOp< T >::assignCopier ( T &  a_lhs,
const T &  a_rhs,
const Copier a_copier 
) [inline, virtual]

template<typename T>
virtual void AMRLevelOp< T >::zeroCovered ( T &  a_lhs,
T &  a_rhs,
const Copier a_copier 
) [inline, virtual]

Reimplemented in AMRPoissonOp.

template<typename T>
virtual Real AMRLevelOp< T >::localMaxNorm ( const T &  a_phi  )  [inline, virtual]

template<typename T>
virtual void AMRLevelOp< T >::AMRProlongS ( T &  a_correction,
const T &  a_coarseCorrection,
T &  a_temp,
const Copier a_copier 
) [inline, virtual]

optimization of AMRProlong that sends in the existing temporary and copier

Reimplemented in AMRPoissonOp.

template<typename T>
virtual void AMRLevelOp< T >::AMRProlongS_2 ( T &  a_correction,
const T &  a_coarseCorrection,
T &  a_temp,
const Copier a_copier,
const Copier a_cornerCopier,
const AMRLevelOp< LevelData< FArrayBox > > *  a_crsOp 
) [inline, virtual]

optimization of AMRProlong that sends in the existing temporary and copier -- high order

Reimplemented in AMRPoissonOp.

template<typename T>
virtual void AMRLevelOp< T >::AMRRestrictS ( T &  a_resCoarse,
const T &  a_residual,
const T &  a_correction,
const T &  a_coarseCorrection,
T &  scratch,
bool  a_skip_res = false 
) [inline, virtual]

Reimplemented in AMRPoissonOp.

template<typename T>
virtual unsigned int AMRLevelOp< T >::orderOfAccuracy ( void   )  const [inline, virtual]

template<typename T>
virtual void AMRLevelOp< T >::enforceCFConsistency ( T &  a_coarseCorrection,
const T &  a_correction 
) [inline, virtual]

This routine is for operators with orderOfAccuracy()>2.


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

Generated on Fri Apr 5 04:24:52 2019 for Chombo + EB by  doxygen 1.5.5