1 /******************************************************************************
2 * T H E R M I N A T O R *
3 * THERMal heavy-IoN generATOR *
6 * Authors of the model: Wojciech Broniowski, Wojciech.Broniowski@ifj.edu.pl, *
7 * Wojciech Florkowski, Wojciech.Florkowski@ifj.edu.pl *
8 * Authors of the code: Adam Kisiel, kisiel@if.pw.edu.pl *
9 * Tomasz Taluc, ttaluc@if.pw.edu.pl *
10 * Code designers: Adam Kisiel, Tomasz Taluc, Wojciech Broniowski, *
11 * Wojciech Florkowski *
13 * For the detailed description of the program and furhter references *
14 * to the description of the model plesase refer to: nucl-th/0504047, *
15 * accessibile at: http://www.arxiv.org/nucl-th/0504047 *
17 * Homepage: http://hirg.if.pw.edu.pl/en/therminator/ *
19 * This code can be freely used and redistributed. However if you decide to *
20 * make modifications to the code, please contact the authors, especially *
21 * if you plan to publish the results obtained with such modified code. *
22 * Any publication of results obtained using this code must include the *
23 * reference to nucl-th/0504047 and the published version of it, when *
26 *****************************************************************************/
27 #ifndef _BFPW_PARTICLE_TYPE_
28 #define _BFPW_PARTICLE_TYPE_
40 int mNumber; //particle number
42 int mStrangeness; //strangness
43 int mBarionN; //barion number
48 float mGamma; //szerokosc polowkowa
49 string mName; //particle name
51 int mDecayChannelCount2; //number of channels in this case
52 int mDecayChannelCount3; //number of channels in this case
57 ParticleType(); //constructor
58 ParticleType(const ParticleType& aParticleType); //copying constructor
59 ParticleType& operator=(const ParticleType& aParticleType); //copying constructor
60 ~ParticleType(); //destructor
62 int GetNumber() const;
63 float GetMass() const;
64 int GetStrangeness() const;
65 int GetBarionN() const;
66 int GetCharmN() const;
67 float GetSpin() const;
70 float GetGamma() const;
71 string GetName() const;
72 int GetDecayChannelCount2() const;
73 int GetDecayChannelCount3() const;
75 int GetPDGCode() const;
76 float GetFMax() const;
78 void SetNumber(int aNumber);
79 void SetMass(float aMass);
80 void SetStrangeness(int aStrangeness);
81 void SetBarionN(int aBarionN);
82 void SetCharmN(int aCharmN);
83 void SetSpin(float aSpin);
85 void SetI3(float aI3);
86 void SetGamma(float aGamma);
87 void SetName(char *aName);
88 void SetDecayChannelCount2(int aDCCount2);
89 void SetDecayChannelCount3(int aDCCount3);
90 void SetPDGCode(int aCode);
91 void SetFMax(float aFMax);
93 DecayTable* GetTable() const;
94 void AddDecayChannel(DecayChannel aChannel);
96 void WriteParticle(int);
98 static int GetParticleTypeNumber(std::string aPartName);