BmnRoot 26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Loading...
Searching...
No Matches
MpdUnigenGenerator Class Reference

#include <MpdUnigenGenerator.h>

Inheritance diagram for MpdUnigenGenerator:
Collaboration diagram for MpdUnigenGenerator:

Public Member Functions

 MpdUnigenGenerator ()
 MpdUnigenGenerator (TString fileName, Bool_t isSpectator=kFALSE)
 ~MpdUnigenGenerator () override=default
Long64_t GetNEntries ()
Bool_t ReadEvent (FairPrimaryGenerator *primGen) override
Int_t RegisterIons ()
void SkipEvents (Int_t ev)
void SetEventPlane (Double_t phiMin, Double_t phiMax)
 MpdUnigenGenerator ()
 MpdUnigenGenerator (TString fileName, Bool_t isSpectator=kFALSE)
 ~MpdUnigenGenerator () override=default
Long64_t GetNEntries ()
Bool_t ReadEvent (FairPrimaryGenerator *primGen) override
Int_t RegisterIons ()
void SkipEvents (Int_t ev)
void SetEventPlane (Double_t phiMin, Double_t phiMax)

Private Member Functions

Int_t GetIonCharge (Int_t pdgCode) const
Int_t GetIonLambdas (Int_t pdgCode)
Int_t GetIonMass (Int_t pdgCode)
 MpdUnigenGenerator (const MpdUnigenGenerator &)
MpdUnigenGenerator & operator= (const MpdUnigenGenerator &)
Int_t GetIonCharge (Int_t pdgCode) const
Int_t GetIonLambdas (Int_t pdgCode)
Int_t GetIonMass (Int_t pdgCode)
 MpdUnigenGenerator (const MpdUnigenGenerator &)
MpdUnigenGenerator & operator= (const MpdUnigenGenerator &)

Private Attributes

std::random_device random_device_
std::mt19937 random_engine_
std::uniform_real_distribution< double > uniform_real_distribution_
Long64_t fEventNumber
Long64_t fNEntries
TFile * fInFile
TTree * fInTree
UEvent * fEvent
URun * fRun
UParticle * fParticle
Bool_t fSpectatorsON
Double_t fPhiMin
Double_t fPhiMax
Bool_t fEventPlaneSet
std::map< TString, FairIon * > fIonMap
 Map from ion name to FairIon.
Double_t fGammaCM = 0.
Double_t fBetaCM = 0.

Static Private Attributes

static const Int_t kPdgLambda = 10000000
static const Int_t kPdgCharge = 10000
static const Int_t kPdgMass = 10

Detailed Description

Definition at line 27 of file MpdUnigenGenerator.h.

Constructor & Destructor Documentation

◆ MpdUnigenGenerator() [1/6]

MpdUnigenGenerator::MpdUnigenGenerator ( )

Definition at line 5 of file MpdUnigenGenerator.cxx.

References fEvent, fEventNumber, fEventPlaneSet, fInFile, fInTree, fParticle, fPhiMax, fPhiMin, fRun, and fSpectatorsON.

Referenced by MpdUnigenGenerator(), and operator=().

Here is the caller graph for this function:

◆ MpdUnigenGenerator() [2/6]

MpdUnigenGenerator::MpdUnigenGenerator ( TString fileName,
Bool_t isSpectator = kFALSE )
explicit

Definition at line 19 of file MpdUnigenGenerator.cxx.

References TMath::Abs(), TString::Data(), fBetaCM, fEvent, fEventNumber, fEventPlaneSet, fGammaCM, fInFile, fInTree, fNEntries, fParticle, fPhiMax, fPhiMin, fRun, fSpectatorsON, RegisterIons(), and TMath::Sqrt().

Here is the call graph for this function:

◆ ~MpdUnigenGenerator() [1/2]

MpdUnigenGenerator::~MpdUnigenGenerator ( )
overridedefault

◆ MpdUnigenGenerator() [3/6]

MpdUnigenGenerator::MpdUnigenGenerator ( const MpdUnigenGenerator & )
private

References MpdUnigenGenerator().

Here is the call graph for this function:

◆ MpdUnigenGenerator() [4/6]

MpdUnigenGenerator::MpdUnigenGenerator ( )

◆ MpdUnigenGenerator() [5/6]

MpdUnigenGenerator::MpdUnigenGenerator ( TString fileName,
Bool_t isSpectator = kFALSE )
explicit

◆ ~MpdUnigenGenerator() [2/2]

MpdUnigenGenerator::~MpdUnigenGenerator ( )
overridedefault

◆ MpdUnigenGenerator() [6/6]

