#include <processbranch.h>
CollisionBranch is a derivative of ProcessBranch, which is used to represent particular final-state channels in a collision.
Definition at line 216 of file processbranch.h.
Public Member Functions | |
| CollisionBranch (double w, ProcessType p_type) | |
| Construct collision branch with empty final state. More... | |
| CollisionBranch (const ParticleType &type, double w, ProcessType p_type) | |
| Construct collision branch with 1 particle in final state. More... | |
| CollisionBranch (const ParticleType &type_a, const ParticleType &type_b, double w, ProcessType p_type) | |
| Construct collision branch with 2 particles in final state. More... | |
| CollisionBranch (const ParticleType &type_a, const ParticleType &type_b, const ParticleType &type_c, double w, ProcessType p_type) | |
| Construct collision branch with 3 particles in final state. More... | |
| CollisionBranch (const ParticleType &type_a, const ParticleType &type_b, const ParticleType &type_c, const ParticleType &type_d, double w, ProcessType p_type) | |
| Construct collision branch with 4 particles in final state. More... | |
| CollisionBranch (const ParticleType &type_a, const ParticleType &type_b, const ParticleType &type_c, const ParticleType &type_d, const ParticleType &type_e, double w, ProcessType p_type) | |
| Construct collision branch with 5 particles in final state. More... | |
| CollisionBranch (ParticleTypePtrList new_types, double w, ProcessType p_type) | |
| Construct collision branch with a list of particles in final state. More... | |
| CollisionBranch (CollisionBranch &&rhs) | |
| The move constructor efficiently moves the particle-type list member. More... | |
| const ParticleTypePtrList & | particle_types () const override |
| void | set_type (ProcessType p_type) |
| Set the process type. More... | |
| ProcessType | get_type () const override |
| unsigned int | particle_number () const override |
Public Member Functions inherited from smash::ProcessBranch | |
| ProcessBranch () | |
| Create a ProcessBranch without final states and weight. More... | |
| ProcessBranch (double w) | |
| Create a ProcessBranch with with weight but without final states. More... | |
| ProcessBranch (const ProcessBranch &)=delete | |
| Copying is disabled. Use std::move or create a new object. More... | |
| virtual | ~ProcessBranch ()=default |
| Virtual Destructor. More... | |
| void | set_weight (double process_weight) |
| Set the weight of the branch. More... | |
| ParticleList | particle_list () const |
| double | weight () const |
| double | threshold () const |
Private Attributes | |
| ParticleTypePtrList | particle_types_ |
| List of particles appearing in this process outcome. More... | |
| ProcessType | process_type_ |
| Process type are used to distinguish different types of processes, e.g. More... | |
Additional Inherited Members | |
Protected Attributes inherited from smash::ProcessBranch | |
| double | branch_weight_ |
| Weight of the branch, typically a cross section or a branching ratio. More... | |
| double | threshold_ = -1. |
| Threshold of the branch. More... | |
Related Functions inherited from smash::ProcessBranch | |
| template<typename Branch > | |
| double | total_weight (const ProcessBranchList< Branch > &l) |
|
inline |
Construct collision branch with empty final state.
| [in] | w | Weight of created branch. |
| [in] | p_type | Process type of created branch. |
Definition at line 223 of file processbranch.h.
|
inline |
Construct collision branch with 1 particle in final state.
| [in] | type | Particle type of final state particle. |
| [in] | w | Weight of created branch. |
| [in] | p_type | Process type of created branch. |
Definition at line 231 of file processbranch.h.
|
inline |
Construct collision branch with 2 particles in final state.
| [in] | type_a | Particle types of one final state particle. |
| [in] | type_b | Particle types of other final state particle. |
| [in] | w | Weight of created branch. |
| [in] | p_type | Process type of created branch. |
Definition at line 243 of file processbranch.h.
|
inline |
Construct collision branch with 3 particles in final state.
| [in] | type_a | Particle type of first final state particle. |
| [in] | type_b | Particle type of second final state particle. |
| [in] | type_c | Particle type of third final state particle. |
| [in] | w | Weight of created branch. |
| [in] | p_type | Process type of created branch. |
Definition at line 259 of file processbranch.h.
|
inline |
Construct collision branch with 4 particles in final state.
| [in] | type_a | Particle type of first final state particle. |
| [in] | type_b | Particle type of second final state particle. |
| [in] | type_c | Particle type of third final state particle. |
| [in] | type_d | Particle type of fourth final state particle. |
| [in] | w | Weight of created branch. |
| [in] | p_type | Process type of created branch. |
Definition at line 277 of file processbranch.h.
|
inline |
Construct collision branch with 5 particles in final state.
| [in] | type_a | Particle type of first final state particle. |
| [in] | type_b | Particle type of second final state particle. |
| [in] | type_c | Particle type of third final state particle. |
| [in] | type_d | Particle type of fourth final state particle. |
| [in] | type_e | Particle type of fith final state particle. |
| [in] | w | Weight of created branch. |
| [in] | p_type | Process type of created branch. |
Definition at line 298 of file processbranch.h.
|
inline |
Construct collision branch with a list of particles in final state.
| [in] | new_types | List of particle types of final state particles. |
| [in] | w | Weight of created branch. |
| [in] | p_type | Process type of created branch. |
Definition at line 316 of file processbranch.h.
|
inline |
The move constructor efficiently moves the particle-type list member.
Definition at line 321 of file processbranch.h.
|
inlineoverridevirtual |
Implements smash::ProcessBranch.
Definition at line 325 of file processbranch.h.
|
inline |
Set the process type.
| [in] | p_type | The new value of the process type |
Definition at line 333 of file processbranch.h.
|
inlineoverridevirtual |
Implements smash::ProcessBranch.
Definition at line 335 of file processbranch.h.
|
inlineoverridevirtual |
Implements smash::ProcessBranch.
Definition at line 337 of file processbranch.h.
|
private |
List of particles appearing in this process outcome.
Definition at line 343 of file processbranch.h.
|
private |
Process type are used to distinguish different types of processes, e.g.
string formation, resonance formation, elastic scattering and so on.
Definition at line 349 of file processbranch.h.