31 #include "RunAction.hh"
32 #include "Analysis.hh"
45 :fDetector(det),fPrimary(pri)
69 G4cout <<
"##### Create analysis manager " <<
" " <<
this <<
G4endl;
73 G4cout <<
"Using " << man->GetType() <<
" analysis manager" <<
G4endl;
77 man->OpenFile(
"nanobeam");
78 man->SetFirstHistoId(1);
79 man->SetFirstNtupleId(1);
83 man->CreateNtuple(
"ntuple0",
"BeamProfile");
84 man->CreateNtupleDColumn(
"xIn");
85 man->CreateNtupleDColumn(
"yIn");
86 man->CreateNtupleDColumn(
"zIn");
92 man->CreateNtuple(
"ntuple1",
"Grid");
93 man->CreateNtupleDColumn(
"xIn");
94 man->CreateNtupleDColumn(
"yIn");
95 man->CreateNtupleDColumn(
"e");
100 man->CreateNtuple(
"ntuple2",
"Coef");
101 man->CreateNtupleDColumn(
"xIn");
102 man->CreateNtupleDColumn(
"yIn");
103 man->CreateNtupleDColumn(
"thetaIn");
104 man->CreateNtupleDColumn(
"phiIn");
132 m = CLHEP::HepMatrix(32,32);
136 G4cout <<
"===> NANOBEAM LINE INTRINSIC ABERRATION COEFFICIENTS (units of micrometer and mrad) :" <<
G4endl;
142 CLHEP::HepVector tmp(32,0);
146 b=tmp.sub(8,8);
G4cout <<
"<x|theta*delta>=" << b <<
G4endl;
147 b=tmp.sub(10,10);
G4cout <<
"<x|theta^3>=" << b <<
G4endl;
148 b=tmp.sub(12,12);
G4cout <<
"<x|theta*phi^2>=" << b <<
G4endl;
159 b=tmp.sub(9,9);
G4cout <<
"<y|phi*delta>=" << b <<
G4endl;
160 b=tmp.sub(11,11);
G4cout <<
"<y|theta^2*phi>=" << b <<
G4endl;
161 b=tmp.sub(13,13);
G4cout <<
"<y|phi^3>=" << b <<
G4endl;
179 delete G4AnalysisManager::Instance();
CLHEP::HepVector fYVector
void BeginOfRunAction(const G4Run *)
CLHEP::HepVector fPhiVector
DetectorConstruction * fDetector
#define G4MUTEX_INITIALIZER
CLHEP::HepVector fThetaVector
G4GLOB_DLL std::ostream G4cout
void EndOfRunAction(const G4Run *)
CLHEP::HepVector fXVector
ExG4HbookAnalysisManager G4AnalysisManager
Detector construction class to demonstrate various ways of placement.
CLHEP::HepMatrix GetMatrix()
PrimaryGeneratorAction * fPrimary