MpdUnigenGenerator::MpdUnigenGenerator ( const MpdUnigenGenerator & )
private

References MpdUnigenGenerator().

Here is the call graph for this function:

Member Function Documentation

◆ GetIonCharge() [1/2]

Int_t MpdUnigenGenerator::GetIonCharge ( Int_t pdgCode) const
inlineprivate

Definition at line 77 of file MpdUnigenGenerator.h.

References kPdgCharge, and kPdgLambda.

Referenced by ReadEvent(), and RegisterIons().

Here is the caller graph for this function:

◆ GetIonCharge() [2/2]

Int_t MpdUnigenGenerator::GetIonCharge ( Int_t pdgCode) const
inlineprivate

Definition at line 77 of file MpdUnigenGenerator.h.

References kPdgCharge, and kPdgLambda.

◆ GetIonLambdas() [1/2]

Int_t MpdUnigenGenerator::GetIonLambdas ( Int_t pdgCode)
inlineprivate

Definition at line 78 of file MpdUnigenGenerator.h.

References kPdgLambda.

Referenced by ReadEvent(), and RegisterIons().

Here is the caller graph for this function:

◆ GetIonLambdas() [2/2]

Int_t MpdUnigenGenerator::GetIonLambdas ( Int_t pdgCode)
inlineprivate

Definition at line 78 of file MpdUnigenGenerator.h.

References kPdgLambda.

◆ GetIonMass() [1/2]

Int_t MpdUnigenGenerator::GetIonMass ( Int_t pdgCode)
inlineprivate

Definition at line 79 of file MpdUnigenGenerator.h.

References kPdgCharge, and kPdgMass.

Referenced by ReadEvent(), and RegisterIons().

Here is the caller graph for this function:

◆ GetIonMass() [2/2]

Int_t MpdUnigenGenerator::GetIonMass ( Int_t pdgCode)
inlineprivate

Definition at line 79 of file MpdUnigenGenerator.h.

References kPdgCharge, and kPdgMass.

◆ GetNEntries() [1/2]

Long64_t MpdUnigenGenerator::GetNEntries ( )
inline

Definition at line 33 of file MpdUnigenGenerator.h.

References fNEntries.

◆ GetNEntries() [2/2]

Long64_t MpdUnigenGenerator::GetNEntries ( )
inline

Definition at line 33 of file MpdUnigenGenerator.h.

References fNEntries.

◆ operator=() [1/2]

MpdUnigenGenerator & MpdUnigenGenerator::operator= ( const MpdUnigenGenerator & )
private

References MpdUnigenGenerator().

Here is the call graph for this function:

◆ operator=() [2/2]

MpdUnigenGenerator & MpdUnigenGenerator::operator= ( const MpdUnigenGenerator & )
private

References MpdUnigenGenerator().

Here is the call graph for this function:

◆ ReadEvent() [1/2]

Bool_t MpdUnigenGenerator::ReadEvent ( FairPrimaryGenerator * primGen)
override

Definition at line 88 of file MpdUnigenGenerator.cxx.

References TMath::ATan2(), TMath::Cos(), fBetaCM, fEvent, fEventNumber, fEventPlaneSet, fGammaCM, fInFile, fInTree, fNEntries, fParticle, gCoordinateSystem, GetIonCharge(), GetIonLambdas(), GetIonMass(), kPdgLambda, random_engine_, TMath::Sin(), TMath::Sqrt(), sysLaboratory, and uniform_real_distribution_.

Here is the call graph for this function:

◆ ReadEvent() [2/2]

Bool_t MpdUnigenGenerator::ReadEvent ( FairPrimaryGenerator * primGen)
override

◆ RegisterIons() [1/2]

Int_t MpdUnigenGenerator::RegisterIons ( void )

Definition at line 194 of file MpdUnigenGenerator.cxx.

References fEvent, fInTree, fIonMap, GetIonCharge(), GetIonLambdas(), GetIonMass(), and UParticle::GetPdg().

Referenced by MpdUnigenGenerator().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ RegisterIons() [2/2]

Int_t MpdUnigenGenerator::RegisterIons ( )

◆ SetEventPlane() [1/2]

void MpdUnigenGenerator::SetEventPlane ( Double_t phiMin,
Double_t phiMax )
inline

◆ SetEventPlane() [2/2]

void MpdUnigenGenerator::SetEventPlane ( Double_t phiMin,
Double_t phiMax )
inline

◆ SkipEvents() [1/2]

void MpdUnigenGenerator::SkipEvents ( Int_t ev)
inline

