24#include <CD_NamespaceHeader.H>
31 CH_TIME(
"RadiativeTransferStepper::RadiativeTransferStepper");
47 CH_TIME(
"RadiativeTransferStepper::~RadiativeTransferStepper");
49 pout() <<
"RadiativeTransferStepper::~RadiativeTransferStepper" <<
endl;
57 CH_TIME(
"RadiativeTransferStepper::setupSolvers");
59 pout() <<
"RadiativeTransferStepper::setupSolvers" <<
endl;
67 m_solver->setRtSpecies(m_species);
68 m_solver->parseOptions();
70 m_solver->setAmr(
m_amr);
79 CH_TIME(
"RadiativeTransferStepper::parseRuntimeOptions");
81 pout() <<
"RadiativeTransferStepper::parseRuntimeOptions" <<
endl;
96 CH_TIME(
"RadiativeTransferStepper::allocate");
98 pout() <<
"RadiativeTransferStepper::allocate" <<
endl;
101 m_solver->allocate();
108 CH_TIME(
"RadiativeTransferStepper::initialData");
110 pout() <<
"RadiativeTransferStepper::initialData" <<
endl;
113 m_solver->initialData();
114 this->setGaussianSource();
116 if (m_solver->isStationary()) {
117 m_solver->advance(0.0,
false);
125 CH_TIME(
"RadiativeTransferStepper::postInitialize");
127 pout() <<
"RadiativeTransferStepper::postInitialize" <<
endl;
135 CH_TIME(
"RadiativeTransferStepper::forceDt");
137 pout() <<
"RadiativeTransferStepper::forceDt" <<
endl;
148 CH_TIME(
"RadiativeTransferStepper::writeCheckpointData");
150 pout() <<
"RadiativeTransferStepper::writeCheckpointData" <<
endl;
162 CH_TIME(
"RadiativeTransferStepper::readCheckpointData");
164 pout() <<
"RadiativeTransferStepper::readCheckpointData" <<
endl;
175 CH_TIME(
"RadiativeTransferStepper::postCheckpointSetup");
177 pout() <<
"RadiativeTransferStepper::postCheckpointSetup" <<
endl;
180 this->setGaussianSource();
187 CH_TIME(
"RadiativeTransferStepper::getNumberOfPlotVariables");
189 pout() <<
"RadiativeTransferStepper::getNumberOfPlotVariables" <<
endl;
192 return m_solver->getNumberOfPlotVariables();
199 CH_TIME(
"RadiativeTransferStepper::getPlotVariableNames");
201 pout() <<
"RadiativeTransferStepper::getPlotVariableNames" <<
endl;
204 return m_solver->getPlotVariableNames();
214 CH_TIME(
"RadiativeTransferStepper::writePlotData");
216 pout() <<
"RadiativeTransferStepper::writePlotData" <<
endl;
226 CH_TIME(
"RadiativeTransferStepper::computeDt");
228 pout() <<
"RadiativeTransferStepper::computeDt" <<
endl;
233 if (m_forceDt > 0.0) {
244 CH_TIME(
"RadiativeTransferStepper::advance");
246 pout() <<
"RadiativeTransferStepper::advance" <<
endl;
249 m_solver->advance(
a_dt);
258 CH_TIME(
"RadiativeTransferStepper::synchronizeSolverTimes");
260 pout() <<
"RadiativeTransferStepper::synchronizeSolverTimes" <<
endl;
274 CH_TIME(
"RadiativeTransferStepper::printStepReport");
276 pout() <<
"RadiativeTransferStepper::printStepReport" <<
endl;
284 CH_TIME(
"RadiativeTransferStepper::registerRealms");
286 pout() <<
"RadiativeTransferStepper::registerRealms" <<
endl;
296 CH_TIME(
"RadiativeTransferStepper::registerOperators");
298 pout() <<
"RadiativeTransferStepper::registerOperators" <<
endl;
301 m_solver->registerOperators();
308 CH_TIME(
"RadiativeTransferStepper::preRegrid");
310 pout() <<
"RadiativeTransferStepper::preRegrid" <<
endl;
320 CH_TIME(
"RadiativeTransferStepper::regrid");
322 pout() <<
"RadiativeTransferStepper::regrid" <<
endl;
332 CH_TIME(
"RadiativeTransferStepper::postRegrid");
334 pout() <<
"RadiativeTransferStepper::postRegrid" <<
endl;
337 this->setGaussianSource();
344 CH_TIME(
"RadiativeTransferStepper::getPhi");
346 pout() <<
"RadiativeTransferStepper::getPhi" <<
endl;
349 return m_solver->getPhi();
356 CH_TIME(
"RadiativeTransferStepper::setGaussianSource");
358 pout() <<
"RadiativeTransferStepper::setGaussianSource" <<
endl;
382#include <CD_NamespaceFooter.H>
Declaration of the Physics::RadiativeTransfer::RadiativeTransferSpecies RtSpecies.
Declaration of the Physics::RadiativeTransfer::RadiativeTransferStepper TimeStepper.
Implementation of RtSpecies for usage in RadiativeTransfer module.
Definition CD_RadiativeTransferSpecies.H:28
TimeStepper for advancing a single radiative transfer species on an AMR mesh.
Definition CD_RadiativeTransferStepper.H:37
void registerOperators() override
Register operators – calls the solver registration routine.
Definition CD_RadiativeTransferStepperImplem.H:294
void postCheckpointSetup() override
Perform post-checkpoint setup routines (sets the source in the solver)
Definition CD_RadiativeTransferStepperImplem.H:173
void registerRealms() override
Register realms.
Definition CD_RadiativeTransferStepperImplem.H:282
void regrid(const int a_lmin, const int a_oldFinestLevel, const int a_newFinestLevel) override
Regrid function. Calls the solver function.
Definition CD_RadiativeTransferStepperImplem.H:318
void allocate() override
Allocate necessary memory for solvers.
Definition CD_RadiativeTransferStepperImplem.H:94
RadiativeTransferStepper()
Constructor. Reads a couple of input options.
Definition CD_RadiativeTransferStepperImplem.H:29
void postInitialize() override
Post-initialization functionality – sets the source term.
Definition CD_RadiativeTransferStepperImplem.H:123
Real advance(const Real a_dt) override
Advancement method. Calls the solver function.
Definition CD_RadiativeTransferStepperImplem.H:242
Vector< std::string > getPlotVariableNames() const override
Get plot variable names.
Definition CD_RadiativeTransferStepperImplem.H:197
int getNumberOfPlotVariables() const override
Get number of plot variables for this physics module.
Definition CD_RadiativeTransferStepperImplem.H:185
void preRegrid(const int a_lmin, const int a_oldFinestLevel) override
Perform pre-regrid operations — calls the solver function.
Definition CD_RadiativeTransferStepperImplem.H:306
void parseRuntimeOptions() override
Parse runtime options.
Definition CD_RadiativeTransferStepperImplem.H:77
Real computeDt() override
Compute a time step to be used by Driver.
Definition CD_RadiativeTransferStepperImplem.H:224
void setGaussianSource()
Set a Gaussian source term in the RtSolver.
Definition CD_RadiativeTransferStepperImplem.H:354
void forceDt(const Real a_dt)
Force usage of a time step.
Definition CD_RadiativeTransferStepperImplem.H:133
void writePlotData(LevelData< EBCellFAB > &a_output, int &a_icomp, const std::string &a_outputRealm, const int a_level) const override
Write plot data to output holder.
Definition CD_RadiativeTransferStepperImplem.H:209
void printStepReport() override
Print a step report (does nothing)
Definition CD_RadiativeTransferStepperImplem.H:272
void setupSolvers() override
Set up the solver.
Definition CD_RadiativeTransferStepperImplem.H:55
void postRegrid() override
Post-regrid function. Sets a Gaussian source.
Definition CD_RadiativeTransferStepperImplem.H:330
void initialData() override
Fill simulation with initial data.
Definition CD_RadiativeTransferStepperImplem.H:106
void synchronizeSolverTimes(const int a_step, const Real a_time, const Real a_dt) override
Synchronize solver times and time steps.
Definition CD_RadiativeTransferStepperImplem.H:256
virtual ~RadiativeTransferStepper()
Destructor (does nothing)
Definition CD_RadiativeTransferStepperImplem.H:45
const EBAMRCellData & getPhi() const
Get the solver solution.
Definition CD_RadiativeTransferStepperImplem.H:342
Base class for a tracer particle solver. This solver can advance particles in a pre-defined velocity ...
Definition CD_TracerParticleSolver.H:38
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
int m_verbosity
Verbosity level.
Definition CD_TracerParticleSolver.H:387
RefCountedPtr< AmrMesh > m_amr
Handle to AMR mesh.
Definition CD_TracerParticleSolver.H:327
RefCountedPtr< ComputationalGeometry > m_computationalGeometry
Handle to computational geometry.
Definition CD_TracerParticleSolver.H:332
virtual void parseRuntimeOptions()
Parse solver run-time options.
Definition CD_TracerParticleSolverImplem.H:77
Real m_dt
Time step.
Definition CD_TracerParticleSolver.H:372
int m_timeStep
Time step.
Definition CD_TracerParticleSolver.H:382
Real m_time
Time.
Definition CD_TracerParticleSolver.H:377
Namespace for encapsulating the radiative transfer physics module.
Definition CD_RadiativeTransferSpecies.H:21
@ gas
Gas phase.
Definition CD_MultiFluidIndexSpace.H:39