13#ifndef CD_RTLAYOUTIMPLEM_H
14#define CD_RTLAYOUTIMPLEM_H
22#include <CD_NamespaceHeader.H>
27 CH_TIME(
"RtLayout<T>::RtLayout(Vector)");
38 CH_TIME(
"RtLayout<T>::~RtLayout");
77 CH_TIME(
"RtLayout<T>::parseOptions");
79 pout() <<
"RtLayout<T>::parseOptions" <<
endl;
92 CH_TIME(
"RtLayout<T>::parseRuntimeOptions");
94 pout() <<
"RtLayout<T>::parseRuntimeOptions" <<
endl;
107 CH_TIME(
"RtLayout<T>::allocate");
109 pout() <<
"RtLayout<T>::allocate" <<
endl;
122 CH_TIME(
"RtLayout<T>::preRegrid");
124 pout() <<
"RtLayout<T>::preRegrid" <<
endl;
137 CH_TIME(
"RtLayout<T>::deallocate");
139 pout() <<
"RtLayout<T>::deallocate" <<
endl;
152 CH_TIME(
"RtLayout<T>::setAmr");
154 pout() <<
"RtLayout<T>::setAmr" <<
endl;
167 CH_TIME(
"RtLayout<T>::setComputationalGeometry");
169 pout() <<
"RtLayout<T>::setComputationalGeometry" <<
endl;
182 CH_TIME(
"RtLayout<T>::setPhase");
184 pout() <<
"RtLayout<T>::setPhase" <<
endl;
199 CH_TIME(
"RtLayout<T>::setVerbosity");
203 pout() <<
"RtLayout<T>::setVerbosity" <<
endl;
216 CH_TIME(
"RtLayout<T>::sanityCheck");
218 pout() <<
"RtLayout<T>::sanityCheck" <<
endl;
231 CH_TIME(
"RtLayout<T>::setTime");
233 pout() <<
"RtLayout<T>::setTime" <<
endl;
246 CH_TIME(
"RtLayout<T>::regrid");
248 pout() <<
"RtLayout<T>::regrid" <<
endl;
261 CH_TIME(
"RtLayout<T>::registerOperators");
263 pout() <<
"RtLayout<T>::registerOperators" <<
endl;
276 CH_TIME(
"RtLayout<T>::setSource(ebamrcell)");
278 pout() <<
"RtLayout<T>::setSource(ebamrcell)" <<
endl;
291 CH_TIME(
"RtLayout<T>::setSource(constant)");
293 pout() <<
"RtLayout<T>::setSource(constant)" <<
endl;
306 CH_TIME(
"RtLayout<T>::setStationary");
308 pout() <<
"RtLayout<T>::setStationary" <<
endl;
321 CH_TIME(
"RtLayout<T>::writePlotFile");
323 pout() <<
"RtLayout<T>::writePlotFile" <<
endl;
336 CH_TIME(
"RtLayout<T>::advance");
338 pout() <<
"RtLayout<T>::advance" <<
endl;
351 CH_TIME(
"RtLayout<T>::initialData");
353 pout() <<
"RtLayout<T>::initialData" <<
endl;
366 CH_TIME(
"RtLayout<T>::isStationary");
368 pout() <<
"RtLayout<T>::isStationary" <<
endl;
376 if (
solver->isStationary() ==
false) {
388 CH_TIME(
"RtLayout<T>::getPhase");
390 pout() <<
"RtLayout<T>::getPhase" <<
endl;
414 CH_TIME(
"RtLayout<T>::getSources");
416 pout() <<
"RtLayout<T>::getSources" <<
endl;
433 CH_TIME(
"RtLayout<T>::getPhis");
435 pout() <<
"RtLayout<T>::getPhis" <<
endl;
448template <
class T,
class S>
452template <
class T,
class S>
456template <
class T,
class S>
476#include <CD_NamespaceFooter.H>
Iterator class for RtLayout.
Declaration of a class that holds a set of RtSolvers.
RefCountedPtr< RtLayout< T > > newLayout(const Vector< RefCountedPtr< RtSpecies > > &a_species) const
Get a new Layout. This will cast S to a specific class (T)
Definition CD_RtLayoutImplem.H:458
~RtFactory()
Destructor (does nothing)
Definition CD_RtLayoutImplem.H:453
RtFactory()
Constructor (does nothing)
Definition CD_RtLayoutImplem.H:449
virtual void setVerbosity(const int a_verbosity)
Set verbosity.
Definition CD_RtLayoutImplem.H:197
virtual void setComputationalGeometry(const RefCountedPtr< ComputationalGeometry > &a_computationalGeometry)
Set the computational geometry.
Definition CD_RtLayoutImplem.H:165
virtual const std::string getRealm() const
Get realm where the solvers are allocated.
Definition CD_RtLayoutImplem.H:50
virtual Vector< RefCountedPtr< T > > & getSolvers()
Get solvers.
Definition CD_RtLayoutImplem.H:398
virtual void parseOptions()
Parse options.
Definition CD_RtLayoutImplem.H:75
virtual void setStationary(const bool a_stationary)
Turn on/off stationary.
Definition CD_RtLayoutImplem.H:304
virtual void sanityCheck()
Do a sanity check.
Definition CD_RtLayoutImplem.H:214
virtual void setTime(const int a_step, const Real a_time, const Real a_dt)
Set time.
Definition CD_RtLayoutImplem.H:229
virtual void setRealm(const std::string &a_realm)
Set realm for solvers.
Definition CD_RtLayoutImplem.H:57
virtual Vector< EBAMRCellData * > getSources()
Get all source terms.
Definition CD_RtLayoutImplem.H:412
virtual void registerOperators()
Register operators.
Definition CD_RtLayoutImplem.H:259
virtual void setSource(const EBAMRCellData &a_source)
Convenience function. Set source terms for all species. Mostly used for debugging.
Definition CD_RtLayoutImplem.H:274
virtual bool isStationary()
Check if solvers are stationary.
Definition CD_RtLayoutImplem.H:364
virtual Vector< EBAMRCellData * > getPhis()
Get all states.
Definition CD_RtLayoutImplem.H:431
virtual void deallocate()
Deallocate internal storage for solvers.
Definition CD_RtLayoutImplem.H:135
virtual void setAmr(const RefCountedPtr< AmrMesh > &a_amr)
Set amr.
Definition CD_RtLayoutImplem.H:150
virtual void regrid(const int a_lmin, const int a_oldFinestLevel, const int a_newFinestLevel)
Regrid all solvers.
Definition CD_RtLayoutImplem.H:244
virtual void addSolver(RefCountedPtr< T > a_solver)
Add a new solver to the solver layout.
Definition CD_RtLayoutImplem.H:68
virtual void parseRuntimeOptions()
Parse runtime options.
Definition CD_RtLayoutImplem.H:90
virtual Vector< RefCountedPtr< RtSpecies > > & getSpecies()
Get species.
Definition CD_RtLayoutImplem.H:405
virtual RtIterator< T > iterator()
Get iterator.
Definition CD_RtLayoutImplem.H:43
RtLayout(const Vector< RefCountedPtr< RtSpecies > > &a_RtSpecies)
Full constructor.
Definition CD_RtLayoutImplem.H:25
virtual ~RtLayout()
Destructor (does nothing)
Definition CD_RtLayoutImplem.H:36
virtual void writePlotFile()
Convenience function. All solvers write plot files.
Definition CD_RtLayoutImplem.H:319
virtual void preRegrid(const int a_base, const int a_oldFinestLevel)
Pre regrid stuff.
Definition CD_RtLayoutImplem.H:120
virtual void initialData()
Fill with initial data.
Definition CD_RtLayoutImplem.H:349
virtual void advance(const Real a_dt)
Convenience function. Call advance method for each solver.
Definition CD_RtLayoutImplem.H:334
virtual phase::which_phase getPhase()
Get phase.
Definition CD_RtLayoutImplem.H:386
virtual void allocate()
Allocate internal storage for solvers.
Definition CD_RtLayoutImplem.H:105
virtual void setPhase(phase::which_phase a_phase=phase::gas)
Set phase.
Definition CD_RtLayoutImplem.H:180
Base class for a tracer particle solver. This solver can advance particles in a pre-defined velocity ...
Definition CD_TracerParticleSolver.H:38
virtual void setRealm(const std::string &a_realm)
Set the solver realm.
Definition CD_TracerParticleSolverImplem.H:233
virtual void registerOperators() const
Register operators needed for AMR core functionality.
Definition CD_TracerParticleSolverImplem.H:177
phase::which_phase m_phase
Phase where this solver lives.
Definition CD_TracerParticleSolver.H:367
TracerParticleSolver()
Default constructor.
Definition CD_TracerParticleSolverImplem.H:26
virtual void setTime(const int a_step, const Real a_time, const Real a_dt)
Set the time for this solver.
Definition CD_TracerParticleSolverImplem.H:257
std::string m_realm
Realm where this solver lives.
Definition CD_TracerParticleSolver.H:352
virtual void preRegrid(const int a_lbase, const int a_oldFinestLevel)
Perform pre-regrid operations.
Definition CD_TracerParticleSolverImplem.H:307
int m_verbosity
Verbosity level.
Definition CD_TracerParticleSolver.H:387
virtual void parseRuntimeOptions()
Parse solver run-time options.
Definition CD_TracerParticleSolverImplem.H:77
virtual void writePlotFile()
Write plot file.
Definition CD_TracerParticleSolverImplem.H:410
virtual void setPhase(const phase::which_phase &a_phase)
Set the solver phase.
Definition CD_TracerParticleSolverImplem.H:245
virtual void allocate()
Allocate storage for this solver.
Definition CD_TracerParticleSolverImplem.H:195
virtual void setComputationalGeometry(const RefCountedPtr< ComputationalGeometry > &a_compGeom)
Set the computational geometry.
Definition CD_TracerParticleSolverImplem.H:283
virtual void regrid(const int a_lmin, const int a_oldFinestLevel, const int a_newFinestLevel)
Regrid this solver.
Definition CD_TracerParticleSolverImplem.H:322
virtual void parseOptions()
Parse solver options.
Definition CD_TracerParticleSolverImplem.H:63
virtual void setAmr(const RefCountedPtr< AmrMesh > &a_amrMesh)
Set AmrMesh.
Definition CD_TracerParticleSolverImplem.H:271
which_phase
Enumeration of supported phases.
Definition CD_MultiFluidIndexSpace.H:38
@ gas
Gas phase.
Definition CD_MultiFluidIndexSpace.H:39