FairRoot/PandaRoot
SharedMacroFunctions.C
Go to the documentation of this file.
1 // functions used in multiple macros
2 
4 {
5  Int_t IndexPreEnergy = Filename.Index("Geo",3,0,0);
6  Int_t IndexPostEnergy = Filename.Index("_",1,IndexPreEnergy,0);
7  TString EnergyFromFileName = Filename(IndexPreEnergy+3,IndexPostEnergy-IndexPreEnergy-3);
8  return EnergyFromFileName.Atof(); // now in MeV
9 }
10 
12 {
13  Int_t IndexPreEnergy = Filename.Index("E",1,4,0);
14  Int_t IndexPostEnergy = Filename.Index("MeV",3,4,0);
15  TString EnergyFromFileName = Filename(IndexPreEnergy+1,IndexPostEnergy-IndexPreEnergy-1);
16  return EnergyFromFileName.Atof(); // now in MeV
17 }
18 
20 {
21  Int_t IndexPostEnergy = Filename.Index("MeV",3,4,0);
22  Int_t IndexPreNEvts = Filename.Index("FileEvts",8,IndexPostEnergy,0);
23  Int_t IndexPostNEvts = Filename.Index("_",1,IndexPreNEvts,0);
24  TString NEvtsFromFileName = Filename(IndexPreNEvts+8,IndexPostNEvts-IndexPreNEvts-8);
25  return NEvtsFromFileName.Atoi();//1000000;
26 }
27 
29 {
30  Int_t IndexPostEnergy = Filename.Index("MeV",3,4,0);
31  Int_t IndexPreNEvts = Filename.Index("Evts",4,IndexPostEnergy,0);
32  Int_t IndexPostNEvts = Filename.Index("_",1,IndexPreNEvts,0);
33  TString NEvtsFromFileName = Filename(IndexPreNEvts+4,IndexPostNEvts-IndexPreNEvts-4);
34  return NEvtsFromFileName.Atoi();//1000000;
35 }
36 
37 //not working properly
38 //Int_t GetNumberOfCombinedEventsFromFilenameNeutrons(TString Filename)
39 //{
40 // Int_t IndexPostEnergy = Filename.Index("_",1,12,0);
41 // Int_t IndexPreNEvts = Filename.Index("Evts",4,IndexPostEnergy,0);
42 // Int_t IndexPostNEvts = Filename.Index("_",1,IndexPreNEvts,0);
43 // TString NEvtsFromFileName = Filename(IndexPreNEvts+4,IndexPostNEvts-IndexPreNEvts-4);
44 // return NEvtsFromFileName.Atoi();//1000000;
45 //}
46 
48 {
49  Int_t IndexPostEnergy = Filename.Index("MeV",3,4,0);
50  Int_t IndexPreNEvts = Filename.Index("_ST",3,IndexPostEnergy,0);
51  Int_t IndexPostNEvts = Filename.Index(".root",5,IndexPreNEvts,0);
52  TString NEvtsFromFileName = Filename(IndexPreNEvts+3,IndexPostNEvts-IndexPreNEvts-3);
53  return NEvtsFromFileName.Atoi();
54 }
55 
56 TString ComposeOutputFilename(char Type[4] ,Int_t Geometry,Double_t Energy,Int_t AllEvents, Int_t FileEvents, Int_t GenType,Int_t ST, Int_t JobNr,Bool_t OmegaMode=0,Double_t mu =0, Double_t Q = 0)
57 {
58  char buf[200];
59  if (OmegaMode)
60  sprintf(buf,"%s_Geo%i_E%.4fMeV_Evts%i_FileEvts%i_Gen%i_ST%i_mu%.1lf,Q%.1lf__%i",Type,Geometry,Energy,AllEvents,FileEvents,GenType,ST,mu, Q,JobNr);
61  else
62  sprintf(buf,"%s_Geo%i_E%.3fMeV_Evts%i_FileEvts%i_Gen%i_ST%i__%i",Type,Geometry,Energy,AllEvents,FileEvents,GenType,ST,JobNr);
63  return buf;
64 }
65 TString ComposeOutputFoldername(char Type[4] ,Int_t Geometry,Double_t Energy,Int_t AllEvents, Int_t FileEvents, Int_t GenType,Int_t ST,Bool_t OmegaMode=0,Double_t mu =0, Double_t Q = 0)
66 {
67  char buf[200];
68  if (OmegaMode)
69  sprintf(buf,"%s_Geo%i_E%.4fMeV_Evts%i_FileEvts%i_Gen%i_ST%i_mu%.1lf,Q%.1lf",Type,Geometry,Energy,AllEvents,FileEvents,GenType,ST,mu, Q);
70  else
71  sprintf(buf,"%s_Geo%i_E%.3fMeV_Evts%i_FileEvts%i_Gen%i_ST%i",Type,Geometry,Energy,AllEvents,FileEvents,GenType,ST);
72  return buf;
73 }
74 
75 TString GeoFileChooser (Int_t Geometry)
76 {
77  TString Geofilename;
78  switch (Geometry)
79  {
80  case 2 : GeoFilename = "hypGe_GeoMarcell_2er.root"; break;
81  case 21 : GeoFilename = "hypGeGeoDoubleCluster_V3.root"; break;
82  case 3 : GeoFilename = "hypGe_GeoMarcell.root"; break;
83  case 31 : GeoFilename = "hypGeGeoTripleCluster_V3.root"; break;
84  case 32 : GeoFilename = "hypGeGeoTripleCluster_Straight.root"; break;
85  case 33 : GeoFilename = "hypGeGeoTripleCluster_Ball40_Offset10.root"; break;
86  case 34 : GeoFilename = "hypGeGeoTripleCluster_Ball40_Offset20.root"; break;
87  case 35 : GeoFilename = "hypGeGeoTripleCluster_Ball40_Offset10_STTFitting.root"; break;
88  case 36 : GeoFilename = "hypGeGeoTripleCluster_Ball40_Offset20_STTFitting.root"; break;
89  case 41 : GeoFilename = "hypGeGeoDEGASstraight40_20.root"; break;
90  case 42 : GeoFilename = "hypGeGeoBall40_6sym_Offset20.root"; break;
91  case 43 : GeoFilename = "hypGeGeoDEGASstraight40_15.root"; break;
92  }
93  return GeoFilename;
94 }
TString GeoFileChooser(Int_t Geometry)
TString ComposeOutputFoldername(char Type[4], Int_t Geometry, Double_t Energy, Int_t AllEvents, Int_t FileEvents, Int_t GenType, Int_t ST, Bool_t OmegaMode=0, Double_t mu=0, Double_t Q=0)
Double_t
Double_t GetGeoFromFilename(TString Filename)
Int_t GetNumberOfEventsInFileFromFilename(TString Filename)
Int_t GetIfTargetIsSimulated(TString Filename)
Double_t GetEnergyFromFilename(TString Filename)
return buf
Int_t GetNumberOfCombinedEventsFromFilename(TString Filename)
TString ComposeOutputFilename(char Type[4], Int_t Geometry, Double_t Energy, Int_t AllEvents, Int_t FileEvents, Int_t GenType, Int_t ST, Int_t JobNr, Bool_t OmegaMode=0, Double_t mu=0, Double_t Q=0)