#include <decaytype.h>
TwoBodyDecayUnstable represents a decay type with two unstable final-state particles.
Definition at line 198 of file decaytype.h.
|
double | rho (double m) const override |
| This is a virtual helper method which is used to write the width as Gamma(m) = Gamma_0 * rho(m) / rho(m_0). More...
|
|
double | get_Lambda () |
|
smash::TwoBodyDecayUnstable::TwoBodyDecayUnstable |
( |
ParticleTypePtrList |
part_types, |
|
|
int |
l |
|
) |
| |
Construct a TwoBodyDecayUnstable.
- Parameters
-
[in] | part_types | Final-state particles of the decay. |
[in] | l | Angular momentum of the decay. |
- Returns
- The constructed object.
Definition at line 185 of file decaytype.cc.
188 if (part_types[0]->is_stable() || part_types[1]->is_stable()) {
189 throw std::runtime_error(
190 "Error: Stable particle in TwoBodyDecayUnstable constructor: " +
191 part_types[0]->pdgcode().
string() +
" " +
192 part_types[1]->pdgcode().
string());
double Lambda_
Cut-off parameter Λ for unstable decays.
TwoBodyDecay(ParticleTypePtrList part_types, int l)
Construct a TwoBodyDecay.
std::unique_ptr< Tabulation > tabulation_
Tabulation of the resonance integrals.
double smash::TwoBodyDecayUnstable::width |
( |
double |
m0, |
|
|
double |
G0, |
|
|
double |
m |
|
) |
| const |
|
overridevirtual |
- Returns
- the mass-dependent width of the decay.
- Parameters
-
[in] | m0 | Pole mass of the decaying particle [GeV]. |
[in] | G0 | Partial width at the pole mass [GeV]. |
[in] | m | Actual mass of the decaying particle [GeV]. |
Implements smash::DecayType.
Definition at line 231 of file decaytype.cc.
double Lambda_
Cut-off parameter Λ for unstable decays.
double rho(double m) const override
This is a virtual helper method which is used to write the width as Gamma(m) = Gamma_0 * rho(m) / rho...
double post_ff_sqr(double m, double M0, double srts0, double L)
An additional form factor for unstable final states as used in GiBUU, according to M...
double smash::TwoBodyDecayUnstable::in_width |
( |
double |
m0, |
|
|
double |
G0, |
|
|
double |
m, |
|
|
double |
m1, |
|
|
double |
m2 |
|
) |
| const |
|
overridevirtual |
- Returns
- The mass-dependent in-width for a resonance formation process.
- Parameters
-
[in] | m0 | Pole mass of the produced resonance [GeV]. |
[in] | G0 | Partial width at the pole mass [GeV]. |
[in] | m | Actual mass of the produced resonance [GeV]. |
[in] | m1 | Actual mass of the first incoming particle [GeV]. |
[in] | m2 | Actual mass of the second incoming particle [GeV]. |
Implements smash::DecayType.
Definition at line 235 of file decaytype.cc.
237 const double p_f =
pCM(m, m1, m2);
double Lambda_
Cut-off parameter Λ for unstable decays.
int L_
angular momentum of the decay
double blatt_weisskopf_sqr(const double p_ab, const int L)
double rho(double m) const override
This is a virtual helper method which is used to write the width as Gamma(m) = Gamma_0 * rho(m) / rho...
double post_ff_sqr(double m, double M0, double srts0, double L)
An additional form factor for unstable final states as used in GiBUU, according to M...
T pCM(const T sqrts, const T mass_a, const T mass_b) noexcept
double smash::TwoBodyDecayUnstable::rho |
( |
double |
mass | ) |
const |
|
overrideprotectedvirtual |
This is a virtual helper method which is used to write the width as Gamma(m) = Gamma_0 * rho(m) / rho(m_0).
This ensures that the width is properly normalized at the pole mass to Gamma(m_0) = Gamma_0. By default rho simply equals one, which corresponds to a constant width.
- Parameters
-
[in] | mass | Resonance mass of the decay. |
- Returns
- Width of the decay at the given
mass
.
Reimplemented from smash::TwoBodyDecay.
Definition at line 203 of file decaytype.cc.
209 const double m1_min = r1->min_mass_kinematic();
210 const double m2_min = r2->min_mass_kinematic();
211 const double sum_gamma = r1->width_at_pole() + r2->width_at_pole();
212 const double tab_interval = std::max(2., 10. * sum_gamma);
215 m1_min + m2_min, tab_interval,
num_tab_pts, [&](
double sqrts) {
216 const double m1_max = sqrts - m2_min;
217 const double m2_max = sqrts - m1_min;
219 const double result =
integrate2d(m1_min, m1_max, m2_min, m2_max,
220 [&](
double m1,
double m2) {
222 sqrts, m1, m2, r1, r2,
L_);
static Integrator2dCuhre integrate2d(1E7)
static double integrand_rho_Manley_2res(double sqrts, double m1, double m2, ParticleTypePtr t1, ParticleTypePtr t2, int L)
ParticleTypePtrList particle_types_
final-state particles of the decay
int L_
angular momentum of the decay
std::unique_ptr< Tabulation > tabulation_
Tabulation of the resonance integrals.
constexpr int num_tab_pts
double smash::TwoBodyDecayUnstable::get_Lambda |
( |
| ) |
|
|
protected |
- Returns
- the cut-off parameter Λ for unstable decays, given the types of the daughter particles.
Definition at line 196 of file decaytype.cc.
double smash::TwoBodyDecayUnstable::Lambda_ |
|
protected |
Cut-off parameter Λ for unstable decays.
Definition at line 221 of file decaytype.h.
std::unique_ptr<Tabulation> smash::TwoBodyDecayUnstable::tabulation_ |
|
mutableprotected |
The documentation for this class was generated from the following files: