Skip to content

Commit bda3c18

Browse files
galoccogconesab
authored andcommitted
add a gRandom based random engine and fix units convertion
1 parent 8c9504f commit bda3c18

File tree

2 files changed

+31
-11
lines changed

2 files changed

+31
-11
lines changed
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
#ifndef EVT_TRANDOM_ENGINE_HH
2+
#define EVT_TRANDOM_ENGINE_HH
3+
4+
R__LOAD_LIBRARY(EvtGen)
5+
R__ADD_INCLUDE_PATH($EVTGEN_ROOT/include)
6+
7+
#include <TRandom.h>
8+
#include "EvtGenBase/EvtRandomEngine.hh"
9+
10+
class EvtTRandomEngine : public EvtRandomEngine {
11+
public:
12+
13+
EvtTRandomEngine(){
14+
gRandom->SetSeed(0);
15+
}
16+
17+
void setSeed(unsigned int seed){
18+
gRandom->SetSeed(seed);
19+
}
20+
21+
virtual double random()
22+
{
23+
return gRandom->Rndm();
24+
}
25+
};
26+
27+
#endif

MC/config/PWGDQ/EvtGen/GeneratorEvtGen.C

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,16 @@ R__ADD_INCLUDE_PATH($EVTGEN_ROOT/include)
33

44

55
#include "EvtGenBase/EvtStdHep.hh"
6-
#include "EvtGenBase/EvtRandomEngine.hh"
7-
#include "EvtGenBase/EvtSimpleRandomEngine.hh"
86
#include "EvtGen/EvtGen.hh"
97
#include "EvtGenBase/EvtParticle.hh"
108
#include "EvtGenBase/EvtPDL.hh"
119
#include "EvtGenBase/EvtParticleFactory.hh"
1210
#include "EvtGenExternal/EvtExternalGenList.hh"
1311
#include "EvtGenBase/EvtAbsRadCorr.hh"
14-
#include "EvtGenBase/EvtMTRandomEngine.hh"
1512
#include "EvtGenBase/EvtRandom.hh"
1613
#include "EvtGenBase/EvtReport.hh"
1714
#include "EvtGenExternal/EvtExternalGenList.hh"
15+
#include "EvtTRandomEngine.hh"
1816

1917
enum DecayModeEvt {kEvtAll=0, kEvtBJpsiDiElectron, kEvtBJpsi, kEvtBJpsiDiMuon, kEvtBPsiDiElectron, kEvtBPsiDiMuon, kEvtBSemiElectronic, kEvtHadronicD, kEvtHadronicDWithout4Bodies, kEvtChiToJpsiGammaToElectronElectron, kEvtChiToJpsiGammaToMuonMuon, kEvtSemiElectronic, kEvtBSemiMuonic, kEvtSemiMuonic, kEvtDiElectron, kEvtDiMuon, kEvtBPsiPrimeDiMuon, kEvtBPsiPrimeDiElectron, kEvtJpsiDiMuon, kEvtPsiPrimeJpsiDiElectron, kEvtPhiKK, kEvtOmega, kEvtLambda, kEvtHardMuons, kEvtElectronEM, kEvtDiElectronEM, kEvtGammaEM, kEvtBeautyUpgrade};
2018

@@ -52,12 +50,7 @@ protected:
5250
std::cout << "EVTGEN INITIALIZATION" << std::endl;
5351
mEvtstdhep = new EvtStdHep();
5452

55-
#ifdef EVTGEN_CPP11
56-
// Use the Mersenne-Twister generator (C++11 only)
57-
mEng = new EvtMTRandomEngine();
58-
#else
59-
mEng = new EvtSimpleRandomEngine();
60-
#endif
53+
mEng = new EvtTRandomEngine(); //the default seed of gRandom is 0
6154

6255
EvtRandom::setRandomEngine(mEng);
6356

@@ -195,8 +188,8 @@ protected:
195188
py=p4.get(2);
196189
pz=p4.get(3);
197190
e=p4.get(0);
198-
const Float_t kconvT=0.001/2.999792458e8; // mm/c to seconds conversion
199-
const Float_t kconvL=1./10; // mm to cm conversion
191+
const Float_t kconvT=0.01/2.999792458e8; // cm/c to seconds conversion
192+
const Float_t kconvL=1.; // dummy conversion
200193
// shift time / position
201194
x=x4.get(1)*kconvL + T::mParticles[indexMother].Vx(); //[cm]
202195
y=x4.get(2)*kconvL + T::mParticles[indexMother].Vy(); //[cm]

0 commit comments

Comments
 (0)