23#include <CD_NamespaceHeader.H>
30 CH_TIME(
"RadiativeTransferStepper::RadiativeTransferStepper");
46 CH_TIME(
"RadiativeTransferStepper::~RadiativeTransferStepper");
48 pout() <<
"RadiativeTransferStepper::~RadiativeTransferStepper" <<
endl;
56 CH_TIME(
"RadiativeTransferStepper::setupSolvers");
58 pout() <<
"RadiativeTransferStepper::setupSolvers" <<
endl;
66 m_solver->setRtSpecies(m_species);
67 m_solver->parseOptions();
68 m_solver->setPhase(phase::gas);
69 m_solver->setAmr(
m_amr);
78 CH_TIME(
"RadiativeTransferStepper::parseRuntimeOptions");
80 pout() <<
"RadiativeTransferStepper::parseRuntimeOptions" <<
endl;
95 CH_TIME(
"RadiativeTransferStepper::allocate");
97 pout() <<
"RadiativeTransferStepper::allocate" <<
endl;
100 m_solver->allocate();
107 CH_TIME(
"RadiativeTransferStepper::initialData");
109 pout() <<
"RadiativeTransferStepper::initialData" <<
endl;
112 m_solver->initialData();
113 this->setGaussianSource();
115 if (m_solver->isStationary()) {
116 m_solver->advance(0.0,
false);
124 CH_TIME(
"RadiativeTransferStepper::postInitialize");
126 pout() <<
"RadiativeTransferStepper::postInitialize" <<
endl;
134 CH_TIME(
"RadiativeTransferStepper::forceDt");
136 pout() <<
"RadiativeTransferStepper::forceDt" <<
endl;
147 CH_TIME(
"RadiativeTransferStepper::writeCheckpointData");
149 pout() <<
"RadiativeTransferStepper::writeCheckpointData" <<
endl;
161 CH_TIME(
"RadiativeTransferStepper::readCheckpointData");
163 pout() <<
"RadiativeTransferStepper::readCheckpointData" <<
endl;
174 CH_TIME(
"RadiativeTransferStepper::postCheckpointSetup");
176 pout() <<
"RadiativeTransferStepper::postCheckpointSetup" <<
endl;
179 this->setGaussianSource();
186 CH_TIME(
"RadiativeTransferStepper::getNumberOfPlotVariables");
188 pout() <<
"RadiativeTransferStepper::getNumberOfPlotVariables" <<
endl;
191 return m_solver->getNumberOfPlotVariables();
198 CH_TIME(
"RadiativeTransferStepper::getPlotVariableNames");
200 pout() <<
"RadiativeTransferStepper::getPlotVariableNames" <<
endl;
203 return m_solver->getPlotVariableNames();
213 CH_TIME(
"RadiativeTransferStepper::writePlotData");
215 pout() <<
"RadiativeTransferStepper::writePlotData" <<
endl;
225 CH_TIME(
"RadiativeTransferStepper::computeDt");
227 pout() <<
"RadiativeTransferStepper::computeDt" <<
endl;
232 if (m_forceDt > 0.0) {
243 CH_TIME(
"RadiativeTransferStepper::advance");
245 pout() <<
"RadiativeTransferStepper::advance" <<
endl;
248 m_solver->advance(
a_dt);
257 CH_TIME(
"RadiativeTransferStepper::synchronizeSolverTimes");
259 pout() <<
"RadiativeTransferStepper::synchronizeSolverTimes" <<
endl;
273 CH_TIME(
"RadiativeTransferStepper::printStepReport");
275 pout() <<
"RadiativeTransferStepper::printStepReport" <<
endl;
283 CH_TIME(
"RadiativeTransferStepper::registerRealms");
285 pout() <<
"RadiativeTransferStepper::registerRealms" <<
endl;
295 CH_TIME(
"RadiativeTransferStepper::registerOperators");
297 pout() <<
"RadiativeTransferStepper::registerOperators" <<
endl;
300 m_solver->registerOperators();
307 CH_TIME(
"RadiativeTransferStepper::preRegrid");
309 pout() <<
"RadiativeTransferStepper::preRegrid" <<
endl;
319 CH_TIME(
"RadiativeTransferStepper::regrid");
321 pout() <<
"RadiativeTransferStepper::regrid" <<
endl;
331 CH_TIME(
"RadiativeTransferStepper::postRegrid");
333 pout() <<
"RadiativeTransferStepper::postRegrid" <<
endl;
336 this->setGaussianSource();
343 CH_TIME(
"RadiativeTransferStepper::getPhi");
345 pout() <<
"RadiativeTransferStepper::getPhi" <<
endl;
348 return m_solver->getPhi();
355 CH_TIME(
"RadiativeTransferStepper::setGaussianSource");
357 pout() <<
"RadiativeTransferStepper::setGaussianSource" <<
endl;
381#include <CD_NamespaceFooter.H>
Simple species for Physics/RadiativeTransfer.
TimeStepper class for only evolving radiative transfer modules.
Implementation of RtSpecies for usage in RadiativeTransfer module.
Definition CD_RadiativeTransferSpecies.H:28
Implementation of TimeStepper for solving for a single radiative transfer species....
Definition CD_RadiativeTransferStepper.H:33
void registerOperators() override
Register operators – calls the solver registration routine.
Definition CD_RadiativeTransferStepperImplem.H:293
void postCheckpointSetup() override
Perform post-checkpoint setup routines (sets the source in the solver)
Definition CD_RadiativeTransferStepperImplem.H:172
void registerRealms() override
Register realms.
Definition CD_RadiativeTransferStepperImplem.H:281
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:317
void allocate() override
Allocate necessary memory for solvers.
Definition CD_RadiativeTransferStepperImplem.H:93
RadiativeTransferStepper()
Constructor. Reads a couple of input options.
Definition CD_RadiativeTransferStepperImplem.H:28
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:208
void postInitialize() override
Post-initialization functionality – sets the source term.
Definition CD_RadiativeTransferStepperImplem.H:122
Real advance(const Real a_dt) override
Advancement method. Calls the solver function.
Definition CD_RadiativeTransferStepperImplem.H:241
Vector< std::string > getPlotVariableNames() const override
Get plot variable names.
Definition CD_RadiativeTransferStepperImplem.H:196
int getNumberOfPlotVariables() const override
Get number of plot variables for this physics module.
Definition CD_RadiativeTransferStepperImplem.H:184
void preRegrid(const int a_lmin, const int a_oldFinestLevel) override
Perform pre-regrid operations – calls the solver function. operation takes a lot of memory.
Definition CD_RadiativeTransferStepperImplem.H:305
void parseRuntimeOptions() override
Parse runtime options.
Definition CD_RadiativeTransferStepperImplem.H:76
Real computeDt() override
Compute a time step to be used by Driver.
Definition CD_RadiativeTransferStepperImplem.H:223
void setGaussianSource()
For setting a Gaussian source in the radiative transfer equation solver.
Definition CD_RadiativeTransferStepperImplem.H:353
void forceDt(const Real a_dt)
Force usage of a time step.
Definition CD_RadiativeTransferStepperImplem.H:132
void printStepReport() override
Print a step report (does nothing)
Definition CD_RadiativeTransferStepperImplem.H:271
void setupSolvers() override
Set up the solver.
Definition CD_RadiativeTransferStepperImplem.H:54
void postRegrid() override
Post-regrid function. Sets a Gaussian source.
Definition CD_RadiativeTransferStepperImplem.H:329
void initialData() override
Fill simulation with initial data.
Definition CD_RadiativeTransferStepperImplem.H:105
void synchronizeSolverTimes(const int a_step, const Real a_time, const Real a_dt) override
Synchronzie solver times and time steps.
Definition CD_RadiativeTransferStepperImplem.H:255
virtual ~RadiativeTransferStepper()
Destructor (does nothing)
Definition CD_RadiativeTransferStepperImplem.H:44
const EBAMRCellData & getPhi() const
Get the solver solution.
Definition CD_RadiativeTransferStepperImplem.H:341
Base class for a tracer particle solver. This solver can advance particles in a pre-defined velocity ...
Definition CD_TracerParticleSolver.H:37
TracerParticleSolver()
Default constructor.
Definition CD_TracerParticleSolverImplem.H:25
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:256
std::string m_realm
Realm where this solver lives.
Definition CD_TracerParticleSolver.H:345
int m_verbosity
Verbosity level.
Definition CD_TracerParticleSolver.H:380
RefCountedPtr< AmrMesh > m_amr
Handle to AMR mesh.
Definition CD_TracerParticleSolver.H:320
RefCountedPtr< ComputationalGeometry > m_computationalGeometry
Handle to computational geometry.
Definition CD_TracerParticleSolver.H:325
virtual void parseRuntimeOptions()
Parse solver run-time options.
Definition CD_TracerParticleSolverImplem.H:76
Real m_dt
Time step.
Definition CD_TracerParticleSolver.H:365
int m_timeStep
Time step.
Definition CD_TracerParticleSolver.H:375
Real m_time
Time.
Definition CD_TracerParticleSolver.H:370
Namespace for encapsulating the radiative transfer physics module.
Definition CD_RadiativeTransferSpecies.H:21