#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:
Definition at line 44 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... | |
int | total_N_number () const |
int | proj_N_number () const |
bool | cll_in_nucleus () const |
bool | is_collider () const |
bool | is_list () const |
double | impact_parameter () const |
double | velocity_projectile () const |
double | velocity_target () const |
FermiMotion | fermi_motion () const |
double | max_timestep (double) const |
double | length () 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, CellSizeStrategy strategy=CellSizeStrategy::Optimal) const |
Creates the Grid with normal boundary conditions. More... | |
|
inline |
Enforces sensible positions for the particles.
Currently, this is only needed for BoxModus; the other Modi do nothing.
Definition at line 59 of file modusdefault.h.
|
inline |
Definition at line 65 of file modusdefault.h.
|
inline |
Definition at line 67 of file modusdefault.h.
|
inline |
Definition at line 69 of file modusdefault.h.
|
inline |
Definition at line 71 of file modusdefault.h.
|
inline |
Definition at line 73 of file modusdefault.h.
|
inline |
Definition at line 75 of file modusdefault.h.
|
inline |
Definition at line 78 of file modusdefault.h.
|
inline |
Definition at line 81 of file modusdefault.h.
|
inline |
Definition at line 84 of file modusdefault.h.
|
inline |
Definition at line 86 of file modusdefault.h.
|
inline |
Definition at line 89 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
Only used in ColliderModus for IC output.
Definition at line 100 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] | strategy | The strategy to determine the cell size |
Definition at line 115 of file modusdefault.h.