10 #ifndef SRC_INCLUDE_SMASH_MODUSDEFAULT_H_
11 #define SRC_INCLUDE_SMASH_MODUSDEFAULT_H_
60 const OutputsList& = {}) {
67 bool is_box()
const {
return false; }
92 double length()
const {
return -1.; }
94 double radius()
const {
return -1.; }
128 const Particles& particles,
double min_cell_length,
130 const bool include_unformed_particles,
140 include_unformed_particles,
150 std::unique_ptr<GrandCanThermalizer> create_grandcan_thermalizer(
191 const std::array<double, 3> l = conf.
take({
"Lattice_Sizes"});
192 const std::array<double, 3> origin = {-0.5 * l[0], -0.5 * l[1],
194 const bool periodicity =
false;
195 return make_unique<GrandCanThermalizer>(conf, l, origin, periodicity);
203 using std::invalid_argument::invalid_argument;
211 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
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.