FairRoot/PandaRoot
Pnd_Hc_etaee7G.C
Go to the documentation of this file.
1 
2 //Last modified: 10:th September 2003 Agnes Lundborg
3 // macro for the PndJRGen event generator
4 // modified by A.Galoyan
5 
6 {
7  // load shared libraries
8  gROOT->Reset();
9  gSystem->Load("libPhysics.so");
10  gSystem->Load("libEG.so");
11  gSystem->Load("lib/libPndJRGen.so");
12 
13 
14 gROOT->Reset();
15 
16 //----------Update static particle list-------------------
17 //Add the hybrid to the static particle list
18 if (!(TDatabasePDG::Instance())->GetParticle(998))
19  (TDatabasePDG::Instance())->AddParticle("psi_g", "Psig", 4.28, 0, 0.02, 0, "Unknown", 998);
20 // chi_1c + pi0 + pi0
21 Int_t psigProd[3]={20443,111,111};
22 ((TDatabasePDG::Instance())->GetParticle(998))->AddDecayChannel(1, 1.0, 3, psigProd);
23 
24 
25 //Add the combinated particle pbarp
26 if (!(TDatabasePDG::Instance())->GetParticle(999))
27  (TDatabasePDG::Instance())->AddParticle("BeamTarget","Title",4.0,0,4.0,0,"Unknown",999);
28 
29 // psi_g + pi0 fraga om type, type paverkar ingenting, ej implementerat
30 Int_t ppProd[2]={998,221}; //Hybrid and eta
31 ((TDatabasePDG::Instance())->GetParticle(999))->AddDecayChannel(1, 1.0, 2, ppProd);
32 
33 //Arguments: type,decay ratio,number of final state particles, array with final
34 //state particle ID
35 
36 //-----------Intial state particle, composite pbarpstate-------
37 TLorentzVector Vertex, Beam, Target, s;
38 Beam.SetXYZM(0.,0.,15.,((TDatabasePDG::Instance()) -> GetParticle(-2212)) -> Mass());
39 Target.SetXYZM(0.,0., 0.,((TDatabasePDG::Instance()) -> GetParticle( 2212)) -> Mass());
40 s = Beam+Target;
41 TParticle BeamTarget(999,1,0,0,0,0,s,Vertex);
42 TVector3 VtxRes(0,0,0);
43 
44 PndReaction reaction(BeamTarget,VtxRes, "Gen_Hc_etaee7G.root");
45 
46 //reaction.SetStable(998); //Hybrid
47 //reaction.SetStable(20443); //chi_c1
48 //reaction.SetStable(111); //pion
49 //reaction.SetStable(443); //J/Psi
50 //reaction.UseStaticBR();
51 //reaction.UsePoleMass();
52 
53 Int_t L1[1]={1}; //p-wave between pion and hybrid
54 reaction.DefinePartialWaves(999,0,L1);
55 Int_t L2[2]={1,0}; //p-wave between chi_ci and pion pair, s-wave between pions
56 reaction.DefinePartialWaves(998,0,L2);
57 reaction.DefinePartialWaves(111,0,L1); //p-wave between photons from pion
58 reaction.DefinePartialWaves(221,0,L1); //p-wave between photons from eta
59 
60 //----Take away a decay channel for chi_ci-----------------
61 TObjArray *a=((TDatabasePDG::Instance())->GetParticle(20443))->DecayList();
62 a->RemoveAt(1);
63 (TDatabasePDG::Instance())->GetParticle(20443)->NDecayChannels();
64 //----Take away a decay channel for J/Psi------------------
65 TObjArray *b=((TDatabasePDG::Instance())->GetParticle(443))->DecayList();
66 b->RemoveAt(2);
67 b->RemoveAt(1);
68 (TDatabasePDG::Instance())->GetParticle(443)->NDecayChannels();
69 //----Take away a decay channel for pi0------------------
70 TObjArray *c=((TDatabasePDG::Instance())->GetParticle(111))->DecayList();
71 c->RemoveAt(1);
72 (TDatabasePDG::Instance())->GetParticle(111)->NDecayChannels();
73 //----Take away a decay channel for eta------------------
74 TParticlePDG* eta=(TDatabasePDG::Instance())->GetParticle(221);
75 eta->NDecayChannels();
76 TDecayChannel* d0=eta->DecayChannel(0);
77 eta.PrintDecayChannel(d0,"data"); //gamma gamma
78 TObjArray *d=((TDatabasePDG::Instance())->GetParticle(221))->DecayList();
79 for(int i=7;i>0;i--)
80 {
81  d0=eta->DecayChannel(i);
82  eta.PrintDecayChannel(d0,"data");
83  d->RemoveAt(i);
84 }
85 (TDatabasePDG::Instance())->GetParticle(221)->NDecayChannels();
86 
87 reaction.Loop(1001);
88 }
89 
90 
91 
92 
93 
94 
95 
96 
97 
98 
TObjArray * d
Int_t i
Definition: run_full.C:25
TTree * b
PndReaction reaction(BeamTarget, VtxRes,"Gen_2K02Pi0.root")
TLorentzVector s
Definition: Pnd2DStar.C:50
TFile * Target
Definition: hadd.C:35
TLorentzVector Vertex
Definition: Pnd2DStar.C:50
Double_t d0
Definition: checkhelixhit.C:59
Int_t a
Definition: anaLmdDigi.C:126
TParticle BeamTarget(999, 1, 0, 0, 0, 0, s, Vertex)
TLorentzVector Beam
Definition: Pnd2DStar.C:50
TParticlePDG * eta
Int_t L2[2]
Definition: Pnd_Hc_ee7G.C:52
TVector3 VtxRes(.1,.1,.2)
Int_t L1[1]
Definition: Pnd_Hc_ee7G.C:50