![]() |
|
|||
File indexing completed on 2025-04-19 09:09:43
0001 #ifndef AHADIC_Tools_Constituents_H 0002 #define AHADIC_Tools_Constituents_H 0003 0004 #include "ATOOLS/Phys/Flavour.H" 0005 #include <map> 0006 #include <string> 0007 0008 0009 namespace AHADIC { 0010 0011 0012 class ConstituentCharacteristic { 0013 public: 0014 double m_mass; 0015 int m_ispin; 0016 double m_weight, m_smearing; 0017 ConstituentCharacteristic(double _m=0., int _is=-1, double _wt=0.) : 0018 m_mass(_m), m_ispin(_is), m_weight(_wt) {} 0019 0020 double Mass() { return m_mass; } 0021 double TotWeight() { return m_weight; } 0022 int ISpin() { return m_ispin; } 0023 }; 0024 0025 0026 0027 0028 typedef std::map<ATOOLS::Flavour,ConstituentCharacteristic *> FlavCCMap; 0029 typedef FlavCCMap::iterator FlavCCMap_Iterator; 0030 0031 class Constituents { 0032 double m_minmass, m_maxmass; 0033 ATOOLS::Flavour m_lightest; 0034 public: 0035 FlavCCMap CCMap; 0036 Constituents(bool=true); 0037 ~Constituents(); 0038 0039 double Mass(const ATOOLS::Flavour & flav); 0040 double MinMass(); 0041 double MaxMass(); 0042 double TotWeight(const ATOOLS::Flavour & flav); 0043 int ISpin(ATOOLS::Flavour & flav); 0044 0045 const ATOOLS::Flavour & LightestConstituent() const { return m_lightest; } 0046 void PrintConstituents(); 0047 }; 0048 0049 0050 /*! 0051 \file 0052 \brief Contains the classes AHADIC::ConstituentCharacteristic and AHADIC::Constituents. 0053 */ 0054 0055 /*! 0056 \class ConstituentCharacteristic 0057 \brief Includes all information (constituent mass, spin d.o.f., flavour weight, 0058 spin weight and angular smearing parameter) for a flavour that is needed in the cluster 0059 hadronisation model. It is accessible through the class Constituents. 0060 0061 This class is initialised by the AHADIC::Hadronisation_Parameters and made available to 0062 the rest of the code through a corresponding Get-method, 0063 AHADIC::Hadronisation_Parameters::GetConstituents(). 0064 0065 The total weights are given in the following way: 0066 - u, d quarks: \f$wt = 1\f$ 0067 - s quarks: \f$wt = \chi_S\f$ 0068 - \f$ud_0\f$ diquarks: \f$wt = \chi_B\f$ 0069 - \f$sd_0\f$, \f$su_0\f$ diquarks: \f$wt = \chi_{SQ}\chi_B\f$ 0070 - \f$dd_1\f$, \f$uu_1\f$ diquarks: \f$wt = 3\chi_1\chi_B\f$ 0071 - \f$sd_1\f$, \f$su_1\f$ diquarks: \f$wt = 3\chi_1\chi_{SQ}\chi_B\f$ 0072 - \f$ss_1\f$ diquarks: \f$wt = 3\chi_1\chi_{SS}\chi_B\f$ 0073 0074 Here \f$\chi_{B, S}\f$ are the baryon and strangeness suppression parameters, respectively. 0075 With the suppression factors \f$\chi_{SQ}\f$ and \f$\chi_{SS}\f$ for dingle and double 0076 strange diquarks and \f$chi_1\f$ for spin-1 diquarks, the sum of weights for the different 0077 diquarks species \f$\Sigma\f$ is given by 0078 0079 \f$\Sigma = 2+\chi_S+\chi_B\cdot[1+2\chi_{SQ}+3\chi_1(2+2\chi_{SQ}+\chi_{SS})]\f$. 0080 0081 Since the methods are just simple access methods, no further documentation seems to be 0082 neccessary. 0083 */ 0084 /*! 0085 \class Constituents 0086 \brief A wrapper around a searchable map, where flavours are connected with their respective 0087 ConstituentCharacteristic. 0088 */ 0089 //////////////////////////////////////////////////////////////////////////////////////////////////// 0090 // Description of member variables for Constituents 0091 //////////////////////////////////////////////////////////////////////////////////////////////////// 0092 /*! 0093 \var FlavCCMap Constituents::CCMap 0094 \brief The map of flavours and ConstituentCharacteristic's, on which this class operates and 0095 which is its actual core. 0096 */ 0097 /*! 0098 \var double Constituents::m_minmass 0099 \brief The mass of the lightest constituent (no gluon), usually a d or u quark. 0100 */ 0101 //////////////////////////////////////////////////////////////////////////////////////////////////// 0102 // Description of member methods for Constituents 0103 //////////////////////////////////////////////////////////////////////////////////////////////////// 0104 /*! 0105 \fn Constituents::Constituents(bool=false) 0106 \brief Constructor, the flag indicates whether diquarks are included. 0107 0108 The Constituents are constructed by the Hadronisation_Parameters, and actually use them in 0109 order to fill the Constituents::CCMap. To this end, an explicit iteration is made over all 0110 (light) flavours where masses and parts of the flavour weights are taken from the 0111 Hadronisation_Parameters and the spin weights are fixed in the code (2 for quarks, 1 or 3 0112 for scalar or vector diquarks, respectively). 0113 */ 0114 /*! 0115 \fn Constituents::~Constituents() 0116 \brief Deletes the CCMap. 0117 */ 0118 /*! 0119 \fn double Constituents::MinMass() 0120 \brief The constituent mass of the lightest constituent. 0121 */ 0122 /*! 0123 \fn double Constituents::Mass(ATOOLS::Flavour & flav) 0124 \brief The constituent mass of a flavour. 0125 0126 If the flavour is found in the CCMap, its constituent mass is returned; 0127 if not, its original mass from the class ATOOLS::Flavour is returned. 0128 */ 0129 /*! 0130 \fn double Constituents::TotWeight(ATOOLS::Flavour & flav) 0131 \brief The total weight for a given flavour. 0132 0133 If the flavour is found in the CCMap, its total weight (namely the total weight, given in 0134 AHADIC::ConstituentCharacteristic = flavour weight times spin weight) is returned; if not 0135 the method yields 0. 0136 */ 0137 /*! 0138 \fn double Constituents::ISpin(ATOOLS::Flavour & flav) 0139 \brief The integer spin (twice the physical spin) for a given flavour. 0140 0141 If the flavour is found in the CCMap, its integer spin is returned; if not the method 0142 yields 0. 0143 */ 0144 /*! 0145 \fn double Constituents::PrintConstituents() 0146 \brief Prints the ingedients of the CCMap. 0147 */ 0148 } 0149 0150 #endif
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
![]() ![]() |