48 #include "HistoManager.hh"
74 #include "DetectorConstruction.hh"
159 fHisto->Add1D(
"0",
"Energy deposition (MeV/mm/event) in the target",
161 fHisto->Add1D(
"1",
"Log10 Energy (GeV) of gammas",
fNBinsE,-5.,5.,1.0);
162 fHisto->Add1D(
"2",
"Log10 Energy (GeV) of electrons",
fNBinsE,-5.,5.,1.0);
163 fHisto->Add1D(
"3",
"Log10 Energy (GeV) of positrons",
fNBinsE,-5.,5.,1.0);
164 fHisto->Add1D(
"4",
"Log10 Energy (GeV) of protons",
fNBinsE,-5.,5.,1.0);
165 fHisto->Add1D(
"5",
"Log10 Energy (GeV) of neutrons",
fNBinsE,-5.,5.,1.0);
166 fHisto->Add1D(
"6",
"Log10 Energy (GeV) of charged pions",
fNBinsE,-4.,6.,1.0);
167 fHisto->Add1D(
"7",
"Log10 Energy (GeV) of pi0",
fNBinsE,-4.,6.,1.0);
168 fHisto->Add1D(
"8",
"Log10 Energy (GeV) of charged kaons",
fNBinsE,-4.,6.,1.0);
169 fHisto->Add1D(
"9",
"Log10 Energy (GeV) of neutral kaons",
fNBinsE,-4.,6.,1.0);
170 fHisto->Add1D(
"10",
"Log10 Energy (GeV) of deuterons and tritons",
172 fHisto->Add1D(
"11",
"Log10 Energy (GeV) of He3 and alpha",
fNBinsE,-5.,5.,1.0);
173 fHisto->Add1D(
"12",
"Log10 Energy (GeV) of Generic Ions",
fNBinsE,-5.,5.,1.0);
174 fHisto->Add1D(
"13",
"Log10 Energy (GeV) of muons",
fNBinsE,-4.,6.,1.0);
175 fHisto->Add1D(
"14",
"Log10 Energy (GeV) of pi+",
fNBinsE,-4.,6.,1.0);
176 fHisto->Add1D(
"15",
"Log10 Energy (GeV) of pi-",
fNBinsE,-4.,6.,1.0);
177 fHisto->Add1D(
"16",
"X Section (mb) of Secondary Fragments Z with E>1 GeV (mb)"
179 fHisto->Add1D(
"17",
"Secondary Fragment A E>1 GeV",50,0.5,50.5,1.0);
180 fHisto->Add1D(
"18",
"Secondary Fragment Z E<1 GeV",25,0.5,25.5,1.0);
181 fHisto->Add1D(
"19",
"Secondary Fragment A E<1 GeV",50,0.5,50.5,1.0);
182 fHisto->Add1D(
"20",
"X Section (mb) of Secondary Fragments Z (mb) ",
184 fHisto->Add1D(
"21",
"Secondary Fragment A ",50,0.5,50.5,1.0);
196 G4cout <<
"HistoManager: Histograms are booked and run has been started"
206 G4cout <<
"HistoManager: End of run actions are started" <<
G4endl;
209 G4cout<<
"========================================================"<<
G4endl;
212 if(
fNevt > 0) { x = 1.0/
x; }
235 G4cout <<
"Beam particle "
237 G4cout <<
"Beam Energy(GeV) "
239 G4cout <<
"Number of events "
241 G4cout << std::setprecision(4) <<
"Average energy deposit (GeV) "
244 G4cout << std::setprecision(4) <<
"Average number of steps "
246 G4cout << std::setprecision(4) <<
"Average number of gamma "
248 G4cout << std::setprecision(4) <<
"Average number of e- "
250 G4cout << std::setprecision(4) <<
"Average number of e+ "
252 G4cout << std::setprecision(4) <<
"Average number of neutrons "
254 G4cout << std::setprecision(4) <<
"Average number of protons "
256 G4cout << std::setprecision(4) <<
"Average number of antiprotons "
258 G4cout << std::setprecision(4) <<
"Average number of pi+ & pi- "
260 G4cout << std::setprecision(4) <<
"Average number of pi0 "
262 G4cout << std::setprecision(4) <<
"Average number of kaons "
264 G4cout << std::setprecision(4) <<
"Average number of muons "
266 G4cout << std::setprecision(4) <<
"Average number of deuterons+tritons "
268 G4cout << std::setprecision(4) <<
"Average number of He3+alpha "
270 G4cout << std::setprecision(4) <<
"Average number of ions "
272 G4cout<<
"========================================================"<<
G4endl;
321 G4cout <<
"### Primary " << name
322 <<
" kinE(GeV)= " << e/
GeV
331 G4cout <<
"=== Secondary " << name
332 <<
" kinE(GeV)= " << e/
GeV
338 e = std::log10(e/
GeV);
425 G4cout <<
"HistoManager::AddEnergy: e(keV)= " << edep/
keV
426 <<
"; z(mm)= " << z/
mm
455 G4cout <<
"### HistoManager WARNING: Ion Physics is already defined: <"
456 << nam <<
"> is ignored!" <<
G4endl;
457 }
else if(nam ==
"HIJING") {
462 G4cout <<
"### SetIonPhysics: Ion Physics FTFP/Binary is added"
465 G4cout <<
"Error: Ion Physics HIJING is requested but is not available"
468 }
else if(nam ==
"UrQMD") {
473 G4cout <<
"### SetIonPhysics: Ion Physics UrQMD is added"
476 G4cout <<
"Error: Ion Physics UrQMD is requested but is not available"
480 G4cout <<
"### HistoManager WARNING: Ion Physics <"
481 << nam <<
"> is unknown!" <<
G4endl;