Definition at line 37 of file MpdUnigenGenerator.h.

References fEventNumber.

◆ SkipEvents() [2/2]

void MpdUnigenGenerator::SkipEvents ( Int_t ev)
inline

Definition at line 37 of file MpdUnigenGenerator.h.

References fEventNumber.

Member Data Documentation

◆ fBetaCM

Double_t MpdUnigenGenerator::fBetaCM = 0.
private

Definition at line 75 of file MpdUnigenGenerator.h.

Referenced by MpdUnigenGenerator(), and ReadEvent().

◆ fEvent

UEvent * MpdUnigenGenerator::fEvent
private

◆ fEventNumber

Long64_t MpdUnigenGenerator::fEventNumber
private

Definition at line 56 of file MpdUnigenGenerator.h.

Referenced by MpdUnigenGenerator(), MpdUnigenGenerator(), ReadEvent(), and SkipEvents().

◆ fEventPlaneSet

Bool_t MpdUnigenGenerator::fEventPlaneSet
private

◆ fGammaCM

Double_t MpdUnigenGenerator::fGammaCM = 0.
private

Definition at line 74 of file MpdUnigenGenerator.h.

Referenced by MpdUnigenGenerator(), and ReadEvent().

◆ fInFile

TFile * MpdUnigenGenerator::fInFile
private

Definition at line 58 of file MpdUnigenGenerator.h.

Referenced by MpdUnigenGenerator(), MpdUnigenGenerator(), and ReadEvent().

◆ fInTree

TTree * MpdUnigenGenerator::fInTree
private

◆ fIonMap

std::map< TString, FairIon * > MpdUnigenGenerator::fIonMap
private

Definition at line 68 of file MpdUnigenGenerator.h.

Referenced by RegisterIons().

◆ fNEntries

Long64_t MpdUnigenGenerator::fNEntries
private

Definition at line 57 of file MpdUnigenGenerator.h.

Referenced by MpdUnigenGenerator(), GetNEntries(), and ReadEvent().

◆ fParticle

UParticle * MpdUnigenGenerator::fParticle
private

Definition at line 62 of file MpdUnigenGenerator.h.

Referenced by MpdUnigenGenerator(), MpdUnigenGenerator(), and ReadEvent().

◆ fPhiMax

Double_t MpdUnigenGenerator::fPhiMax
private

Definition at line 65 of file MpdUnigenGenerator.h.

Referenced by MpdUnigenGenerator(), MpdUnigenGenerator(), and SetEventPlane().

◆ fPhiMin

Double_t MpdUnigenGenerator::fPhiMin
private

Definition at line 65 of file MpdUnigenGenerator.h.

Referenced by MpdUnigenGenerator(), MpdUnigenGenerator(), and SetEventPlane().

◆ fRun

URun * MpdUnigenGenerator::fRun
private

Definition at line 61 of file MpdUnigenGenerator.h.

Referenced by MpdUnigenGenerator(), and MpdUnigenGenerator().

◆ fSpectatorsON

Bool_t MpdUnigenGenerator::fSpectatorsON
private

Definition at line 63 of file MpdUnigenGenerator.h.

Referenced by MpdUnigenGenerator(), and MpdUnigenGenerator().

◆ kPdgCharge

const Int_t MpdUnigenGenerator::kPdgCharge = 10000
staticprivate

Definition at line 71 of file MpdUnigenGenerator.h.

Referenced by GetIonCharge(), and GetIonMass().

◆ kPdgLambda

const Int_t MpdUnigenGenerator::kPdgLambda = 10000000
staticprivate

Definition at line 70 of file MpdUnigenGenerator.h.

Referenced by GetIonCharge(), GetIonLambdas(), and ReadEvent().

◆ kPdgMass

const Int_t MpdUnigenGenerator::kPdgMass = 10
staticprivate

Definition at line 72 of file MpdUnigenGenerator.h.

Referenced by GetIonMass().

◆ random_device_

std::random_device MpdUnigenGenerator::random_device_
private

Definition at line 53 of file MpdUnigenGenerator.h.

Referenced by SetEventPlane().

◆ random_engine_

std::mt19937 MpdUnigenGenerator::random_engine_
private

Definition at line 54 of file MpdUnigenGenerator.h.

Referenced by ReadEvent(), and SetEventPlane().

◆ uniform_real_distribution_

std::uniform_real_distribution< double > MpdUnigenGenerator::uniform_real_distribution_
private

Definition at line 55 of file MpdUnigenGenerator.h.

Referenced by ReadEvent(), and SetEventPlane().


The documentation for this class was generated from the following files: