|
criptic v1
Cosmic Ray Interstellar Propagation Tool using Itô Calculus
|
Gas model stored with snapshots. More...
#include <TimeInterp.H>
Public Member Functions | |
| TimeInterp (const ParmParser &pp, const Geometry &geom_, const IdxType nBB, const int nGhost, std::vector< Real > TBB_={}, std::vector< Real > WBB_={}) | |
| Constructor. | |
| virtual | ~TimeInterp () |
| Destructor. | |
| virtual GasData | gasData (const RealVec &x, const Real t) const override |
| Return background gas state. | |
| virtual Real | dxGhost () const override |
| Size of the ghost region in the gas data. | |
| void | updateState (const Real t, Real &tNext) |
| Update the gas data. | |
Public Member Functions inherited from criptic::gas::Gas | |
| virtual | ~Gas () |
| Empty virtual destructor. | |
| virtual void | frame (const RealVec &x, const Real t, RealVec &v, TNBBasis &tnb) const |
| Compute the comoving TNB frame for the gas. | |
Static Public Member Functions | |
| static std::vector< std::string > | sortSnapFiles (std::vector< std::string > files, std::vector< Real > times) |
| Sort snapshot files by their associated times. | |
Protected Attributes | |
| std::vector< Real > | tSlice |
| std::vector< std::string > | snapFiles |
| IdxType | tPtr |
| Real | hLim |
| int | leafSize |
| bool | uniformRadField |
| std::vector< Real > | TBB |
| std::vector< Real > | WBB |
Private Attributes | |
| int | verbosity |
| T * | gasOld |
| T * | gasNew |
| bool | dataLoaded |
Gas model stored with snapshots.
| T | the gas class which each snapshot is described as |
This template class provides the ability to describe a gas whose properties are specified on a series of files that represent distinct snapshots in time. The snapshots are stored on disk, and read into memory only as necessary. This is a template class, so the user must implement a Gas class to describe a single snapshot file and define the necessary methods on the Gas class to use in TimeInterp.
|
inline |
Constructor.
| pp | criptic::ParmParser object containing the input deck |
| geom_ | criptic::Geometry object describing problem geometry |
| nBB | Number of blackbody radiation components |
| nGhost | Number of ghost zones to add to grid |
| TBB_ | Temperature of uniform blackbody radiation field |
| WBB_ | Dilution factor of uniform blackbody radiation field |
|
inlinevirtual |
Destructor.
|
inlineoverridevirtual |
Size of the ghost region in the gas data.
This returns the physical size of the ghost region.
Reimplemented from criptic::gas::Gas.
|
inlineoverridevirtual |
Return background gas state.
| x | Position |
| t | Time |
This method return the GasData describing the gas at the input (x, t).
Implements criptic::gas::Gas.
|
inlinestatic |
Sort snapshot files by their associated times.
| files | vector<string> of filenames |
| times | vector<Real> of snapshot times |
|
inlinevirtual |
Update the gas data.
| t | Current time |
| tNext | Next time |
This function is called at the start of every time step, and is responsible for loading new snapshots into memory when required. T::loadData must be defined for this to work.
Reimplemented from criptic::gas::Gas.
|
private |
Have data been loaded yet?
|
private |
Pointer to new gas snapshot
|
private |
Pointer to old gas snapshot
|
protected |
Maximum smoothing length in particle trees
|
protected |
Particle tree leaf size
|
protected |
Snapshot filenames
|
protected |
Uniform blackbody tmperatures
|
protected |
Pointer to current snapshot
|
protected |
Times of snapshots
|
protected |
Check if radiation field info is supplied
|
private |
Verbosity level
|
protected |
Uniform blackbody dilution factors