LCOV - code coverage report
Current view: top level - PYTHIA8/pythia8210dev/include/Pythia8 - SusyResonanceWidths.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 0 13 0.0 %
Date: 2016-06-14 17:26:59 Functions: 0 30 0.0 %

          Line data    Source code
       1             : // SusyResonanceWidths.h is a part of the PYTHIA event generator.
       2             : // Copyright (C) 2015 Torbjorn Sjostrand
       3             : // Main author of this file: N. Desai
       4             : // PYTHIA is licenced under the GNU GPL version 2, see COPYING for details.
       5             : // Please respect the MCnet Guidelines, see GUIDELINES for details.
       6             : 
       7             : // Header file for resonance properties: dynamical widths etc.
       8             : // SusyResonanceWidths: base class for all SUSY resonances.
       9             : 
      10             : #ifndef Pythia8_SusyResonanceWidths_H
      11             : #define Pythia8_SusyResonanceWidths_H
      12             : 
      13             : #include "Pythia8/ParticleData.h"
      14             : #include "Pythia8/ResonanceWidths.h"
      15             : #include "Pythia8/SusyWidthFunctions.h"
      16             : #include "Pythia8/SusyCouplings.h"
      17             : 
      18             : namespace Pythia8 {
      19             : 
      20             : //==========================================================================
      21             : 
      22           0 : class SUSYResonanceWidths : public ResonanceWidths{
      23             : 
      24             : public:
      25             : 
      26           0 :   SUSYResonanceWidths() {}
      27             : 
      28             : protected:
      29             : 
      30             :   // Virtual methods to handle model-specific (non-SM) part of initialization
      31             :   virtual bool initBSM();
      32             :   virtual bool allowCalc();
      33           0 :   virtual bool getChannels(int) { return false; };
      34             : 
      35             :   double integrateGauss( WidthFunction* widthFn, double, double, double);
      36             : 
      37             :   // SUSY couplings
      38             :   CoupSUSY* coupSUSYPtr;
      39             :   static const bool DBSUSY;
      40             : 
      41             : };
      42             : 
      43             : //==========================================================================
      44             : 
      45             : // The ResonanceSquark class handles the Squark resonances.
      46             : 
      47           0 : class ResonanceSquark : public SUSYResonanceWidths {
      48             : 
      49             : public:
      50             : 
      51             :   // Constructor.
      52           0 :   ResonanceSquark(int idResIn) {initBasic(idResIn);}
      53             : 
      54             : 
      55             : private:
      56             : 
      57             :   // Locally stored properties and couplings.
      58             : 
      59             :   // Initialize constants.
      60             :   virtual void initConstants();
      61             : 
      62             :   // Calculate various common prefactors for the current mass.
      63             :   virtual void calcPreFac(bool = false);
      64             : 
      65             :   bool getChannels(int idPDG);
      66             : 
      67             :   // Caclulate width for currently considered channel.
      68             :   virtual void calcWidth(bool calledFromInit = false);
      69             : 
      70             : 
      71             :   double s2W;
      72             : 
      73             : };
      74             : 
      75             : //==========================================================================
      76             : 
      77             : // The ResonanceGluino class handles the Gluino resonances.
      78             : 
      79           0 : class ResonanceGluino : public SUSYResonanceWidths {
      80             : 
      81             : public:
      82             : 
      83             :   // Constructor.
      84           0 :   ResonanceGluino(int idResIn) {initBasic(idResIn);}
      85             : 
      86             : private:
      87             : 
      88             :   bool getChannels(int idPDG);
      89             : 
      90             :   // Locally stored properties and couplings.
      91             : 
      92             :   // Initialize constants.
      93             :   virtual void initConstants();
      94             : 
      95             :   // Calculate various common prefactors for the current mass.
      96             :   virtual void calcPreFac(bool = false);
      97             : 
      98             :   // Caclulate width for currently considered channel.
      99             :   virtual void calcWidth(bool calledFromInit = false);
     100             : 
     101             : };
     102             : 
     103             : //==========================================================================
     104             : 
     105             : // The ResonanceNeut class handles the Neutralino resonances.
     106             : 
     107           0 : class ResonanceNeut : public SUSYResonanceWidths {
     108             : 
     109             : public:
     110             : 
     111             :   // Constructor.
     112           0 :   ResonanceNeut(int idResIn) {initBasic(idResIn);}
     113             : 
     114             : private:
     115             : 
     116             :   bool getChannels(int idPDG);
     117             :   // Locally stored properties and couplings.
     118             :   double kinFac2;
     119             : 
     120             :   // Initialize constants.
     121             :   virtual void initConstants();
     122             : 
     123             :   // Calculate various common prefactors for the current mass.
     124             :   virtual void calcPreFac(bool = false);
     125             : 
     126             :   // Caclulate width for currently considered channel.
     127             :   virtual void calcWidth(bool calledFromInit = false);
     128             : 
     129             :   double s2W;
     130             : 
     131             :   // Functions for 3-body decays
     132             :   /* Psi psi; */
     133             :   /* Phi phi; */
     134             :   /* Upsilon upsil; */
     135             : 
     136             : };
     137             : 
     138             : //==========================================================================
     139             : 
     140             : // The ResonanceChar class handles the Chargino resonances.
     141             : 
     142           0 : class ResonanceChar : public SUSYResonanceWidths {
     143             : 
     144             : public:
     145             : 
     146             :   // Constructor.
     147           0 :   ResonanceChar(int idResIn) {initBasic(idResIn);}
     148             : 
     149             : private:
     150             : 
     151             :   bool getChannels(int idPDG);
     152             : 
     153             :   // Locally stored properties and couplings.
     154             :   double kinFac2;
     155             : 
     156             :   // Initialize constants.
     157             :   virtual void initConstants();
     158             : 
     159             :   // Calculate various common prefactors for the current mass.
     160             :   virtual void calcPreFac(bool = false);
     161             : 
     162             :   // Caclulate width for currently considered channel.
     163             :   virtual void calcWidth(bool calledFromInit = false);
     164             : 
     165             :   double s2W;
     166             : 
     167             :   //Functions for 3-body decays
     168             :   /* Psi psi; */
     169             :   /* Phi phi; */
     170             :   /* Upsilon upsil; */
     171             : 
     172             : };
     173             : 
     174             : //==========================================================================
     175             : 
     176             : // The ResonanceSlepton class handles the Slepton/Sneutrino resonances.
     177             : 
     178           0 : class ResonanceSlepton : public SUSYResonanceWidths {
     179             : 
     180             : public:
     181             : 
     182             :   // Constructor.
     183           0 :   ResonanceSlepton(int idResIn) {initBasic(idResIn);}
     184             : 
     185             : private:
     186             : 
     187             :   bool getChannels(int idPDG);
     188             : 
     189             :   // Locally stored properties and couplings.
     190             : 
     191             :   // Initialize constants.
     192             :   virtual void initConstants();
     193             : 
     194             :   // Calculate various common prefactors for the current mass.
     195             :   virtual void calcPreFac(bool = false);
     196             : 
     197             :   // Calculate width for currently considered channel.
     198             :   virtual void calcWidth(bool calledFromInit = false);
     199             : 
     200             :   double s2W;
     201             : 
     202             :   // Three-body stau decaywidth classes
     203             :   StauWidths stauWidths;
     204             : 
     205             : };
     206             : 
     207             : //==========================================================================
     208             : 
     209             : } // end namespace Pythia8
     210             : 
     211             : #endif // end Pythia8_SusyResonanceWidths_H

Generated by: LCOV version 1.11