GENIEGenerator
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
BaryonResUtils.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \namespace genie::utils::res
5 
6 \brief Baryon Resonance utilities.
7 
8 
9  \authors Costas Andreopoulos <c.andreopoulos \at cern.ch>
10  University of Liverpool \n
11  Updates were made by
12  Igor Kakorin <kakorin@jinr.ru> Joint Institute for Nuclear Research
13 
14  \created November 25, 2004
15 
16  \update November 12, 2019
17  Added extra functions for MK model. \n
18  Updated resonance masses and widths according to PDG-2018. \n
19  Added previously missing resonances P33(1600) and F17(1970). \n
20  Now mass and widths are taken from PDG table via TDatabasePDG and cached. \n
21 
22 
23 \cpright Copyright (c) 2003-2024, The GENIE Collaboration
24  For the full text of the license visit http://copyright.genie-mc.org
25 */
26 //____________________________________________________________________________
27 
28 #ifndef _BARYON_RESONANCE_UTILS_H_
29 #define _BARYON_RESONANCE_UTILS_H_
30 
31 #include <string>
32 #include <map>
33 
35 
36 using std::string;
37 
38 namespace genie {
39 
40  namespace utils {
41  namespace res {
42 
43  const char* AsString (Resonance_t res); ///< resonance id -> string
44  Resonance_t FromString (const char * res); ///< string -> resonance id
45 
46  int PdgCode (Resonance_t res, int Q); ///< (resonance id, charge) -> PDG code
47  Resonance_t FromPdgCode (int pdgc); ///< PDG code -> resonance id
48 
49  bool IsBaryonResonance (int pdgc); ///< is input a baryon resonance?
50  bool IsDelta (Resonance_t res); ///< is it a Delta resonance?
51  bool IsN (Resonance_t res); ///< is it an N resonance?
52  double Mass (Resonance_t res); ///< resonance mass (GeV)
53  double Width (Resonance_t res); ///< resonance width (GeV)
54  double BWNorm (Resonance_t res,
55  double N0ResMaxNWidths=6,
56  double N2ResMaxNWidths=2,
57  double GnResMaxNWidths=4); ///< breit-wigner normalization factor
58  int OrbitalAngularMom (Resonance_t res); ///< orbital angular momentum
59  int ResonanceIndex (Resonance_t res); ///< resonance idx, quark model / SU(6)
60  int Isospin (Resonance_t res);
61  int AngularMom (Resonance_t res);
62  int Cjsgn_plus (Resonance_t res);
63  int Dsgn (Resonance_t res);
64 /*
65  // Not used in the latest version
66  double VectorPhase (Resonance_t res);
67  double AxialPhase (Resonance_t res);
68  double CV40 (Resonance_t res);
69  double CA50 (Resonance_t res);
70 */
71 
72  } // res namespace
73  } // utils namespace
74 } // genie namespace
75 
76 #endif // _BARYON_RESONANCE_UTILS_H_
bool IsDelta(Resonance_t res)
is it a Delta resonance?
Resonance_t FromString(const char *res)
string -&gt; resonance id
double Mass(Resonance_t res)
resonance mass (GeV)
double Width(Resonance_t res)
resonance width (GeV)
int AngularMom(Resonance_t res)
double BWNorm(Resonance_t res, double N0ResMaxNWidths=6, double N2ResMaxNWidths=2, double GnResMaxNWidths=4)
breit-wigner normalization factor
enum genie::EResonance Resonance_t
bool IsN(Resonance_t res)
is it an N resonance?
int Cjsgn_plus(Resonance_t res)
int PdgCode(Resonance_t res, int Q)
(resonance id, charge) -&gt; PDG code
int OrbitalAngularMom(Resonance_t res)
orbital angular momentum
Resonance_t FromPdgCode(int pdgc)
PDG code -&gt; resonance id.
int Dsgn(Resonance_t res)
const char * AsString(Resonance_t res)
resonance id -&gt; string
bool IsBaryonResonance(int pdgc)
is input a baryon resonance?
int Isospin(Resonance_t res)
int ResonanceIndex(Resonance_t res)
resonance idx, quark model / SU(6)