9 #include "computational_cell_2d.hpp" 10 #include "../common/equation_of_state.hpp" 12 #include "../common/riemann_solver.hpp" 15 #include "../../tessellation/tessellation.hpp" 16 #include "../common/hydrodynamics.hpp" 18 #include "../../tessellation/HilbertOrder.hpp" 20 #include "../../misc/utils.hpp" 21 #include "../../misc/cached_lazy_list.hpp" 22 #include "../../misc/lazy_list.hpp" 23 #include "../../misc/universal_error.hpp" 27 #include "../../misc/utils.hpp" 35 #include "edge_velocity_calculator.hpp" 36 #include <boost/container/small_vector.hpp> 37 #include "computational_cell_2d.hpp" 39 #include "../../mpi/ProcessorUpdate.hpp" 56 vector<ComputationalCell> cells_;
58 vector<Extensive> extensives_;
98 const vector<ComputationalCell>&
getAllCells(
void)
const;
163 const vector<ComputationalCell>& init_cond,
173 bool relativistic =
false void makeCheckpoint(ResetDump &checkpoint) const
Dumps simulation data.
const Tessellation & GetProcTessellation(void) const
Returns the processor tessellation.
Outer Boundary Conditions.
Base class for extensive update scheme.
Abstract class for tessellation.
Base class for extensive updater scheme.
Newtonian hydrodynamic simulation.
double getTime(void) const
Returns the time.
Base class for flux calculator.
void recalculatePrimitives(void)
Recalculates the primitives from the extensive variables.
Base class for a scheme to calculate the velocity on the edges.
Abstract class for motion of mesh generating points.
void load(const ResetDump &checkpoint)
Loads reset data into simulation.
const Tessellation & getTessellation(void) const
Returns the tessellation.
void recalculateExtensives(void)
Recalculates extensives (in case computational cells were changed manually)
void setCycle(int cycle)
Sets the cycle.
Time step based on CFL criterion.
TracerStickerNames const & GetTracerStickerNames(void) const
Returns the TracerStickerNames.
Abstract class for external forces.
int getCycle(void) const
Returns the number cycles.
const PhysicalGeometry & getPhysicalGeometry(void) const
Access to physical geometry.
void changePhysicalGeometry(const PhysicalGeometry *pg)
Change the physical geometry.
const CacheData & getCacheData(void) const
Returns reference to the cached data.
Updates the positions of the processes.
Base class for flux calculator.
Base class for equation of state.
Abstract class for source terms.
Base class for cell update scheme.
Container for cache data.
Abstract class for refinement scheme.
const EquationOfState & getEos(void) const
Access to the equation of state.
Abstract class for motion of the mesh generating points.
Base class for cell update scheme.
Class for keeping the names of the tracers and stickers.
void TimeAdvance2MidPointClip(void)
Second order time advance, mid point method with area fix.
void TimeAdvance2MidPoint(void)
Second order time advance, mid point method.
void TimeAdvance(void)
Advances the simulation in time.
Data needed to restart a simulation.
Abstract class for time step function.
Physical geometry of the grid.
Abstract class for coarsening scheme.
~hdsim(void)
Class destructor.
Abstract class for interpolation of the hydrodynamic variables.
Abstract class for geometric boundary conditions for the tessellation.
const vector< ComputationalCell > & getAllCells(void) const
Returns a list of all computational cells.
Geometrical cache data for optimisation.
Spatial distribution for initial conditions.
void TimeAdvanceClip(void)
Advances the simulation in time with area fix.
void setStartTime(double t_start)
Sets the start time.
void TimeAdvance2Heun(void)
Second order time advance.
Base class for physical geometry.
double getCellVolume(size_t index) const
Returns the volume of a certain cell.
const OuterBoundary & getOuterBoundary(void) const
Access to the geometric outer boundary.
void setTimeStepFunction(TimeStepFunction &tsf)
Change the time step function.
Contains data required to restart a simulation run.
const vector< Extensive > & getAllExtensives(void) const
Returns a list of extensive variables.