Version: SMASH-3.0
forwarddeclarations.h File Reference

Go to the source code of this file.

Typedefs

typedef std::bitset< 10 > ReactionsBitSet
 Container for the 2 to 2 reactions in the code. More...
 
typedef std::bitset< 4 > MultiParticleReactionsBitSet
 Container for the n to m reactions in the code. More...
 

Enumerations

enum class  CalculationFrame { CenterOfVelocity , CenterOfMass , FixedTarget }
 The calculation frame. More...
 
enum class  FermiMotion { Off , On , Frozen }
 Option to use Fermi Motion. More...
 
enum class  Sampling { Uniform , Quadratic , Custom }
 Possible methods of impact parameter sampling. More...
 
enum class  DerivativesMode { CovariantGaussian , FiniteDifference , Off }
 Modes of calculating the gradients. More...
 
enum class  RestFrameDensityDerivativesMode { On , Off }
 Modes of calculating the gradients: whether to calculate the rest frame density derivatives. More...
 
enum class  FieldDerivativesMode { ChainRule , Direct }
 Modes of calculating the field gradients: chain rule or direct. More...
 
enum class  SmearingMode { CovariantGaussian , Discrete , Triangular }
 Modes of smearing. More...
 
enum class  TimeStepMode : char { None , Fixed }
 The time step mode. More...
 
enum class  BoxInitialCondition { ThermalMomentaBoltzmann , ThermalMomentaQuantum , PeakedMomenta }
 Initial condition for a particle in a box. More...
 
enum class  SphereInitialCondition {
  ThermalMomentaBoltzmann , ThermalMomentaQuantum , IC_ES , IC_1M ,
  IC_2M , IC_Massive
}
 Initial condition for a particle in a sphere. More...
 
