Version: SMASH-3.1
decayactionsfinder.h
Go to the documentation of this file.
1 /*
2  *
3  * Copyright (c) 2014-2020,2022-2023
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 #include "input_keys.h"
17 
18 namespace smash {
19 
27  public:
35  explicit DecayActionsFinder(double res_lifetime_factor, bool do_weak_decays)
36  : res_lifetime_factor_(res_lifetime_factor),
37  do_final_weak_decays_(do_weak_decays) {}
38 
46  ActionList find_actions_in_cell(
47  const ParticleList &search_list, double dt, const double,
48  const std::vector<FourVector> &) const override;
49 
52  const ParticleList &, const ParticleList &, double,
53  const std::vector<FourVector> &) const override {
54  return {};
55  }
56 
59  const ParticleList &, const Particles &, double,
60  const std::vector<FourVector> &) const override {
61  return {};
62  }
63 
73  ActionList find_final_actions(const Particles &search_list,
74  bool only_res = false) const override;
75 
77  const double res_lifetime_factor_ = 1.;
78 
84 
91 };
92 
93 } // namespace smash
94 
95 #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 ...
const bool decay_initial_particles_
Whether to initial state particles can decay.
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.
default_type default_value() const
Get the default value of the key.
Definition: input_keys.h:132
The Particles class abstracts the storage and manipulation of particles.
Definition: particles.h:33
Definition: action.h:24
static const Key< bool > collTerm_decayInitial
See user guide description for more information.
Definition: input_keys.h:2163