10 #ifndef SRC_INCLUDE_SMASH_MODUSDEFAULT_H_
11 #define SRC_INCLUDE_SMASH_MODUSDEFAULT_H_
59 const OutputsList& = {}) {
66 bool is_box()
const {
return false; }
91 double length()
const {
return -1.; }
93 double radius()
const {
return -1.; }
127 const Particles& particles,
double min_cell_length,
129 const bool include_unformed_particles,
139 include_unformed_particles,
155 const std::array<double, 3> l = conf.
take({
"Lattice_Sizes"});
156 const std::array<double, 3> origin = {-0.5 * l[0], -0.5 * l[1],
158 const bool periodicity =
false;
159 return std::make_unique<GrandCanThermalizer>(conf, l, origin, periodicity);
167 using std::invalid_argument::invalid_argument;
175 using BadInput::BadInput;
Interface to the SMASH configuration files.
Value take(std::initializer_list< const char * > keys)
The default interface for SMASH to read configuration values.
Abstracts a list of cells that partition the particles in the experiment into regions of space that c...
Base class for Modus classes that provides default function implementations.
bool calculation_frame_is_fixed_target() const
std::unique_ptr< GrandCanThermalizer > create_grandcan_thermalizer(Configuration &conf) const
Creates GrandCanThermalizer.
double velocity_target() const
int impose_boundary_conditions(Particles *, const OutputsList &={})
Enforces sensible positions for the particles.
double max_timestep(double) const
double nuclei_passing_time() const
Get the passing time of the two nuclei in a collision.
FermiMotion fermi_motion() const
double velocity_projectile() const
double impact_parameter() const
void sample_impact() const
sample impact parameter for collider modus
double equilibration_time() const
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.
The Particles class abstracts the storage and manipulation of particles.
FermiMotion
Option to use Fermi Motion.
@ Off
Don't use fermi motion.
CollisionCriterion
Criteria used to check collisions.
@ Stochastic
Stochastic Criteiron.
CellNumberLimitation
Identifies whether the number of cells should be limited.
@ ParticleNumber
Limit the number of cells to the number of particles.
@ None
No cell number limitation.
CellSizeStrategy
Indentifies the strategy of determining the cell size.
@ Optimal
Look for optimal cell size.
Thrown when the requested energy is smaller than the masses of two particles.