enum class  ExpansionMode { NoExpansion , MasslessFRW , MassiveFRW , Exponential }
 Defines properties of expansion for the metric (e.g. More...
 
enum class  NNbarTreatment { NoAnnihilation , Resonances , TwoToFive , Strings }
 Treatment of N Nbar Annihilation. More...
 
enum class  ThermodynamicQuantity : char {
  EckartDensity , Tmn , TmnLandau , LandauVelocity ,
  j_QBS
}
 Represents thermodynamic quantities that can be printed out. More...
 
enum class  CollisionCriterion { Geometric , Stochastic , Covariant }
 Criteria used to check collisions. More...
 
enum class  OutputOnlyFinal { Yes , No , IfNotEmpty }
 Whether and when only final state particles should be printed. More...
 
enum  IncludedReactions {
  All = 50 , Elastic = 0 , NN_to_NR = 1 , NN_to_DR = 2 ,
  KN_to_KN = 3 , KN_to_KDelta = 4 , Strangeness_exchange = 5 , NNbar = 6 ,
  PiDeuteron_to_NN = 7 , PiDeuteron_to_pidprime = 8 , NDeuteron_to_Ndprime = 9
}
 The different groups of 2 to 2 reactions that one can include. More...
 
enum  IncludedMultiParticleReactions { Meson_3to1 = 0 , Deuteron_3to2 = 1 , NNbar_5to2 = 2 , A3_Nuclei_4to2 = 3 }
 The different groups of multi-particle reactions that one can include. More...
 
enum class  ThermalizationAlgorithm { ModeSampling , BiasedBF , UnbiasedBF }
 Defines the algorithm used for the forced thermalization. More...
 
enum class  EventCounting { FixedNumber , MinimumNonEmpty , Invalid }
 Defines how the number of events is determined. More...
 

Typedef Documentation

◆ ReactionsBitSet

typedef std::bitset<10> ReactionsBitSet

Container for the 2 to 2 reactions in the code.

Definition at line 263 of file forwarddeclarations.h.

◆ MultiParticleReactionsBitSet

typedef std::bitset<4> MultiParticleReactionsBitSet

Container for the n to m reactions in the code.

Definition at line 274 of file forwarddeclarations.h.

Enumeration Type Documentation

◆ CalculationFrame

enum CalculationFrame
strong

The calculation frame.

Enumerator
CenterOfVelocity 
CenterOfMass 
FixedTarget 

Definition at line 83 of file forwarddeclarations.h.

◆ FermiMotion

enum FermiMotion
strong

Option to use Fermi Motion.

Enumerator
Off 

Don't use fermi motion.

On 

Use fermi motion in combination with potentials.

Frozen 

Use fermi motion without potentials.

Definition at line 90 of file forwarddeclarations.h.

90  {
92  Off,
94  On,
96  Frozen,
97 };
@ On
Use fermi motion in combination with potentials.
@ Frozen
Use fermi motion without potentials.
@ Off
Don't use fermi motion.

◆ Sampling

enum Sampling
strong

Possible methods of impact parameter sampling.

Enumerator
Uniform 

Sample from uniform distribution.

Quadratic 

Sample from areal / quadratic distribution.

Custom 

Sample from custom, user-defined distribution.

Definition at line 100 of file forwarddeclarations.h.

100  {
102  Uniform,
104  Quadratic,
106  Custom,
107 };
@ Quadratic
Sample from areal / quadratic distribution.
@ Custom
Sample from custom, user-defined distribution.
@ Uniform
Sample from uniform distribution.

◆ DerivativesMode

enum DerivativesMode
strong

Modes of calculating the gradients.

Enumerator
CovariantGaussian 
FiniteDifference 
Off 

Definition at line 110 of file forwarddeclarations.h.

110  {
113  Off,
114 };

◆ RestFrameDensityDerivativesMode

Modes of calculating the gradients: whether to calculate the rest frame density derivatives.

Enumerator
On 
Off 

Definition at line 120 of file forwarddeclarations.h.

120  {
121  On,
122  Off,
123 };

◆ FieldDerivativesMode

enum FieldDerivativesMode
strong

Modes of calculating the field gradients: chain rule or direct.

The modes only make sense for the VDF potentials.

Enumerator
ChainRule 
Direct 

Definition at line 129 of file forwarddeclarations.h.

129  {
130  ChainRule,
131  Direct,
132 };

◆ SmearingMode

enum SmearingMode
strong

Modes of smearing.

Enumerator
CovariantGaussian 
Discrete 
Triangular 

Definition at line 135 of file forwarddeclarations.h.

135  {
137  Discrete,
138  Triangular,
139 };

◆ TimeStepMode

enum TimeStepMode : char
strong

The time step mode.

Enumerator
None 

Don't use time steps; propagate from action to action.

Fixed 

Use fixed time step.

Definition at line 142 of file forwarddeclarations.h.

142  : char {
144  None,
146  Fixed,
147 };
@ Fixed
Use fixed time step.

◆ BoxInitialCondition

enum BoxInitialCondition
strong

Initial condition for a particle in a box.

If PeakedMomenta is used, all particles have the same momentum \(p = 3 \cdot T\) with T being the temperature.

Else, a thermalized ensemble is generated (the momenta are sampled from a Maxwell-Boltzmann distribution).

In either case, the positions in space are chosen randomly.

Enumerator
ThermalMomentaBoltzmann 
ThermalMomentaQuantum 
PeakedMomenta 

Definition at line 160 of file forwarddeclarations.h.

◆ SphereInitialCondition

Initial condition for a particle in a sphere.

IC_ES, IC_1M and IC_2M are off-equilibrium distributions used in massless comparisons of SMASH to the extended universe metric. They are described in some detail in iref Bazow:2016oky [7]

IC_Massive is a generalization of IC_ES for the non-zero mass case; note that there is currently no analytical comparison possible with this distribution.

The default value, ThermalMomenta, samples momenta from a Maxwell-Boltzmann distribution and thus generates a thermal ensemble.

Enumerator
ThermalMomentaBoltzmann 
ThermalMomentaQuantum 
IC_ES 
IC_1M 
IC_2M 
IC_Massive 

Definition at line 179 of file forwarddeclarations.h.

◆ ExpansionMode

enum ExpansionMode
strong

Defines properties of expansion for the metric (e.g.

FRW)

If anything else than NoExpansion is used, then a non-zero Hubble parameter is computed and corrections are brought to the propagation of all particles according to selected expanding metric.

Enumerator
NoExpansion 
MasslessFRW 
MassiveFRW 
Exponential 

Definition at line 196 of file forwarddeclarations.h.

196  {
197  NoExpansion,
198  MasslessFRW,
199  MassiveFRW,
200  Exponential,
201 };

◆ NNbarTreatment

enum NNbarTreatment
strong

Treatment of N Nbar Annihilation.

Enumerator
NoAnnihilation 

No Annihilation.

Resonances 

Use intermediate Resonances.

TwoToFive 

Directly create 5 pions, use with multi-particle reactions.

Strings 

Use string fragmentation.

Definition at line 204 of file forwarddeclarations.h.

204  {
208  Resonances,
210  TwoToFive,
212  Strings,
213 };
@ NoAnnihilation
No Annihilation.
@ TwoToFive
Directly create 5 pions, use with multi-particle reactions.
@ Resonances
Use intermediate Resonances.
@ Strings
Use string fragmentation.

◆ ThermodynamicQuantity

enum ThermodynamicQuantity : char
strong

Represents thermodynamic quantities that can be printed out.

Enumerator
EckartDensity 
Tmn 
TmnLandau 
LandauVelocity 
j_QBS 

Definition at line 218 of file forwarddeclarations.h.

◆ CollisionCriterion

enum CollisionCriterion
strong

Criteria used to check collisions.

Enumerator
Geometric 

(Default) geometric criterion.

Stochastic 

Stochastic Criteiron.

Covariant 

Covariant Criterion.

Definition at line 227 of file forwarddeclarations.h.

227  {
229  Geometric,
231  Stochastic,
233  Covariant
234 };
@ Stochastic
Stochastic Criteiron.
@ Geometric
(Default) geometric criterion.
@ Covariant
Covariant Criterion.

◆ OutputOnlyFinal

enum OutputOnlyFinal
strong

Whether and when only final state particles should be printed.

Enumerator
Yes 

Print only final-state particles.

No 

Print initial, intermediate and final-state particles.

IfNotEmpty 

Print only final-state particles, and those only if the event is not empty.

Definition at line 237 of file forwarddeclarations.h.

237  {
239  Yes,
241  No,
244  IfNotEmpty,
245 };
@ IfNotEmpty
Print only final-state particles, and those only if the event is not empty.
@ Yes
Print only final-state particles.
@ No
Print initial, intermediate and final-state particles.

◆ IncludedReactions

The different groups of 2 to 2 reactions that one can include.

Enumerator
All 
Elastic 
NN_to_NR 
NN_to_DR 
KN_to_KN 
KN_to_KDelta 
Strangeness_exchange 
NNbar 
PiDeuteron_to_NN 
PiDeuteron_to_pidprime 
NDeuteron_to_Ndprime 

Definition at line 248 of file forwarddeclarations.h.

248  {
249  All = 50,
250  Elastic = 0,
251  NN_to_NR = 1,
252  NN_to_DR = 2,
253  KN_to_KN = 3,
254  KN_to_KDelta = 4,
256  NNbar = 6,
257  PiDeuteron_to_NN = 7,
260 };
@ KN_to_KDelta
@ KN_to_KN
@ NN_to_NR
@ PiDeuteron_to_pidprime
@ NDeuteron_to_Ndprime
@ Strangeness_exchange
@ PiDeuteron_to_NN
@ NN_to_DR

◆ IncludedMultiParticleReactions

The different groups of multi-particle reactions that one can include.

Enumerator
Meson_3to1 
Deuteron_3to2 
NNbar_5to2 
A3_Nuclei_4to2 

Definition at line 266 of file forwarddeclarations.h.

266  {
267  Meson_3to1 = 0,
268  Deuteron_3to2 = 1,
269  NNbar_5to2 = 2,
270  A3_Nuclei_4to2 = 3,
271 };
@ NNbar_5to2
@ A3_Nuclei_4to2
@ Deuteron_3to2
@ Meson_3to1

◆ ThermalizationAlgorithm

Defines the algorithm used for the forced thermalization.

For the description of algorithms see Oliinychenko:2016vkg [41]. All of them intend to conserve the net baryon number, strangeness and electric charge, as well as energy. Mode sampling is the fastest, but least theoretically robust, unbiased BF is the slowest (even hangs completely from time to time), but it is also the most theoretically robust.

Enumerator
ModeSampling 
BiasedBF 
UnbiasedBF 

Definition at line 285 of file forwarddeclarations.h.

◆ EventCounting

enum EventCounting
strong

Defines how the number of events is determined.

For FixedNumber the desired number of events is simulated disregarding of wether an interaction took place. For MinimumNonEmpty Events will be simulated until there are at least a given number of ensembles in which an interaction took place.

Enumerator
FixedNumber 
MinimumNonEmpty 
Invalid 

Definition at line 298 of file forwarddeclarations.h.

298  {
299  FixedNumber,
301  Invalid,
302 };