Abstract RTE solver class for doing various kinds of radiative transfer equations. This class is a pure class and it is basically just an interface.
More...
|
| RtSolver () |
| Constructor.
|
|
virtual | ~RtSolver () |
| Constructor (does nothing)
|
|
virtual std::string | getName () |
| Get solver name.
|
|
virtual const std::string | getRealm () const |
| Get the realm where the solver lives.
|
|
virtual void | parseOptions ()=0 |
| Parse options.
|
|
virtual void | parseRuntimeOptions ()=0 |
| Parse runtime options.
|
|
virtual bool | advance (const Real a_dt, const bool a_zeroPhi=false) |
| Advance equation one time step.
|
|
virtual bool | advance (const Real a_dt, EBAMRCellData &a_phi, const bool a_zeroPhi=false) |
| Advance method. Advances one time step.
|
|
virtual bool | advance (const Real a_dt, EBAMRCellData &a_phi, const EBAMRCellData &a_source, const bool a_zeroPhi=false)=0 |
| Advance method. Advances one time step.
|
|
virtual void | setRealm (const std::string a_realm) |
| Set realm where this solver lives.
|
|
virtual void | setRtSpecies (const RefCountedPtr< RtSpecies > &a_species) |
| Set the radiative transfer species (RtSpecies)
|
|
virtual void | setComputationalGeometry (const RefCountedPtr< ComputationalGeometry > a_computationalGeometry) |
| Set computational geometry.
|
|
virtual void | computeLoads (Vector< long long > &a_loads, const DisjointBoxLayout &a_dbl, const int a_level) const noexcept |
| Get computational loads for a specific grid level.
|
|
virtual void | setAmr (const RefCountedPtr< AmrMesh > &a_amr) |
| Set the amr object.
|
|
virtual void | setPhase (phase::which_phase a_phase=phase::gas) |
| Set phase.
|
|
virtual void | setVerbosity (const int a_verbosity) |
| Set verbosity.
|
|
virtual void | setTime (const int a_step, const Real a_time, const Real a_dt) |
| Set the time for this solver.
|
|
virtual void | setStationary (const bool a_stationary) |
| Set stationary solver or not.
|
|
virtual void | sanityCheck () |
| Sanity check.
|
|
virtual bool | isStationary () |
| Check if solver is stationary.
|
|
virtual void | computeBoundaryFlux (EBAMRIVData &a_ebFlux, const EBAMRCellData &a_phi)=0 |
| Compute the boundary flux given a state (a_phi will be different for different RTE approximations)
|
|
virtual void | computeDomainFlux (EBAMRIFData &a_domainflux, const EBAMRCellData &a_phi)=0 |
| Compute the domain flux given a state (a_phi will be different for different RTE approximations)
|
|
virtual void | computeFlux (EBAMRCellData &a_flux, const EBAMRCellData &a_phi)=0 |
| Compute the flux.
|
|
virtual void | computeDensity (EBAMRCellData &a_isotropic, const EBAMRCellData &a_phi)=0 |
| Get isotropic part.
|
|
virtual void | allocate ()=0 |
| Allocate internal storage.
|
|
virtual void | deallocate ()=0 |
| Deallocate internal storage.
|
|
virtual void | preRegrid (const int a_lbase, const int a_oldFinestLevel)=0 |
| Perform pre-regrid operations.
|
|
virtual void | regrid (const int a_lmin, const int a_oldFinestLevel, const int a_newFinestLevel)=0 |
| Regrid this solver.
|
|
virtual void | registerOperators ()=0 |
| Register operators.
|
|
virtual void | initialData () |
| Fill solver with initial data. By default, this sets internal data to zero.
|
|
virtual void | setSource (const EBAMRCellData &a_source) |
| Set source term.
|
|
virtual void | setSource (const Real a_source) |
| Set source.
|
|
virtual void | setSource (const std::function< Real(const RealVect a_pos)> a_source) |
| Set source.
|
|
virtual void | writePlotFile ()=0 |
| Write plot file.
|
|
virtual int | getNumberOfPlotVariables () const |
| Get number of output fields.
|
|
virtual Vector< std::string > | getPlotVariableNames () const |
| Get output plot names.
|
|
virtual void | writePlotData (LevelData< EBCellFAB > &a_output, int &a_comp, const std::string a_outputRealm, const int a_level) const noexcept |
| Write output data to a_output.
|
|
virtual Real | getTime () const |
| Get current time.
|
|
virtual phase::which_phase | getPhase () |
| Get the RTE phase.
|
|
virtual EBAMRCellData & | getPhi () |
| Get solver state.
|
|
virtual EBAMRCellData & | getSource () |
| Get multifluid source.
|
|
virtual EBAMRFluxData & | getKappa () |
| Get the absorption length.
|
|
virtual EBAMRIVData & | getKappaEb () |
| Get the absorption coefficient on irregular EB faces.
|
|
virtual RefCountedPtr< RtSpecies > & | getSpecies () |
| Get species.
|
|
Abstract RTE solver class for doing various kinds of radiative transfer equations. This class is a pure class and it is basically just an interface.