#include <G4CellScoreComposer.hh>
Public Member Functions | |
G4CellScoreComposer () | |
~G4CellScoreComposer () | |
void | EstimatorCalculation (const G4Step &step) |
void | TrackEnters () |
void | NewTrackPopedUp () |
void | SetCollisionWeight (G4double weight) |
void | SetImportnace (G4double importance) |
const G4CellScoreValues & | GetStandardCellScoreValues () const |
Definition at line 51 of file G4CellScoreComposer.hh.
G4CellScoreComposer::G4CellScoreComposer | ( | ) |
G4CellScoreComposer::~G4CellScoreComposer | ( | ) |
void G4CellScoreComposer::EstimatorCalculation | ( | const G4Step & | step | ) |
Definition at line 46 of file G4CellScoreComposer.cc.
References FatalException, G4CellScoreValues::fSumSL, G4CellScoreValues::fSumSLW, G4CellScoreValues::fSumSLW_v, G4CellScoreValues::fSumSLWE, G4CellScoreValues::fSumSLWE_v, G4Exception(), G4StepPoint::GetKineticEnergy(), G4Step::GetPreStepPoint(), G4Step::GetStepLength(), G4StepPoint::GetVelocity(), and G4StepPoint::GetWeight().
Referenced by G4CellScorer::ScoreAnExitingStep(), and G4CellScorer::ScoreAnInVolumeStep().
00046 { 00047 00048 G4StepPoint *p = 0; 00049 p = aStep.GetPreStepPoint(); 00050 if (!p) { 00051 G4Exception("G4CellScoreComposer::EstimatorCalculation","Det0191",FatalException," no pointer to pre PreStepPoint!"); 00052 } 00053 G4double sl = aStep.GetStepLength(); 00054 G4double slw = sl * p->GetWeight(); 00055 G4double slwe = slw * p->GetKineticEnergy(); 00056 00057 G4double v = p->GetVelocity(); 00058 if (!(v>0.)) { 00059 v = 10e-9; 00060 } 00061 00062 fSCScoreValues.fSumSL += sl; 00063 fSCScoreValues.fSumSLW += slw; 00064 fSCScoreValues.fSumSLW_v += slw / v; 00065 fSCScoreValues.fSumSLWE += slwe; 00066 fSCScoreValues.fSumSLWE_v += slwe / v; 00067 00068 }
const G4CellScoreValues & G4CellScoreComposer::GetStandardCellScoreValues | ( | ) | const |
Definition at line 83 of file G4CellScoreComposer.cc.
References G4CellScoreValues::fAverageTrackWeight, G4CellScoreValues::fFluxWeightedEnergy, G4CellScoreValues::fNumberWeightedEnergy, G4CellScoreValues::fSumSL, G4CellScoreValues::fSumSLW, G4CellScoreValues::fSumSLW_v, G4CellScoreValues::fSumSLWE, and G4CellScoreValues::fSumSLWE_v.
Referenced by G4CellScorer::GetCellScoreValues(), and operator<<().
00083 { 00084 if (fSCScoreValues.fSumSLW > 0.) { 00085 //divide by SumSLW or SumSLW_v ? 00086 fSCScoreValues.fNumberWeightedEnergy = 00087 fSCScoreValues.fSumSLWE_v / fSCScoreValues.fSumSLW_v; 00088 00089 fSCScoreValues.fFluxWeightedEnergy = 00090 fSCScoreValues.fSumSLWE / fSCScoreValues.fSumSLW; 00091 00092 fSCScoreValues.fAverageTrackWeight = 00093 fSCScoreValues.fSumSLW / fSCScoreValues.fSumSL; 00094 } 00095 return fSCScoreValues; 00096 }
void G4CellScoreComposer::NewTrackPopedUp | ( | ) |
Definition at line 72 of file G4CellScoreComposer.cc.
References G4CellScoreValues::fSumPopulation.
00072 { 00073 fSCScoreValues.fSumPopulation++; 00074 }
void G4CellScoreComposer::SetCollisionWeight | ( | G4double | weight | ) |
Definition at line 76 of file G4CellScoreComposer.cc.
References G4CellScoreValues::fSumCollisions, and G4CellScoreValues::fSumCollisionsWeight.
Referenced by G4CellScorer::ScoreAnInVolumeStep().
00076 { 00077 fSCScoreValues.fSumCollisions++; 00078 fSCScoreValues.fSumCollisionsWeight+=weight; 00079 }
void G4CellScoreComposer::SetImportnace | ( | G4double | importance | ) |
Definition at line 98 of file G4CellScoreComposer.cc.
References G4CellScoreValues::fImportance.
00098 { 00099 fSCScoreValues.fImportance = importance; 00100 }
void G4CellScoreComposer::TrackEnters | ( | ) |
Definition at line 69 of file G4CellScoreComposer.cc.
References G4CellScoreValues::fSumTracksEntering.
Referenced by G4CellScorer::ScoreAnEnteringStep().
00069 { 00070 fSCScoreValues.fSumTracksEntering++; 00071 }