59 fSDName.push_back(
G4String(
"ConcreteSD"));
77 return new B03Run(fSDName);
100 for (
G4int i = 0; i < (
G4int)fSDName.size(); i++ ){
143 "\n--------------------End of Global Run-----------------------" <<
151 "\n--------------------End of Local Run------------------------" <<
157 G4cout <<
"============================================================="
159 G4cout <<
"============================================================="
162 std::ostream *myout = &
G4cout;
165 for (
G4int iz = 0; iz < 20; iz++){
166 G4double* SumCollisions = (*Collisions)[iz];
167 G4double* SumCollWeight = (*CollWeight)[iz];
168 G4double* Populations = (*Population)[iz];
169 G4double* TrackEnters = (*TrackEnter)[iz];
175 if ( !SumCollisions ) SumCollisions =
new G4double(0.0);
176 if ( !SumCollWeight ) SumCollWeight =
new G4double(0.0);
177 if ( !Populations ) Populations =
new G4double(0.0);
178 if ( !TrackEnters ) {
G4cout <<
" NO TRACKS - WHY? " <<
G4endl;
180 if ( !SLs ) SLs =
new G4double(0.0);
181 if ( !SLWs ) SLWs =
new G4double(0.0);
182 if ( !SLWEs ) SLWEs =
new G4double(0.0);
183 if ( !SLW_Vs ) SLW_Vs =
new G4double(0.0);
184 if ( !SLWE_Vs ) SLWE_Vs =
new G4double(0.0);
188 if ( *SLW_Vs !=0. ) NumWeightedEnergy = (*SLWE_Vs)/(*SLW_Vs);
189 if ( *SLWs !=0. ) FluxWeightedEnergy = (*SLWEs)/(*SLWs);
190 if ( *SLs !=0. ) AverageTrackWeight = (*SLWs)/(*SLs);
193 << std::setw(fFieldValue) << cname <<
" |"
194 << std::setw(fFieldValue) << (*TrackEnters) <<
" |"
195 << std::setw(fFieldValue) << (*Populations) <<
" |"
196 << std::setw(fFieldValue) << (*SumCollisions) <<
" |"
197 << std::setw(fFieldValue) << (*SumCollWeight) <<
" |"
198 << std::setw(fFieldValue) << NumWeightedEnergy <<
" |"
199 << std::setw(fFieldValue) << FluxWeightedEnergy <<
" |"
200 << std::setw(fFieldValue) << AverageTrackWeight <<
" |"
201 << std::setw(fFieldValue) << (*SLs) <<
" |"
202 << std::setw(fFieldValue) << (*SLWs) <<
" |"
203 << std::setw(fFieldValue) << (*SLW_Vs) <<
" |"
204 << std::setw(fFieldValue) << (*SLWEs) <<
" |"
205 << std::setw(fFieldValue) << (*SLWE_Vs) <<
" |"
208 G4cout <<
"============================================="<<
G4endl;
216 std::vector<G4String> vecScoreName;
217 vecScoreName.push_back(
"Tr.Entering");
218 vecScoreName.push_back(
"Population");
219 vecScoreName.push_back(
"Collisions");
220 vecScoreName.push_back(
"Coll*WGT");
221 vecScoreName.push_back(
"NumWGTedE");
222 vecScoreName.push_back(
"FluxWGTedE");
223 vecScoreName.push_back(
"Av.Tr.WGT");
224 vecScoreName.push_back(
"SL");
225 vecScoreName.push_back(
"SLW");
226 vecScoreName.push_back(
"SLW_v");
227 vecScoreName.push_back(
"SLWE");
228 vecScoreName.push_back(
"SLWE_v");
234 *out << std::setw(fFieldValue) <<
"Volume" <<
" |";
235 for (std::vector<G4String>::iterator it = vecScoreName.begin();
236 it != vecScoreName.end(); it++) {
242 *out << std::setw(fFieldValue) << (*it) <<
" |";
252 std::string
fname(
"");
253 G4int k = n - name.size();
257 fname += std::string(k,c);
260 fname = std::string(k,c);
const G4VUserDetectorConstruction * GetUserDetectorConstruction() const
G4String GetCellName(G4int i)
Definition of the B03RunAction class.
void PrintHeader(std::ostream *out)
G4GLOB_DLL std::ostream G4cout
std::string FillString(const std::string &name, char c, G4int n, G4bool back=true)
G4int GetNumberOfEvent() const
virtual void EndOfRunAction(const G4Run *)
virtual G4Run * GenerateRun()
virtual void BeginOfRunAction(const G4Run *)
static G4RunManager * GetRunManager()
static const G4double * SL[nLA]
Definition of the B03Run class.
Definition of the B03ImportanceDetectorConstruction class.
G4THitsMap< G4double > * GetHitsMap(G4int i)