|
chombo-discharge
|
Class for holding a set of CdrSolvers. More...
#include <CD_CdrLayout.H>
Public Member Functions | |
| 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. | |
| 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. | |
Protected Attributes | |
| std::string | m_realm |
| Realm where solvers live. | |
| phase::which_phase | m_phase |
| Phase where solvers live. | |
| int | m_verbosity |
| Verbosity. | |
| Vector< RefCountedPtr< CdrSolver > > | m_solvers |
| Solver instantiations. | |
| Vector< RefCountedPtr< CdrSpecies > > | m_species |
| Cdr species. | |
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.
| CdrLayout< T >::CdrLayout | ( | const Vector< RefCountedPtr< CdrSpecies > > & | a_species | ) |
Full constructor, setting the number of solvers to be instantiated.
| [in] | a_species | List of species that defines this solver. |
|
virtual |
Add solver. This appends a_solver to m_solvers.
| [in] | a_solver | Solver to add to the layout. |
Get the time step for explicit advection-diffusion.
Get CFL time for advection.
Get time step for explicit diffusion.
Get phase.
|
virtual |
Get the realm where the Cdr solvers live.
|
virtual |
Get solvers.
|
virtual |
Call preRegrid(...) method for all the CdrSolvers.
| [in] | a_lbase | Coarsest level which changes during regrid |
| [in] | a_oldFinestLevel | Finest level before the regrid (i.e., the current finest level) |
|
virtual |
Regrid method. Calls regrid(...) for every CdrSolver.
| [in] | a_lmin | Coarsest level that changed during the regrid. |
| [in] | a_oldFinestLevel | Finest level before the regrid |
| [in] | a_newFinestLevel | Finest level after the regrid |
|
virtual |
Set the computational geometry for all CdrSolvers.
| [in] | a_computationalGeometry | Computational geometry |
|
virtual |
Set phase.
| [i] | a_phase Phase |
|
virtual |
Set realm for all CdrSolvers.
| [in] | a_realm | Realm name |
|
virtual |
Set time.
| [in] | a_step | Time step |
| [in] | a_time | Time |
| [in] | a_dt | Time increment |
Set verbosity for all CdrSolvers.
| [in] | a_verbosity | Verbosity |