10 Int_t hid( Int_t z, Int_t a, Int_t l=0 )
33 Float_t minEta = -1.0;
34 Float_t maxEta = +1.0;
37 void geometry( TString tag, Bool_t agml=
true )
39 TString cmd =
"DETP GEOM "; cmd += tag;
40 if ( !geant_maker ) geant_maker = (
St_geant_Maker *)chain->GetMaker(
"geant");
41 geant_maker -> LoadGeometry(cmd);
45 void command( TString cmd )
47 if ( !geant_maker ) geant_maker = (
St_geant_Maker *)chain->GetMaker(
"geant");
48 geant_maker -> Do( cmd );
51 void trig( Int_t n=0 )
54 TString hyperTs =
"HyperT_2body,HyperT_3body,HyperT_bar_2body,HyperT_bar_3body";
57 for ( Int_t i=0; i<n+1; i++ ) {
60 if (kinematics) kinematics->
Kine( 1, hyperTs, minPt, maxPt, minEta, maxEta );
62 command(
"gprint kine");
68 gSystem->Load(
"libKinematics.so");
70 _primary -> AddGenerator(kinematics);
76 hijing->SetTitle(
"Hijing 1.383");
87 hiparnt.
hipr1(10) = 2.0;
88 hiparnt.
ihpr2(8) = 10;
89 hiparnt.
ihpr2(11) = 1;
90 hiparnt.
ihpr2(12) = 1;
91 hiparnt.
ihpr2(18) = 0;
92 hiparnt.
hipr1(7) = 5.35;
98 _primary -> AddGenerator(hijing);
99 _primary -> SetCuts( 1.0E-6 , -1., -2.5, +2.5 );
105 void starsim( Int_t nevents=200, Int_t rngSeed=4321 )
108 gROOT->ProcessLine(
".L bfc.C");
110 TString simple =
"y2012 geant gstar usexgeom agml ";
116 gSystem->Load(
"libVMC.so");
118 gSystem->Load(
"StarGeneratorUtil.so" );
119 gSystem->Load(
"StarGeneratorEvent.so" );
120 gSystem->Load(
"StarGeneratorBase.so" );
121 gSystem->Load(
"libMathMore.so" );
122 gSystem->Load(
"libHijing1_383.so");
123 gSystem->Load(
"xgeometry.so" );
126 gSystem->Load(
"gstar.so" );
127 command(
"call gstar");
136 pdb.
AddParticle(
"HyperT_2body",
new TParticlePDG(
"HyperpT_2body",
"HyperTriton --> He3 pi-", 2.99131,
false, 0.0, +3.0,
"hypernucleus", +hid(1,1,1), 0, 61053 ));
137 pdb.
AddParticle(
"HyperT_bar_2body",
new TParticlePDG(
"HyperT_bar_2body",
"AntiHyperTriton --> He3bar pi+", 2.99131,
false, 0.0, -3.0,
"hypernucleus", -hid(1,1,1), 0, 61054 ));
138 pdb.
AddParticle(
"HyperT_3body",
new TParticlePDG(
"HyperT_3body",
"HyperTriton --> d p pi-", 2.99131,
false, 0.0, +3.0,
"hypernucleus", +hid(1,1,1), 0, 62053 ));
139 pdb.
AddParticle(
"HyperT_bar_3body",
new TParticlePDG(
"HyperT_bar_3body",
"AntiHyperTriton --> dbar pbar pi+", 2.99131,
false, 0.0, -3.0,
"hypernucleus", -hid(1,1,1), 0, 62054 ));
149 _primary -> SetFileName(
"hijing.starsim.root");
150 chain -> AddBefore(
"geant", _primary );
173 command(
"gkine -4 0");
174 command(
"gfile o hijing.starsim.fzd");
182 command(
"call agexit");
HIJING /HIPARNT/ common block/.
void SetFrame(const Char_t *frame, const Double_t val)
Star Simple Kinematics Generator.
void SetImpact(Double_t bmin, Double_t bmax)
Set the minimum and maximum impact parameters for the collision (HI generators)
virtual void Clear(Option_t *option="")
User defined functions.
static StarParticleData & instance()
Returns a reference to the single instance of this class.
Interface to PDG information.
void SetBlue(const Char_t *b)
Sets the particle species for the blue beam.
void AddParticle(const Char_t *name, TParticlePDG *particle)
Add a particle to the database.
Int_t Init()
Initialize generator.
HiParnt_t & hiparnt()
Returns a reference to the hijing parameters.
Interface to the HIJING event generator.
static void seed(UInt_t s)
Base class for event records.
Main steering class for event generation.
void SetYell(const Char_t *y)
Sets the particle species for the yellow beam.
static void capture()
Capture gRandom random number generator.
Sparse class to hold track kinematics.
void Kine(Int_t ntrack, const Char_t *type="pi+,pi-,K+,K-,proton,antiproton", Double_t ptlow=0.0, Double_t pthigh=500.0, Double_t ylow=-10.0, Double_t yhigh=+10.0, Double_t philow=0.0, Double_t phihigh=TMath::TwoPi())