26 for (
const auto &
p : search_list) {
27 const auto n_all_modes =
29 .get_partial_widths(
p.momentum(),
p.position().threevec(),
32 if (n_all_modes == 0) {
36 const double inv_gamma =
p.inverse_gamma();
37 DecayBranchList dil_modes =
p.type().get_partial_widths(
43 if (dil_modes.size() == n_all_modes ||
p.type().is_stable() ||
44 (
p.formation_time() >
p.position().x0())) {
48 for (DecayBranchPtr &mode : dil_modes) {
50 const double shining_weight = dt * inv_gamma * mode->weight() /
hbarc;
52 if (shining_weight > 0.0) {
64 bool only_res)
const {
68 for (
const auto &
p : search_list) {
82 for (DecayBranchPtr &mode : dil_modes) {
83 const double shining_weight = mode->weight() / width_tot;
85 if (shining_weight > 0.0) {
void shine(const Particles &search_list, OutputInterface *output, double dt) const
Check the whole particles list and print out possible dilepton decays.
DecayActionDilepton is special action created for particles that can decay into dileptons.
DecayBranchList get_partial_widths(const FourVector p, const ThreeVector x, WhichDecaymodes wh) const
Get all the mass-dependent partial decay widths of a particle with mass m.
Collection of useful constants that are known at compile time.
void add_decay(DecayBranchPtr p)
Add one new decay.
constexpr double hbarc
GeV <-> fm conversion factor.
const DecayBranchList & decay_mode_list() const
virtual void at_interaction(const Action &action, const double density)
Called whenever an action modified one or more particles.
Particle type contains the static properties of a particle species.
Only return dilepton decays widths.
bool is_dilepton_output() const
Get, whether this is the dilepton output?
void generate_final_state() override
Generate the final state of the decay process.
The Particles class abstracts the storage and manipulation of particles.
void shine_final(const Particles &search_list, OutputInterface *output, bool only_res=false) const
Shine dileptons from resonances at the end of the simulation.
const DecayModes & decay_modes() const
Abstraction of generic output.