|
Chombo + EB + MF
3.2
|
#include <MFBackwardEuler.H>
Public Member Functions | |
| ~MFBackwardEuler () | |
| MFBackwardEuler (const RefCountedPtr< AMRMultiGrid< LevelData< MFCellFAB > > > &a_solver, const AMRLevelOpFactory< LevelData< MFCellFAB > > &a_factory, const ProblemDomain &a_level0Domain, const Vector< int > &a_refRat, int a_numLevels=-1, int a_verbosity=3) | |
| void | oneStep (Vector< LevelData< MFCellFAB > *> &a_phiNew, Vector< LevelData< MFCellFAB > *> &a_phiOld, Vector< LevelData< MFCellFAB > *> &a_source, const Real &a_dt, int a_lbase, int a_lmax, Real a_told=0, bool a_zeroPhi=true) |
| void | residual (Vector< LevelData< MFCellFAB > * > &a_error, Vector< LevelData< MFCellFAB > * > &a_phiNew, Vector< LevelData< MFCellFAB > * > &a_phiOld, Vector< LevelData< MFCellFAB > * > &a_source, const Real &a_dt, int a_lbase, int a_lmax, Real a_told) |
| void | resetAlphaAndBeta (const Real &a_alpha, const Real &a_beta) |
| void | setTime (Real a_time) |
Protected Member Functions | |
| void | solveHelm (Vector< LevelData< MFCellFAB > * > &a_ans, Vector< LevelData< MFCellFAB > * > &a_rhs, int a_lbase, int a_lmax, Real a_dt, bool a_zeroPhi) |
| void | applyHelm (Vector< LevelData< MFCellFAB > *> &a_ans, Vector< LevelData< MFCellFAB > *> &a_phi, int a_lbase, int a_lmax, Real a_mu, Real a_dt, bool a_homogeneousBC) |
| void | createEulerRHS (Vector< LevelData< MFCellFAB > * > &a_ans, Vector< LevelData< MFCellFAB > * > &a_source, Vector< LevelData< MFCellFAB > * > &a_phiOld, int a_lbase, int a_lmax, Real a_dt) |
| void | createData (Vector< LevelData< MFCellFAB > * > &a_source, int a_lbase, int a_lmax) |
| TGAHelmOp< LevelData< MFCellFAB > > * | newOp (const ProblemDomain &a_indexSpace, const AMRLevelOpFactory< LevelData< MFCellFAB > > &a_opFact) |
Private Member Functions | |
| MFBackwardEuler (const MFBackwardEuler &a_opin) | |
| void | operator= (const MFBackwardEuler &a_opin) |
| MFBackwardEuler () | |
| weak construction is bad. Ref Counted pointers are your friends. More... | |
Private Attributes | |
| Vector< RefCountedPtr< TGAHelmOp< LevelData< MFCellFAB > > > > | m_ops |
| Vector< LevelData< MFCellFAB > *> | m_rhst |
| ProblemDomain | m_level0Domain |
| Vector< int > | m_refRat |
| RefCountedPtr< AMRMultiGrid< LevelData< MFCellFAB > > > | m_solver |
| int | m_verbosity |
| int | m_numLevels |
| bool | m_dataCreated |
Solves dphi/dt = L phi + rho using backward euler. Uses TGAHelmOp functionaltity.
| MFBackwardEuler::~MFBackwardEuler | ( | ) |
| MFBackwardEuler::MFBackwardEuler | ( | const RefCountedPtr< AMRMultiGrid< LevelData< MFCellFAB > > > & | a_solver, |
| const AMRLevelOpFactory< LevelData< MFCellFAB > > & | a_factory, | ||
| const ProblemDomain & | a_level0Domain, | ||
| const Vector< int > & | a_refRat, | ||
| int | a_numLevels = -1, |
||
| int | a_verbosity = 3 |
||
| ) |
|
inlineprivate |
References MayDay::Error().
|
inlineprivate |
weak construction is bad. Ref Counted pointers are your friends.
References MayDay::Error().
| void MFBackwardEuler::oneStep | ( | Vector< LevelData< MFCellFAB > *> & | a_phiNew, |
| Vector< LevelData< MFCellFAB > *> & | a_phiOld, | ||
| Vector< LevelData< MFCellFAB > *> & | a_source, | ||
| const Real & | a_dt, | ||
| int | a_lbase, | ||
| int | a_lmax, | ||
| Real | a_told = 0, |
||
| bool | a_zeroPhi = true |
||
| ) |
This advances a parabolic pde from a_phiOld to a_phiNew using TGA on a non-moving domain with source term a_source
| void MFBackwardEuler::residual | ( | Vector< LevelData< MFCellFAB > * > & | a_error, |
| Vector< LevelData< MFCellFAB > * > & | a_phiNew, | ||
| Vector< LevelData< MFCellFAB > * > & | a_phiOld, | ||
| Vector< LevelData< MFCellFAB > * > & | a_source, | ||
| const Real & | a_dt, | ||
| int | a_lbase, | ||
| int | a_lmax, | ||
| Real | a_told | ||
| ) |
| void MFBackwardEuler::setTime | ( | Real | a_time | ) |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
inlineprivate |
References MayDay::Error().
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
1.8.13