#include <decaytype.h>
TwoBodyDecayUnstable represents a decay type with two unstable final-state particles. 
Definition at line 236 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 () | 
|   | 
◆ TwoBodyDecayUnstable()
      
        
          | 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 182 of file decaytype.cc.
  185   if (part_types[0]->is_stable() || part_types[1]->is_stable()) {
 
  186     throw std::runtime_error(
 
  187         "Error: Stable particle in TwoBodyDecayUnstable constructor: " +
 
  188         part_types[0]->pdgcode().
string() + 
" " +
 
  189         part_types[1]->pdgcode().
string());
 
std::unique_ptr< Tabulation > tabulation_
Tabulation of the resonance integrals.
 
double Lambda_
Cut-off parameter Λ for unstable decays.
 
TwoBodyDecay(ParticleTypePtrList part_types, int l)
Construct a TwoBodyDecay.
 
 
 
 
◆ width()
  
  
      
        
          | 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 228 of file decaytype.cc.
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.
 
 
 
 
◆ in_width()
  
  
      
        
          | 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 232 of file decaytype.cc.
  234   const double p_f = 
pCM(m, m1, m2);
 
int L_
angular momentum of the decay
 
T pCM(const T sqrts, const T mass_a, const T mass_b) noexcept
 
double blatt_weisskopf_sqr(const double p_ab, const int L)
 
 
 
 
◆ rho()
  
  
      
        
          | 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 200 of file decaytype.cc.
  206     const double m1_min = r1->min_mass_kinematic();
 
  207     const double m2_min = r2->min_mass_kinematic();
 
  208     const double sum_gamma = r1->width_at_pole() + r2->width_at_pole();
 
  209     const double tab_interval = std::max(2., 10. * sum_gamma);
 
  212         m1_min + m2_min, tab_interval, 
num_tab_pts, [&](
double sqrts) {
 
  213           const double m1_max = sqrts - m2_min;
 
  214           const double m2_max = sqrts - m1_min;
 
  216           const double result = 
integrate2d(m1_min, m1_max, m2_min, m2_max,
 
  217                                             [&](
double m1, 
double m2) {
 
  219                                                   sqrts, m1, m2, r1, r2, 
L_);
 
ParticleTypePtrList particle_types_
final-state particles of the decay
 
static double integrand_rho_Manley_2res(double sqrts, double m1, double m2, ParticleTypePtr t1, ParticleTypePtr t2, int L)
 
static Integrator2d integrate2d(1E7)
 
constexpr size_t num_tab_pts
Number of tabulation points.
 
 
 
 
◆ get_Lambda()
  
  
      
        
          | double smash::TwoBodyDecayUnstable::get_Lambda  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
protected   | 
  
 
- Returns
 - the cut-off parameter Λ for unstable decays, given the types of the daughter particles. 
 
Definition at line 193 of file decaytype.cc.
 
 
◆ Lambda_
  
  
      
        
          | double smash::TwoBodyDecayUnstable::Lambda_ | 
         
       
   | 
  
protected   | 
  
 
Cut-off parameter Λ for unstable decays. 
Definition at line 259 of file decaytype.h.
 
 
◆ tabulation_
  
  
      
        
          | std::unique_ptr<Tabulation> smash::TwoBodyDecayUnstable::tabulation_ | 
         
       
   | 
  
mutableprotected   | 
  
 
 
The documentation for this class was generated from the following files: