10 #ifndef SRC_INCLUDE_SMASH_ACTIONFINDERFACTORY_H_
11 #define SRC_INCLUDE_SMASH_ACTIONFINDERFACTORY_H_
44 const ParticleList &search_list,
double dt,
const double gcell_vol,
45 const std::vector<FourVector> &beam_momentum)
const = 0;
61 const ParticleList &search_list,
const ParticleList &neighbors_list,
62 double dt,
const std::vector<FourVector> &beam_momentum)
const = 0;
82 const ParticleList &search_list,
const Particles &surrounding_list,
83 double dt,
const std::vector<FourVector> &beam_momentum)
const = 0;
97 bool only_res =
false)
const = 0;
ActionFinderInterface is the abstract base class for all action finders, i.e.
virtual ActionList find_final_actions(const Particles &search_list, bool only_res=false) const =0
This abstract function finds 'final' actions (for cleaning up at the end of the simulation,...
virtual ~ActionFinderInterface()=default
virtual ActionList find_actions_in_cell(const ParticleList &search_list, double dt, const double gcell_vol, const std::vector< FourVector > &beam_momentum) const =0
Abstract function for finding actions, given a list of particles.
virtual ActionList find_actions_with_neighbors(const ParticleList &search_list, const ParticleList &neighbors_list, double dt, const std::vector< FourVector > &beam_momentum) const =0
Abstract function for finding actions, given two lists of particles, a search list and a neighbors li...
virtual ActionList find_actions_with_surrounding_particles(const ParticleList &search_list, const Particles &surrounding_list, double dt, const std::vector< FourVector > &beam_momentum) const =0
Abstract function for finding actions between a list of particles and the surrounding particles.
The Particles class abstracts the storage and manipulation of particles.