|
Mushy Layer
1.0
|
Operator for doing projector with a variable coefficient. More...
#include <AMRProjectionOp.h>
Public Member Functions | |
| virtual void | prolongIncrement (LevelData< FArrayBox > &a_phiThisLevel, const LevelData< FArrayBox > &a_correctCoarse) |
| Prolong operation for multigrid. More... | |
| virtual void | resetLambda () |
| Reset the relaxation coefficient. | |
Public Member Functions inherited from VCAMRPoissonOp2 | |
| void | finerOperatorChanged (const MGLevelOp< LevelData< FArrayBox > > &a_operator, int a_coarseningFactor) |
| LevelData< FArrayBox > & | identityCoef () |
| virtual void | diagonalScale (LevelData< FArrayBox > &a_rhs, bool a_kappaWeighted) |
| virtual void | divideByIdentityCoef (LevelData< FArrayBox > &a_rhs) |
| void | setBCoefInterpolator (RefCountedPtr< CoefficientInterpolator< LevelData< FluxBox >, LevelData< FArrayBox > > > &a_bCoefInterpolator) |
| LevelData< FluxBox > & | BCoef () |
| RefCountedPtr< CoefficientInterpolator< LevelData< FluxBox >, LevelData< FArrayBox > > > | BCoefInterpolator () |
| void | setTime (Real a_time) |
| virtual void | getFlux (FluxBox &a_flux, const LevelData< FArrayBox > &a_data, const Box &a_grid, const DataIndex &a_dit, Real a_scale) |
| virtual void | getFlux (FluxBox &a_flux, const LevelData< FArrayBox > &a_data, const FluxBox &a_bCoef, const Box &a_grid, const DataIndex &a_dit, Real a_scale) |
| virtual void | residualI (LevelData< FArrayBox > &a_lhs, const LevelData< FArrayBox > &a_phi, const LevelData< FArrayBox > &a_rhs, bool a_homogeneous=false) |
| virtual void | preCond (LevelData< FArrayBox > &a_correction, const LevelData< FArrayBox > &a_residual) |
| virtual void | applyOpI (LevelData< FArrayBox > &a_lhs, const LevelData< FArrayBox > &a_phi, bool a_homogeneous=false) |
| virtual void | applyOpNoBoundary (LevelData< FArrayBox > &a_lhs, const LevelData< FArrayBox > &a_phi) |
| virtual void | setAlphaAndBeta (const Real &a_alpha, const Real &a_beta) |
| virtual void | setCoefs (const RefCountedPtr< LevelData< FArrayBox > > &a_aCoef, const RefCountedPtr< LevelData< FluxBox > > &a_bCoef, const Real &a_alpha, const Real &a_beta) |
| virtual void | computeLambda () |
| virtual void | reflux (const LevelData< FArrayBox > &a_phiFine, const LevelData< FArrayBox > &a_phi, LevelData< FArrayBox > &a_residual, AMRLevelOp< LevelData< FArrayBox > > *a_finerOp) |
| virtual void | restrictResidual (LevelData< FArrayBox > &a_resCoarse, LevelData< FArrayBox > &a_phiFine, const LevelData< FArrayBox > &a_rhsFine) |
Public Member Functions inherited from AMRPoissonOp | |
| virtual Real | dx () const |
| void | define (const DisjointBoxLayout &a_grids, const DisjointBoxLayout &a_gridsFiner, const DisjointBoxLayout &a_gridsCoarser, const Real &a_dxLevel, int a_refRatio, int a_refRatioFiner, const ProblemDomain &a_domain, BCHolder a_bc, const Copier &a_exchange, const CFRegion &a_cfregion, const int a_nComp=1) |
| void | define (const DisjointBoxLayout &a_grids, const DisjointBoxLayout &a_gridsFiner, const Real &a_dxLevel, int a_refRatio, int a_refRatioFiner, const ProblemDomain &a_domain, BCHolder a_bc, const Copier &a_exchange, const CFRegion &a_cfregion, const int a_nComp=1) |
| void | define (const DisjointBoxLayout &a_grids, const DisjointBoxLayout &a_baseBAPtr, const Real &a_dxLevel, int a_refRatio, const ProblemDomain &a_domain, BCHolder a_bc, const Copier &a_exchange, const CFRegion &a_cfregion, int a_numComp=1) |
| void | define (const DisjointBoxLayout &a_grids, const Real &a_dx, const ProblemDomain &a_domain, BCHolder a_bc, const Copier &a_exchange, const CFRegion &a_cfregion) |
| void | define (const DisjointBoxLayout &a_grids, const Real &a_dx, const ProblemDomain &a_domain, BCHolder a_bc) |
| void | define (const DisjointBoxLayout &a_grids, const DisjointBoxLayout *a_baseBAPtr, Real a_dxLevel, int a_refRatio, const ProblemDomain &a_domain, BCHolder a_bc) |
| virtual void | residual (LevelData< FArrayBox > &a_lhs, const LevelData< FArrayBox > &a_phi, const LevelData< FArrayBox > &a_rhs, bool a_homogeneous=false) |
| virtual void | residualNF (LevelData< FArrayBox > &a_lhs, LevelData< FArrayBox > &a_phi, const LevelData< FArrayBox > *a_phiCoarse, const LevelData< FArrayBox > &a_rhs, bool a_homogeneous=false) |
| virtual void | applyOp (LevelData< FArrayBox > &a_lhs, const LevelData< FArrayBox > &a_phi, bool a_homogeneous=false) |
| virtual void | applyOpI4 (LevelData< FArrayBox > &a_lhs, const LevelData< FArrayBox > &a_phi, bool a_homogeneous=false) |
| virtual void | create (LevelData< FArrayBox > &a_lhs, const LevelData< FArrayBox > &a_rhs) |
| virtual void | createCoarsened (LevelData< FArrayBox > &a_lhs, const LevelData< FArrayBox > &a_rhs, const int &a_refRat) |
| virtual void | assign (LevelData< FArrayBox > &a_lhs, const LevelData< FArrayBox > &a_rhs) |
| virtual void | assignLocal (LevelData< FArrayBox > &a_lhs, const LevelData< FArrayBox > &a_rhs) |
| virtual void | buildCopier (Copier &a_copier, const LevelData< FArrayBox > &a_lhs, const LevelData< FArrayBox > &a_rhs) |
| virtual void | assignCopier (LevelData< FArrayBox > &a_lhs, const LevelData< FArrayBox > &a_rhs, const Copier &a_copier) |
| virtual void | zeroCovered (LevelData< FArrayBox > &a_lhs, LevelData< FArrayBox > &a_rhs, const Copier &a_copier) |
| virtual Real | dotProduct (const LevelData< FArrayBox > &a_1, const LevelData< FArrayBox > &a_2) |
| virtual void | mDotProduct (const LevelData< FArrayBox > &a_1, const int a_sz, const LevelData< FArrayBox > a_2[], Real a_mdots[]) |
| virtual void | incr (LevelData< FArrayBox > &a_lhs, const LevelData< FArrayBox > &a_x, Real a_scale) |
| virtual void | axby (LevelData< FArrayBox > &a_lhs, const LevelData< FArrayBox > &a_x, const LevelData< FArrayBox > &a_y, Real a_a, Real a_b) |
| virtual void | scale (LevelData< FArrayBox > &a_lhs, const Real &a_scale) |
| virtual Real | norm (const LevelData< FArrayBox > &a_x, int a_ord) |
| virtual Real | localMaxNorm (const LevelData< FArrayBox > &a_x) |
| virtual void | setToZero (LevelData< FArrayBox > &a_x) |
| virtual void | relax (LevelData< FArrayBox > &a_e, const LevelData< FArrayBox > &a_residual, int a_iterations) |
| virtual void | relaxNF (LevelData< FArrayBox > &a_phi, const LevelData< FArrayBox > *a_phiCoarse, const LevelData< FArrayBox > &a_rhs, int a_iterations) |
| virtual void | createCoarser (LevelData< FArrayBox > &a_coarse, const LevelData< FArrayBox > &a_fine, bool a_ghosted) |
| virtual int | refToCoarser () |
| virtual void | AMRResidual (LevelData< FArrayBox > &a_residual, const LevelData< FArrayBox > &a_phiFine, const LevelData< FArrayBox > &a_phi, const LevelData< FArrayBox > &a_phiCoarse, const LevelData< FArrayBox > &a_rhs, bool a_homogeneousPhysBC, AMRLevelOp< LevelData< FArrayBox > > *a_finerOp) |
| virtual void | AMRResidualNC (LevelData< FArrayBox > &a_residual, const LevelData< FArrayBox > &a_phiFine, const LevelData< FArrayBox > &a_phi, const LevelData< FArrayBox > &a_rhs, bool a_homogeneousPhysBC, AMRLevelOp< LevelData< FArrayBox > > *a_finerOp) |
| virtual void | AMRResidualNF (LevelData< FArrayBox > &a_residual, const LevelData< FArrayBox > &a_phi, const LevelData< FArrayBox > &a_phiCoarse, const LevelData< FArrayBox > &a_rhs, bool a_homogeneousPhysBC) |
| virtual void | AMROperator (LevelData< FArrayBox > &a_LofPhi, const LevelData< FArrayBox > &a_phiFine, const LevelData< FArrayBox > &a_phi, const LevelData< FArrayBox > &a_phiCoarse, bool a_homogeneousDomBC, AMRLevelOp< LevelData< FArrayBox > > *a_finerOp) |
| virtual void | AMROperatorNC (LevelData< FArrayBox > &a_LofPhi, const LevelData< FArrayBox > &a_phiFine, const LevelData< FArrayBox > &a_phi, bool a_homogeneousBC, AMRLevelOp< LevelData< FArrayBox > > *a_finerOp) |
| virtual void | AMROperatorNF (LevelData< FArrayBox > &a_LofPhi, const LevelData< FArrayBox > &a_phi, const LevelData< FArrayBox > &a_phiCoarse, bool a_homogeneousBC) |
| virtual void | AMRRestrict (LevelData< FArrayBox > &a_resCoarse, const LevelData< FArrayBox > &a_residual, const LevelData< FArrayBox > &a_correction, const LevelData< FArrayBox > &a_coarseCorrection, bool a_skip_res=false) |
| virtual void | AMRRestrictS (LevelData< FArrayBox > &a_resCoarse, const LevelData< FArrayBox > &a_residual, const LevelData< FArrayBox > &a_correction, const LevelData< FArrayBox > &a_coarseCorrection, LevelData< FArrayBox > &a_scratch, bool a_skip_res=false) |
| virtual void | AMRProlong (LevelData< FArrayBox > &a_correction, const LevelData< FArrayBox > &a_coarseCorrection) |
| virtual void | AMRProlongS (LevelData< FArrayBox > &a_correction, const LevelData< FArrayBox > &a_coarseCorrection, LevelData< FArrayBox > &a_temp, const Copier &a_copier) |
| virtual void | AMRProlongS_2 (LevelData< FArrayBox > &a_correction, const LevelData< FArrayBox > &a_coarseCorrection, LevelData< FArrayBox > &a_temp, const Copier &a_copier, const Copier &a_cornerCopier, const AMRLevelOp< LevelData< FArrayBox > > *a_crsOp) |
| virtual void | AMRUpdateResidual (LevelData< FArrayBox > &a_residual, const LevelData< FArrayBox > &a_correction, const LevelData< FArrayBox > &a_coarseCorrection) |
| virtual Real | AMRNorm (const LevelData< FArrayBox > &a_coarseResid, const LevelData< FArrayBox > &a_fineResid, const int &a_refRat, const int &a_ord) |
| virtual void | setBC (const BCHolder &a_bc) |
| virtual void | fillGrad (const LevelData< FArrayBox > &a_phi) |
| virtual void | write (const LevelData< FArrayBox > *a_data, const char *a_filename) |
| LevelTGAHelmOp () | |
| LevelTGAHelmOp (bool a_isTimeIndependent) | |
| TGAHelmOp () | |
| TGAHelmOp (bool a_isTimeDependent) | |
| virtual void | diagonalScale (LevelData< FArrayBox > &a_rhs) |
| virtual void | kappaScale (LevelData< FArrayBox > &a_rhs) |
| virtual void | setTime (Real a_oldTime, Real a_mu, Real a_dt) |
| bool | isTimeDependent () const |
| virtual void | dumpAMR (Vector< LevelData< FArrayBox > *> &a_data, string name) |
| virtual void | dumpAMR (Vector< LevelData< FArrayBox > *> &a_data, string name) |
| virtual void | dumpLevel (LevelData< FArrayBox > &a_data, string name) |
| virtual void | dumpLevel (LevelData< FArrayBox > &a_data, string name) |
| AMRLevelOp () | |
| AMRLevelOp () | |
| virtual void | dumpStuff (Vector< LevelData< FArrayBox > *> data, string filename) |
| virtual void | dumpStuff (Vector< LevelData< FArrayBox > *> data, string filename) |
| virtual void | outputLevel (LevelData< FArrayBox > &a_rhs, string &a_name) |
| virtual void | outputLevel (LevelData< FArrayBox > &a_rhs, string &a_name) |
| virtual void | outputAMR (Vector< LevelData< FArrayBox > *> &a_rhs, string &a_name) |
| virtual void | outputAMR (Vector< LevelData< FArrayBox > *> &a_rhs, string &a_name) |
| virtual unsigned int | orderOfAccuracy (void) const |
| virtual unsigned int | orderOfAccuracy (void) const |
| virtual void | enforceCFConsistency (LevelData< FArrayBox > &a_coarseCorrection, const LevelData< FArrayBox > &a_correction) |
| virtual void | enforceCFConsistency (LevelData< FArrayBox > &a_coarseCorrection, const LevelData< FArrayBox > &a_correction) |
| MGLevelOp () | |
| virtual void | restrictResidual (LevelData< FArrayBox > &a_resCoarse, LevelData< FArrayBox > &a_phiFine, const LevelData< FArrayBox > *a_phiCoarse, const LevelData< FArrayBox > &a_rhsFine, bool homogeneous) |
| virtual void | restrictR (LevelData< FArrayBox > &a_phiCoarse, const LevelData< FArrayBox > &a_phiFine) |
| void | addObserver (MGLevelOpObserver< LevelData< FArrayBox > > *a_observer) |
| virtual void | applyOpMg (LevelData< FArrayBox > &a_lhs, LevelData< FArrayBox > &a_phi, LevelData< FArrayBox > *a_phiCoarse, bool a_homogeneous) |
| void | removeObserver (MGLevelOpObserver< LevelData< FArrayBox > > *a_observer) |
| void | addCoarserObserver (MGLevelOp< LevelData< FArrayBox > > *a_operator, int a_coarseningFactor) |
| void | notifyObserversOfChange () |
| int | numObservers () const |
| virtual void | clear (LevelData< FArrayBox > &a_lhs) |
| MGLevelOpObserver () | |
| virtual void | operatorChanged (const MGLevelOp< LevelData< FArrayBox > > &a_operator) |
| void | setObservee (MGLevelOp< LevelData< FArrayBox > > *a_observee) |
| void | clearObservee () |
Public Member Functions inherited from LevelTGAHelmOp< LevelData< FArrayBox >, FluxBox > | |
| LevelTGAHelmOp (bool a_isTimeIndependent) | |
| TGAHelmOp () | |
| TGAHelmOp (bool a_isTimeDependent) | |
| bool | isTimeDependent () const |
Public Member Functions inherited from AMRLevelOp< T > | |
| virtual void | dumpAMR (Vector< T *> &a_data, string name) |
| virtual void | dumpLevel (T &a_data, string name) |
| virtual void | dumpStuff (Vector< T *> data, string filename) |
| 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 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 void | enforceCFConsistency (T &a_coarseCorrection, const T &a_correction) |
| virtual void | dumpAMR (Vector< T *> &a_data, string name) |
| virtual void | dumpLevel (T &a_data, string name) |
| virtual void | dumpStuff (Vector< T *> data, string filename) |
| 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 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 void | enforceCFConsistency (T &a_coarseCorrection, const T &a_correction) |
| MGLevelOp () | |
| virtual void | createCoarser (T &a_coarse, const T &a_fine, bool ghosted)=0 |
| virtual void | relax (T &a_correction, const T &a_residual, int a_iterations)=0 |
| virtual void | relaxNF (T &a_phi, const T *a_phiCoarse, const T &a_rhs, int a_iterations) |
| virtual void | restrictResidual (T &a_resCoarse, T &a_phiFine, const T &a_rhsFine)=0 |
| virtual void | restrictResidual (T &a_resCoarse, T &a_phiFine, const T *a_phiCoarse, const T &a_rhsFine, bool homogeneous) |
| virtual void | restrictR (T &a_phiCoarse, const T &a_phiFine) |
| virtual void | prolongIncrement (T &a_phiThisLevel, const T &a_correctCoarse)=0 |
| void | addObserver (MGLevelOpObserver< T > *a_observer) |
| virtual void | applyOpMg (T &a_lhs, T &a_phi, T *a_phiCoarse, bool a_homogeneous) |
| virtual void | residualNF (T &a_lhs, T &a_phi, const T *a_phiCoarse, const T &a_rhs, bool a_homogeneous=false) |
| void | removeObserver (MGLevelOpObserver< T > *a_observer) |
| void | addCoarserObserver (MGLevelOp< T > *a_operator, int a_coarseningFactor) |
| void | notifyObserversOfChange () |
| virtual void | finerOperatorChanged (const MGLevelOp< T > &a_operator, int a_coarseningFactor) |
| int | numObservers () const |
| virtual void | residual (T &a_lhs, const T &a_phi, const T &a_rhs, bool a_homogeneous=false)=0 |
| virtual void | preCond (T &a_cor, const T &a_residual)=0 |
| virtual void | applyOp (T &a_lhs, const T &a_phi, bool a_homogeneous=false)=0 |
| virtual void | create (T &a_lhs, const T &a_rhs)=0 |
| virtual void | clear (T &a_lhs) |
| virtual void | assign (T &a_lhs, const T &a_rhs)=0 |
| virtual void | assignLocal (T &a_lhs, const T &a_rhs) |
| virtual Real | dotProduct (const T &a_1, const T &a_2)=0 |
| virtual void | mDotProduct (const T &a_1, const int a_sz, const T a_2[], Real a_mdots[]) |
| virtual void | incr (T &a_lhs, const T &a_x, Real a_scale)=0 |
| virtual void | axby (T &a_lhs, const T &a_x, const T &a_y, Real a_a, Real a_b)=0 |
| virtual void | scale (T &a_lhs, const Real &a_scale)=0 |
| virtual Real | norm (const T &a_rhs, int a_ord)=0 |
| virtual void | setToZero (T &a_lhs)=0 |
| virtual void | write (const T *a, const char *filename) |
| MGLevelOpObserver () | |
| virtual void | operatorChanged (const MGLevelOp< T > &a_operator) |
| void | setObservee (MGLevelOp< T > *a_observee) |
| void | clearObservee () |
Operator for doing projector with a variable coefficient.
This is essentially the same as VCAMRPoissonOp2, but allows us to make changes if we want.
|
virtual |
Prolong operation for multigrid.
Transfer data from a coarse grid to a fine grid, doing interpolation as required
Reimplemented from AMRPoissonOp.
1.8.13