BmnRoot
26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Toggle main menu visibility
Loading...
Searching...
No Matches
MpdHypYPtGenerator.h
Go to the documentation of this file.
1
// -------------------------------------------------------------------------
2
// ----- CbmAnaHypYPtGenerator header file -----
3
// ----- Created 03/10/04 by E. Kryshen -----
4
// ----- Updated 10/02/10 by A. Zinchenko for MPD (with name change) -----
5
// -------------------------------------------------------------------------
6
7
/** CbmAnaHypYPtGenerator.h
8
** @author Evgeny Kryshen <e.kryshen@gsi.de>
9
**
10
** The CbmAnaHypYPtGenerator generates particles with a given
11
** distribution over pt (dn/dpt = pt*exp(-mt/T)
12
** and rapidity (Gaussian) with fixed multiplicity per event.
13
** Derived from FairGenerator.
14
*/
15
16
#ifndef MPDHYPYPTGENERATOR_H
17
#define MPDHYPYPTGENERATOR_H
18
19
#include "FairGenerator.h"
20
#include "
TF1.h
"
21
22
using namespace
std
;
23
24
class
FairPrimaryGenerator;
25
26
class
MpdHypYPtGenerator
:
public
FairGenerator
27
{
28
public
:
29
/** Default constructor. */
30
MpdHypYPtGenerator
();
31
32
/** Constructor with PDG-ID, multiplicity
33
**@param pdgid Particle type (PDG encoding)
34
**@param mult Multiplicity (default is 1)
35
**@param yield
36
**/
37
MpdHypYPtGenerator
(
Int_t
pdgid,
Int_t
mult = 1,
Double_t
yield = -1.0);
38
39
/** Destructor */
40
virtual
~MpdHypYPtGenerator
() {};
41
42
/** Modifiers */
43
inline
void
SetPDGType
(
Int_t
pdg) {
fPDGType
= pdg; };
44
inline
void
SetMultiplicity
(
Int_t
mult) {
fMult
= mult; };
45
// inline void SetDistributionPt (Double_t T=0.154319) {fT=T;};
46
inline
void
SetDistributionPt
(
Double_t
T = 0.223) {
fT
= T; };
// AZ - for Omega- @ 9 GeV/n AuAu UrQMD
47
// inline void SetDistributionY (Double_t y0=1.98604, Double_t sigma=0.617173) {fY0=y0;fSigma=sigma;};
48
inline
void
SetDistributionY
(
Double_t
y0 = 0,
Double_t
sigma = 0.72)
49
{
50
fY0
= y0;
51
fSigma
= sigma;
52
};
// AZ - for Omega- @ 9 GeV/n AuAu UrQMD
53
inline
void
SetRangePt
(
Double_t
ptMin = 0,
Double_t
ptMax = 3)
54
{
55
fPtMin
= ptMin;
56
fPtMax
= ptMax;
57
};
58
59
/** Initializer */
60
Bool_t
Init
();
61
62
/** Creates an event with given type and multiplicity.
63
**@param primGen pointer to the CbmPrimaryGenerator
64
*/
65
virtual
Bool_t
ReadEvent
(FairPrimaryGenerator* primGen);
66
67
private
:
68
Int_t
fPDGType
;
///< Particle type (PDG encoding)
69
Int_t
fMult
;
///< Multiplicity
70
Double_t
fT
;
///< Temperature in the Pt distribution
71
Double_t
fY0
;
///< Mean rapidity
72
Double_t
fSigma
;
///< Simga in the rapidity distribution
73
Double_t
fPtMin
;
///< Max value of Pt
74
Double_t
fPtMax
;
///< Min value of Pt
75
Double_t
fPDGMass
;
///< Particle mass [GeV]
76
TF1
*
fDistPt
;
//! Pointer to the Pt function
77
Double_t
fYield
;
///< yield (particle / event)
78
79
ClassDef
(
MpdHypYPtGenerator
, 1);
80
};
81
82
#endif
Bool_t
bool Bool_t
Int_t
int Int_t
Double_t
double Double_t
ClassDef
#define ClassDef(name, id)
TF1.h
FairGenerator
MpdHypYPtGenerator::fPDGType
Int_t fPDGType
Particle type (PDG encoding).
Definition
MpdHypYPtGenerator.h:68
MpdHypYPtGenerator::fYield
Double_t fYield
Pointer to the Pt function.
Definition
MpdHypYPtGenerator.h:77
MpdHypYPtGenerator::fPDGMass
Double_t fPDGMass
Particle mass [GeV].
Definition
MpdHypYPtGenerator.h:75
MpdHypYPtGenerator::fT
Double_t fT
Temperature in the Pt distribution.
Definition
MpdHypYPtGenerator.h:70
MpdHypYPtGenerator::fY0
Double_t fY0
Mean rapidity.
Definition
MpdHypYPtGenerator.h:71
MpdHypYPtGenerator::fSigma
Double_t fSigma
Simga in the rapidity distribution.
Definition
MpdHypYPtGenerator.h:72
MpdHypYPtGenerator::MpdHypYPtGenerator
MpdHypYPtGenerator()
Default constructor.
Definition
MpdHypYPtGenerator.cxx:17
MpdHypYPtGenerator::~MpdHypYPtGenerator
virtual ~MpdHypYPtGenerator()
Destructor.
Definition
MpdHypYPtGenerator.h:40
MpdHypYPtGenerator::ReadEvent
virtual Bool_t ReadEvent(FairPrimaryGenerator *primGen)
Creates an event with given type and multiplicity.
Definition
MpdHypYPtGenerator.cxx:60
MpdHypYPtGenerator::SetDistributionPt
void SetDistributionPt(Double_t T=0.223)
Definition
MpdHypYPtGenerator.h:46
MpdHypYPtGenerator::SetRangePt
void SetRangePt(Double_t ptMin=0, Double_t ptMax=3)
Definition
MpdHypYPtGenerator.h:53
MpdHypYPtGenerator::fMult
Int_t fMult
Multiplicity.
Definition
MpdHypYPtGenerator.h:69
MpdHypYPtGenerator::fPtMax
Double_t fPtMax
Min value of Pt.
Definition
MpdHypYPtGenerator.h:74
MpdHypYPtGenerator::fPtMin
Double_t fPtMin
Max value of Pt.
Definition
MpdHypYPtGenerator.h:73
MpdHypYPtGenerator::SetDistributionY
void SetDistributionY(Double_t y0=0, Double_t sigma=0.72)
Definition
MpdHypYPtGenerator.h:48
MpdHypYPtGenerator::Init
Bool_t Init()
Initializer.
Definition
MpdHypYPtGenerator.cxx:40
MpdHypYPtGenerator::SetPDGType
void SetPDGType(Int_t pdg)
Modifiers.
Definition
MpdHypYPtGenerator.h:43
MpdHypYPtGenerator::fDistPt
TF1 * fDistPt
Definition
MpdHypYPtGenerator.h:76
MpdHypYPtGenerator::SetMultiplicity
void SetMultiplicity(Int_t mult)
Definition
MpdHypYPtGenerator.h:44
TF1
std
Definition
json.hpp:4446
generators
MpdHypYPtGenerator.h
Generated on
for BmnRoot by
1.17.0