BmnRoot
26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Toggle main menu visibility
Loading...
Searching...
No Matches
MpdDCMSMMGenerator.h
Go to the documentation of this file.
1
// -------------------------------------------------------------------------
2
// ----- MpdDCMSMMGenerator header file -----
3
// ----- Created 27-AUG-2019 by Igor Rufanov -----
4
// -------------------------------------------------------------------------
5
// The MpdDCMSMMGenerator reads the CAS-SMM-evt.out file from DCM-SMM
6
// ( Dubna Cascade Model + Statistical Multifragmentation Model).
7
// PHYS REV C 95, 014902 (2017) & Phys Rep 257 (1995) 133.
8
// The code of the model was provided by Alexander Botvina.
9
10
#ifndef MPDDCMSMMGENERATOR_H
11
#define MPDDCMSMMGENERATOR_H
12
13
#define GZIP_SUPPORT
// version with gz support
14
15
#include "FairGenerator.h"
16
17
#include <
TFile.h
>
18
#include <
TH1D.h
>
19
#include <
TH2D.h
>
20
#include <
TString.h
>
21
22
#ifdef GZIP_SUPPORT
23
#include <zlib.h>
24
#endif
25
26
class
MpdDCMSMMGenerator
:
public
FairGenerator
27
{
28
public
:
29
/** Default constructor without arguments should not be used. **/
30
MpdDCMSMMGenerator
();
31
/** Standard constructor. **/
32
MpdDCMSMMGenerator
(
const
char
* fileName);
33
/** Destructor. **/
34
~MpdDCMSMMGenerator
();
35
36
Bool_t
ReadEvent
(FairPrimaryGenerator* primGen);
37
Bool_t
SkipEvents
(
Int_t
count);
38
39
Int_t
FindPDGCodeParticipant
(
Int_t
A,
Int_t
S,
Int_t
Z,
Float_t
mass,
Double_t
& massFactor);
40
Int_t
FindPDGCodeSpectator
(
Int_t
N,
Int_t
Z,
Int_t
& dN);
41
42
Int_t
RegisterIons
(
void
);
43
44
private
:
45
#ifdef GZIP_SUPPORT
46
gzFile
fInputFile
;
//! Input file
47
#else
48
FILE*
fInputFile
;
//! Input file
49
#endif
50
51
TString
fFileName
;
// Input file name
52
53
TString
fBoostType
;
// "None" MPD, "CmsFixed" BM@N, "CmsFixedInverted" SRC, "FixedFixedInverted" SRC.
54
Bool_t
fUseLorentzBoost
;
55
Double_t
fBoostBeta
;
56
Double_t
fBoostGamma
;
57
58
Bool_t
fSpectatorsON
;
// includes spectators (with heavy ions) into MC
59
static
const
Int_t
fZMax
= 82;
// maximal charge of ions in MC
60
Int_t
fN1
[
fZMax
+ 1] = {0};
//[fZMax+1] region of barion number for given Z for registered ions
61
Int_t
fN2
[
fZMax
+ 1] = {0};
//[fZMax+1] region of barion number for given Z for registered ions
62
static
const
Int_t
fBMax
= 208;
// maximal baryon charge of ions in MC
63
Int_t
fZ1
[
fBMax
+ 1] = {0};
//[fBMax+1] region of Z for given B for registered ions
64
Int_t
fZ2
[
fBMax
+ 1] = {0};
//[fBMax+1] region of Z for given B for registered ions
65
66
Int_t
fInputFileVersion
;
// 0 - old version, 1 - current version
67
68
// read the next line of the input file into 'line' (at most 'size' - 1 characters)
69
// return kFALSE if no line was read: at the end of the file or because of a read error, see GetReadError()
70
Bool_t
ReadLine
(
char
* line,
Int_t
size);
71
// whether the end of the input file has been reached
72
Bool_t
IsEndOfFile
();
73
// reason why the last line was not read: the end of the file or the message of the read error
74
TString
GetReadError
();
75
76
MpdDCMSMMGenerator
(
const
MpdDCMSMMGenerator
&);
77
MpdDCMSMMGenerator
&
operator=
(
const
MpdDCMSMMGenerator
&);
78
79
ClassDef
(
MpdDCMSMMGenerator
, 2);
80
};
81
82
#endif
Bool_t
bool Bool_t
Int_t
int Int_t
Float_t
float Float_t
Double_t
double Double_t
ClassDef
#define ClassDef(name, id)
TFile.h
TH1D.h
TH2D.h
TString.h
FairGenerator
MpdDCMSMMGenerator::fFileName
TString fFileName
Input file.
Definition
MpdDCMSMMGenerator.h:51
MpdDCMSMMGenerator::fN2
Int_t fN2[fZMax+1]
Definition
MpdDCMSMMGenerator.h:61
MpdDCMSMMGenerator::fInputFile
gzFile fInputFile
Definition
MpdDCMSMMGenerator.h:46
MpdDCMSMMGenerator::fBoostBeta
Double_t fBoostBeta
Definition
MpdDCMSMMGenerator.h:55
MpdDCMSMMGenerator::fInputFileVersion
Int_t fInputFileVersion
Definition
MpdDCMSMMGenerator.h:66
MpdDCMSMMGenerator::fBoostGamma
Double_t fBoostGamma
Definition
MpdDCMSMMGenerator.h:56
MpdDCMSMMGenerator::MpdDCMSMMGenerator
MpdDCMSMMGenerator()
Default constructor without arguments should not be used.
Definition
MpdDCMSMMGenerator.cxx:21
MpdDCMSMMGenerator::fZ2
Int_t fZ2[fBMax+1]
Definition
MpdDCMSMMGenerator.h:64
MpdDCMSMMGenerator::~MpdDCMSMMGenerator
~MpdDCMSMMGenerator()
Destructor.
Definition
MpdDCMSMMGenerator.cxx:123
MpdDCMSMMGenerator::fSpectatorsON
Bool_t fSpectatorsON
Definition
MpdDCMSMMGenerator.h:58
MpdDCMSMMGenerator::RegisterIons
Int_t RegisterIons(void)
Definition
MpdDCMSMMGenerator.cxx:635
MpdDCMSMMGenerator::fN1
Int_t fN1[fZMax+1]
Definition
MpdDCMSMMGenerator.h:60
MpdDCMSMMGenerator::FindPDGCodeSpectator
Int_t FindPDGCodeSpectator(Int_t N, Int_t Z, Int_t &dN)
Definition
MpdDCMSMMGenerator.cxx:600
MpdDCMSMMGenerator::operator=
MpdDCMSMMGenerator & operator=(const MpdDCMSMMGenerator &)
MpdDCMSMMGenerator::fUseLorentzBoost
Bool_t fUseLorentzBoost
Definition
MpdDCMSMMGenerator.h:54
MpdDCMSMMGenerator::fZ1
Int_t fZ1[fBMax+1]
Definition
MpdDCMSMMGenerator.h:63
MpdDCMSMMGenerator::fBMax
static const Int_t fBMax
Definition
MpdDCMSMMGenerator.h:62
MpdDCMSMMGenerator::fBoostType
TString fBoostType
Definition
MpdDCMSMMGenerator.h:53
MpdDCMSMMGenerator::GetReadError
TString GetReadError()
Definition
MpdDCMSMMGenerator.cxx:329
MpdDCMSMMGenerator::MpdDCMSMMGenerator
MpdDCMSMMGenerator(const MpdDCMSMMGenerator &)
MpdDCMSMMGenerator::fZMax
static const Int_t fZMax
Definition
MpdDCMSMMGenerator.h:59
MpdDCMSMMGenerator::FindPDGCodeParticipant
Int_t FindPDGCodeParticipant(Int_t A, Int_t S, Int_t Z, Float_t mass, Double_t &massFactor)
Definition
MpdDCMSMMGenerator.cxx:388
MpdDCMSMMGenerator::ReadLine
Bool_t ReadLine(char *line, Int_t size)
Definition
MpdDCMSMMGenerator.cxx:309
MpdDCMSMMGenerator::ReadEvent
Bool_t ReadEvent(FairPrimaryGenerator *primGen)
Definition
MpdDCMSMMGenerator.cxx:138
MpdDCMSMMGenerator::IsEndOfFile
Bool_t IsEndOfFile()
Definition
MpdDCMSMMGenerator.cxx:319
MpdDCMSMMGenerator::SkipEvents
Bool_t SkipEvents(Int_t count)
Definition
MpdDCMSMMGenerator.cxx:345
TString
generators
MpdDCMSMMGenerator.h
Generated on
for BmnRoot by
1.17.0