#include <modusdefault.h>
Base class for Modus classes that provides default function implementations.
This is only a base class for actual Modus classes. Meaning there will never be objects, references, or pointers to ModusDefault. Therefore, it does not have - and will never need any virtual functions.
The rules for adding functions to this class are as follows:
Code that is common to all goes into ExperimentImplementation.
Definition at line 43 of file modusdefault.h.
Classes | |
struct | BadInput |
BadInput is an error to throw if the configuration options are invalid. More... | |
struct | InvalidEnergy |
Thrown when the requested energy is smaller than the masses of two particles. More... | |
Public Member Functions | |
int | impose_boundary_conditions (Particles *, const OutputsList &={}) |
Enforces sensible positions for the particles. More... | |
bool | is_collider () const |
bool | is_box () const |
bool | is_list () const |
bool | is_sphere () const |
double | sqrt_s_NN () const |
double | impact_parameter () const |
void | sample_impact () const |
sample impact parameter for collider modus More... | |
double | velocity_projectile () const |
double | velocity_target () const |
FermiMotion | fermi_motion () const |
double | max_timestep (double) const |
double | equilibration_time () const |
double | length () const |
double | radius () const |
bool | calculation_frame_is_fixed_target () const |
double | nuclei_passing_time () const |
Get the passing time of the two nuclei in a collision. More... | |
Grid< GridOptions::Normal > | create_grid (const Particles &particles, double min_cell_length, double timestep_duration, CollisionCriterion crit, const bool include_unformed_particles, CellSizeStrategy strategy=CellSizeStrategy::Optimal) const |
Creates the Grid with normal boundary conditions. More... | |
std::unique_ptr< GrandCanThermalizer > | create_grandcan_thermalizer (Configuration &conf) const |
Creates GrandCanThermalizer. More... | |
|
inline |
Enforces sensible positions for the particles.
Currently, this is only needed for BoxModus; the other Modi do nothing.
Definition at line 58 of file modusdefault.h.
|
inline |
Definition at line 64 of file modusdefault.h.
|
inline |
Definition at line 66 of file modusdefault.h.
|
inline |
Definition at line 68 of file modusdefault.h.
|
inline |
Definition at line 70 of file modusdefault.h.
|
inline |
Definition at line 72 of file modusdefault.h.
|
inline |
Definition at line 74 of file modusdefault.h.
|
inline |
|
inline |
Definition at line 79 of file modusdefault.h.
|
inline |
Definition at line 82 of file modusdefault.h.
|
inline |
Definition at line 85 of file modusdefault.h.
|
inline |
Definition at line 87 of file modusdefault.h.
|
inline |
Definition at line 89 of file modusdefault.h.
|
inline |
Definition at line 91 of file modusdefault.h.
|
inline |
Definition at line 93 of file modusdefault.h.
|
inline |
Definition at line 96 of file modusdefault.h.
|
inline |
Get the passing time of the two nuclei in a collision.
This time corresponds to the moment when the nuclei have just passed entirely through each other and all primary collisions have occured. Formula taken from: Eq. (1) in Karpenko:2015xea [29]
Only used in ColliderModus for IC output.
Definition at line 106 of file modusdefault.h.
|
inline |
Creates the Grid with normal boundary conditions.
[in] | particles | The Particles object containing all particles of the currently running Experiment. |
[in] | min_cell_length | The minimal length of the grid cells. |
[in] | timestep_duration | Duration of the timestep. It is necessary for formation times treatment: if particle is fully or partially formed before the end of the timestep, it has to be on the grid. |
[in] | crit | Collision criterion (decides if cell number can be limited) |
[in] | include_unformed_particles | include unformed particles from the grid (worsens runtime, necessary for IC output) |
[in] | strategy | The strategy to determine the cell size |
Definition at line 126 of file modusdefault.h.
|
inline |
Creates GrandCanThermalizer.
[in] | conf | configuration object |
Definition at line 149 of file modusdefault.h.