ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
|
Accumulable of RBE-related data (that must be thread-local). More...
Public Types | |
using | array_type = std::valarray< G4double > |
Public Member Functions | |
HadrontherapyRBEAccumulable () | |
HadrontherapyRBEAccumulable (const HadrontherapyRBEAccumulable &other)=default | |
void | Merge (const G4VAccumulable &rhs) override |
void | Reset () override |
void | Accumulate (G4double E, G4double energyDeposit, G4double dX, G4int Z, G4int i, G4int j, G4int k) |
const array_type | GetEnergyDeposit () const |
const array_type | GetAlphaNumerator () const |
const array_type | GetBetaNumerator () const |
const array_type | GetDenominator () const |
G4int | GetVerboseLevel () const |
Public Member Functions inherited from G4VAccumulable | |
G4VAccumulable (const G4String &name="") | |
G4VAccumulable (const G4VAccumulable &rhs) | |
virtual | ~G4VAccumulable () |
G4VAccumulable & | operator= (const G4VAccumulable &rhs) |
G4String | GetName () const |
Private Member Functions | |
G4int | GetIndex (G4int i, G4int j, G4int k) const |
Helper function to get the 1D index in the 3D array. | |
void | Initialize () |
Private Attributes | |
G4bool | fInitialized { false } |
array_type | fAlphaNumerator |
array_type | fBetaNumerator |
array_type | fDenominator |
array_type | fEnergyDeposit |
size_t | fVoxelsAlongX |
size_t | fVoxelsAlongY |
size_t | fVoxelsAlongZ |
size_t | fVoxels |
Additional Inherited Members | |
Protected Attributes inherited from G4VAccumulable | |
G4String | fName |
Accumulable of RBE-related data (that must be thread-local).
It keeps the sum of alpha and beta numerators/denominator, as well as energy deposits. The class is closely tied with the singleton HadrontherapyRBE that is used both to calculate alphas and betas, and also to store results.
This is implemented as a customized G4VAccumulable with non-scalar data.
Definition at line 51 of file HadrontherapyRBEAccumulable.hh.
View newest version in sPHENIX GitHub at line 51 of file HadrontherapyRBEAccumulable.hh
using HadrontherapyRBEAccumulable::array_type = std::valarray<G4double> |
Definition at line 65 of file HadrontherapyRBEAccumulable.hh.
View newest version in sPHENIX GitHub at line 65 of file HadrontherapyRBEAccumulable.hh
HadrontherapyRBEAccumulable::HadrontherapyRBEAccumulable | ( | ) |
Definition at line 34 of file HadrontherapyRBEAccumulable.cc.
View newest version in sPHENIX GitHub at line 34 of file HadrontherapyRBEAccumulable.cc
|
default |
void HadrontherapyRBEAccumulable::Accumulate | ( | G4double | E, |
G4double | energyDeposit, | ||
G4double | dX, | ||
G4int | Z, | ||
G4int | i, | ||
G4int | j, | ||
G4int | k | ||
) |
Definition at line 72 of file HadrontherapyRBEAccumulable.cc.
View newest version in sPHENIX GitHub at line 72 of file HadrontherapyRBEAccumulable.cc
References fAlphaNumerator, FatalException, fBetaNumerator, fDenominator, fEnergyDeposit, fInitialized, G4cout, G4endl, G4Exception(), HadrontherapyRBE::GetHitAlphaAndBeta(), GetIndex(), HadrontherapyRBE::GetInstance(), GetVerboseLevel(), and n.
|
inline |
Definition at line 69 of file HadrontherapyRBEAccumulable.hh.
View newest version in sPHENIX GitHub at line 69 of file HadrontherapyRBEAccumulable.hh
References fAlphaNumerator.
Referenced by HadrontherapyRunAction::EndOfRunAction().
|
inline |
Definition at line 70 of file HadrontherapyRBEAccumulable.hh.
View newest version in sPHENIX GitHub at line 70 of file HadrontherapyRBEAccumulable.hh
References fBetaNumerator.
Referenced by HadrontherapyRunAction::EndOfRunAction().
|
inline |
Definition at line 71 of file HadrontherapyRBEAccumulable.hh.
View newest version in sPHENIX GitHub at line 71 of file HadrontherapyRBEAccumulable.hh
References fDenominator.
Referenced by HadrontherapyRunAction::EndOfRunAction().
const HadrontherapyRBEAccumulable::array_type HadrontherapyRBEAccumulable::GetEnergyDeposit | ( | ) | const |
Definition at line 98 of file HadrontherapyRBEAccumulable.cc.
View newest version in sPHENIX GitHub at line 98 of file HadrontherapyRBEAccumulable.cc
References fEnergyDeposit.
Referenced by HadrontherapyRunAction::EndOfRunAction().
Helper function to get the 1D index in the 3D array.
Definition at line 78 of file HadrontherapyRBEAccumulable.hh.
View newest version in sPHENIX GitHub at line 78 of file HadrontherapyRBEAccumulable.hh
References fVoxelsAlongY, fVoxelsAlongZ, and k.
Referenced by Accumulate().
G4int HadrontherapyRBEAccumulable::GetVerboseLevel | ( | ) | const |
Definition at line 103 of file HadrontherapyRBEAccumulable.cc.
View newest version in sPHENIX GitHub at line 103 of file HadrontherapyRBEAccumulable.cc
References HadrontherapyRBE::GetInstance(), and HadrontherapyRBE::GetVerboseLevel().
Referenced by Accumulate(), Initialize(), Merge(), and Reset().
|
private |
Definition at line 108 of file HadrontherapyRBEAccumulable.cc.
View newest version in sPHENIX GitHub at line 108 of file HadrontherapyRBEAccumulable.cc
References fAlphaNumerator, fBetaNumerator, fDenominator, fEnergyDeposit, fInitialized, fVoxels, fVoxelsAlongX, fVoxelsAlongY, fVoxelsAlongZ, G4cout, G4endl, HadrontherapyRBE::GetInstance(), and GetVerboseLevel().
Referenced by Reset().
|
overridevirtual |
Implements G4VAccumulable.
Definition at line 40 of file HadrontherapyRBEAccumulable.cc.
View newest version in sPHENIX GitHub at line 40 of file HadrontherapyRBEAccumulable.cc
References fAlphaNumerator, fBetaNumerator, fDenominator, fEnergyDeposit, G4cout, G4endl, and GetVerboseLevel().
|
overridevirtual |
Implements G4VAccumulable.
Definition at line 53 of file HadrontherapyRBEAccumulable.cc.
View newest version in sPHENIX GitHub at line 53 of file HadrontherapyRBEAccumulable.cc
References fAlphaNumerator, fBetaNumerator, fDenominator, fEnergyDeposit, fInitialized, G4cout, G4endl, GetVerboseLevel(), and Initialize().
|
private |
Definition at line 84 of file HadrontherapyRBEAccumulable.hh.
View newest version in sPHENIX GitHub at line 84 of file HadrontherapyRBEAccumulable.hh
Referenced by Accumulate(), GetAlphaNumerator(), Initialize(), Merge(), and Reset().
|
private |
Definition at line 85 of file HadrontherapyRBEAccumulable.hh.
View newest version in sPHENIX GitHub at line 85 of file HadrontherapyRBEAccumulable.hh
Referenced by Accumulate(), GetBetaNumerator(), Initialize(), Merge(), and Reset().
|
private |
Definition at line 86 of file HadrontherapyRBEAccumulable.hh.
View newest version in sPHENIX GitHub at line 86 of file HadrontherapyRBEAccumulable.hh
Referenced by Accumulate(), GetDenominator(), Initialize(), Merge(), and Reset().
|
private |
Definition at line 87 of file HadrontherapyRBEAccumulable.hh.
View newest version in sPHENIX GitHub at line 87 of file HadrontherapyRBEAccumulable.hh
Referenced by Accumulate(), GetEnergyDeposit(), Initialize(), Merge(), and Reset().
Definition at line 82 of file HadrontherapyRBEAccumulable.hh.
View newest version in sPHENIX GitHub at line 82 of file HadrontherapyRBEAccumulable.hh
Referenced by Accumulate(), Initialize(), and Reset().
|
private |
Definition at line 95 of file HadrontherapyRBEAccumulable.hh.
View newest version in sPHENIX GitHub at line 95 of file HadrontherapyRBEAccumulable.hh
Referenced by Initialize().
|
private |
Definition at line 91 of file HadrontherapyRBEAccumulable.hh.
View newest version in sPHENIX GitHub at line 91 of file HadrontherapyRBEAccumulable.hh
Referenced by Initialize().
|
private |
Definition at line 92 of file HadrontherapyRBEAccumulable.hh.
View newest version in sPHENIX GitHub at line 92 of file HadrontherapyRBEAccumulable.hh
Referenced by GetIndex(), and Initialize().
|
private |
Definition at line 93 of file HadrontherapyRBEAccumulable.hh.
View newest version in sPHENIX GitHub at line 93 of file HadrontherapyRBEAccumulable.hh
Referenced by GetIndex(), and Initialize().