Version: SMASH-3.0
decayactionsfinder.h
Go to the documentation of this file.
1 /*
2  *
3  * Copyright (c) 2014-2020,2022
4  * SMASH Team
5  *
6  * GNU General Public License (GPLv3 or later)
7  *
8  */
9 
10 #ifndef SRC_INCLUDE_SMASH_DECAYACTIONSFINDER_H_
11 #define SRC_INCLUDE_SMASH_DECAYACTIONSFINDER_H_
12 
13 #include <vector>
14 
15 #include "actionfinderfactory.h"
16 
17 namespace smash {
18 
26  public:
34  explicit DecayActionsFinder(double res_lifetime_factor, bool do_weak_decays)
35  : res_lifetime_factor_(res_lifetime_factor),
36  do_final_weak_decays_(do_weak_decays) {}
37 
45  ActionList find_actions_in_cell(
46  const ParticleList &search_list, double dt, const double,
47  const std::vector<FourVector> &) const override;
48 
51  const ParticleList &, const ParticleList &, double,
52  const std::vector<FourVector> &) const override {
53  return {};
54  }
55 
58  const ParticleList &, const Particles &, double,
59  const std::vector<FourVector> &) const override {
60  return {};
61  }
62 
72  ActionList find_final_actions(const Particles &search_list,
73  bool only_res = false) const override;
74 
76  const double res_lifetime_factor_ = 1.;
77 
83 };
84 
85 } // namespace smash
86 
87 #endif // SRC_INCLUDE_SMASH_DECAYACTIONSFINDER_H_
ActionFinderInterface is the abstract base class for all action finders, i.e.
A simple decay finder: Just loops through all particles and checks if they can decay during the next ...
ActionList find_actions_with_surrounding_particles(const ParticleList &, const Particles &, double, const std::vector< FourVector > &) const override
Ignore the surrounding searches for decays.
const double res_lifetime_factor_
Multiplicative factor to be applied to resonance lifetimes.
const bool do_final_weak_decays_
Do weak decays at the end? Weak here means all non-strong decays, so electro-magnetic decays are done...
ActionList find_final_actions(const Particles &search_list, bool only_res=false) const override
Force all resonances to decay at the end of the simulation.
ActionList find_actions_in_cell(const ParticleList &search_list, double dt, const double, const std::vector< FourVector > &) const override
Check the whole particle list for decays.
DecayActionsFinder(double res_lifetime_factor, bool do_weak_decays)
Initialize the finder.
ActionList find_actions_with_neighbors(const ParticleList &, const ParticleList &, double, const std::vector< FourVector > &) const override
Ignore the neighbor searches for decays.
The Particles class abstracts the storage and manipulation of particles.
Definition: particles.h:33
Definition: action.h:24