|
|
| CdrLayout ()=delete |
| | Disallowed weak constructor. Use the full constructor.
|
| |
| | CdrLayout (const Vector< RefCountedPtr< CdrSpecies > > &a_species) |
| | Full constructor, setting the number of solvers to be instantiated.
|
| |
|
virtual | ~CdrLayout () |
| | Destructor.
|
| |
| virtual phase::which_phase | getPhase () const |
| | Get phase.
|
| |
| virtual CdrIterator< T > | iterator () |
| | Get an iterator which can iterate through the various Cdr solvers.
|
| |
| virtual std::string | getRealm () const |
| | Get the realm where the Cdr solvers live.
|
| |
| virtual void | setRealm (const std::string &a_realm) |
| | Set realm for all CdrSolvers.
|
| |
|
virtual void | parseOptions () |
| | Parse class options.
|
| |
|
virtual void | parseRuntimeOptions () |
| | Parse runtime options.
|
| |
| virtual void | addSolver (RefCountedPtr< T > &a_solver) |
| | Add solver. This appends a_solver to m_solvers.
|
| |
|
virtual void | allocate () |
| | Allocate internal storage for solvers.
|
| |
|
virtual void | deallocate () |
| | Deallocate solver internals.
|
| |
| virtual void | preRegrid (const int a_lbase, const int a_oldFinestLevel) |
| | Call preRegrid(...) method for all the CdrSolvers.
|
| |
|
virtual void | initialData () |
| | Initial data. Fill all solvers with initial data.
|
| |
| virtual void | regrid (const int a_lmin, const int a_oldFinestLevel, const int a_newFinestLevel) |
| | Regrid method. Calls regrid(...) for every CdrSolver.
|
| |
|
virtual void | registerOperators () |
| | Register operators.
|
| |
| virtual void | setAmr (const RefCountedPtr< AmrMesh > &a_amrMesh) |
| | Set AmrMesh for all CdrSolvers.
|
| |
| virtual void | setComputationalGeometry (const RefCountedPtr< ComputationalGeometry > &a_computationalGeometry) |
| | Set the computational geometry for all CdrSolvers.
|
| |
| virtual void | setPhase (const phase::which_phase a_phase=phase::gas) |
| | Set phase for all CdrSolvers.
|
| |
| virtual void | setVerbosity (const int a_verbosity) |
| | Set verbosity for all CdrSolvers.
|
| |
| virtual void | setTime (const int a_step, const Real a_time, const Real a_dt) |
| | Set time.
|
| |
|
virtual void | writePlotFile () |
| | Convenience function. All solvers write plot files (for debugging purposes)
|
| |
| virtual Real | computeAdvectionDt () |
| | Get CFL time for advection.
|
| |
| virtual Real | computeDiffusionDt () |
| | Get time step for explicit diffusion.
|
| |
| virtual Real | computeAdvectionDiffusionDt () |
| | Get the time step for explicit advection-diffusion.
|
| |
| virtual Vector< RefCountedPtr< T > > & | getSolvers () |
| | Get solvers.
|
| |
| virtual Vector< RefCountedPtr< CdrSpecies > > & | getSpecies () |
| | Get species.
|
| |
| virtual Vector< EBAMRCellData * > | getSources () |
| | Get all source terms.
|
| |
| virtual Vector< EBAMRCellData * > | getPhis () |
| | Get all cell-centered states.
|
| |
| virtual Vector< EBAMRCellData * > | getVelocities () |
| | Get all cell-centered velocities.
|
| |
| virtual Vector< EBAMRCellData * > | getCellCenteredDiffusionCoefficients () |
| | Get all cell-centered diffusion coefficients.
|
| |
| virtual Vector< EBAMRFluxData * > | getFaceCenteredDiffusionCoefficient () |
| | Get all face-centered diffusion coefficients.
|
| |
| virtual Vector< EBAMRIVData * > | getEbCenteredDiffusionCoefficient () |
| | Get all EB-centered diffusion coefficients.
|
| |
| virtual Vector< EBAMRIVData * > | getEbFlux () |
| | Get all EB flux data holders.
|
| |
| virtual Vector< EBAMRIFData * > | getDomainFlux () |
| | Get domain flux data holders.
|
| |
template<class T>
class CdrLayout< T >
Class for holding a set of CdrSolvers.
This is primarily a utility class that just cuts down on typing when there are multiple species are being advected/diffused. This class simply stores a set of CdrSolvers, and it contains an "iterator" for iterating through them. This is simply meant to cut down on typing. Note that a TimeStepper can keep an instance this class rather than e.g. a Vector<RefCountedPtr<CdrSolver> >, but fundamentally there is no difference between the two. The CdrLayout can be constructed through a factory method, i.e. the user can do a quick-generation of a set of CdrSolvers by using the factory method for instantiating an arbitrary number of CdrSolvers.
- Note
- A separate use case for this is class is that it allows segregation between groups of CdrSolvers that live on different realms and phases.