ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
HadrontherapyInteractionParameters Class Reference

#include <geant4/tree/geant4-10.6-release/examples/advanced/hadrontherapy/include/HadrontherapyInteractionParameters.hh>

+ Inheritance diagram for HadrontherapyInteractionParameters:
+ Collaboration diagram for HadrontherapyInteractionParameters:

Public Member Functions

 HadrontherapyInteractionParameters (G4bool)
 
 ~HadrontherapyInteractionParameters ()
 
G4bool GetStoppingTable (const G4String &vararg)
 
G4double GetStopping (G4double energy, const G4ParticleDefinition *, const G4Material *, G4double density=0.)
 
void ListOfNistMaterials (const G4String &vararg)
 
void BeamOn ()
 
bool ParseArg (const G4String &vararg)
 
- Public Member Functions inherited from G4EmCalculator
 G4EmCalculator ()
 
 ~G4EmCalculator ()
 
G4double GetDEDX (G4double kinEnergy, const G4ParticleDefinition *, const G4Material *, const G4Region *r=nullptr)
 
G4double GetDEDX (G4double kinEnergy, const G4String &part, const G4String &mat, const G4String &s="world")
 
G4double GetRangeFromRestricteDEDX (G4double kinEnergy, const G4ParticleDefinition *, const G4Material *, const G4Region *r=nullptr)
 
G4double GetRangeFromRestricteDEDX (G4double kinEnergy, const G4String &part, const G4String &mat, const G4String &s="world")
 
G4double GetCSDARange (G4double kinEnergy, const G4ParticleDefinition *, const G4Material *, const G4Region *r=nullptr)
 
G4double GetCSDARange (G4double kinEnergy, const G4String &part, const G4String &mat, const G4String &s="world")
 
G4double GetRange (G4double kinEnergy, const G4ParticleDefinition *, const G4Material *, const G4Region *r=nullptr)
 
G4double GetRange (G4double kinEnergy, const G4String &part, const G4String &mat, const G4String &s="world")
 
G4double GetKinEnergy (G4double range, const G4ParticleDefinition *, const G4Material *, const G4Region *r=nullptr)
 
G4double GetKinEnergy (G4double range, const G4String &part, const G4String &mat, const G4String &s="world")
 
G4double GetCrossSectionPerVolume (G4double kinEnergy, const G4ParticleDefinition *, const G4String &processName, const G4Material *, const G4Region *r=nullptr)
 
G4double GetCrossSectionPerVolume (G4double kinEnergy, const G4String &part, const G4String &proc, const G4String &mat, const G4String &s="world")
 
G4double GetShellIonisationCrossSectionPerAtom (const G4String &part, G4int Z, G4AtomicShellEnumerator shell, G4double kinEnergy)
 
G4double GetMeanFreePath (G4double kinEnergy, const G4ParticleDefinition *, const G4String &processName, const G4Material *, const G4Region *r=nullptr)
 
G4double GetMeanFreePath (G4double kinEnergy, const G4String &part, const G4String &proc, const G4String &mat, const G4String &s="world")
 
void PrintDEDXTable (const G4ParticleDefinition *)
 
void PrintRangeTable (const G4ParticleDefinition *)
 
void PrintInverseRangeTable (const G4ParticleDefinition *)
 
G4double ComputeDEDX (G4double kinEnergy, const G4ParticleDefinition *, const G4String &processName, const G4Material *, G4double cut=DBL_MAX)
 
G4double ComputeDEDX (G4double kinEnergy, const G4String &part, const G4String &proc, const G4String &mat, G4double cut=DBL_MAX)
 
G4double ComputeElectronicDEDX (G4double kinEnergy, const G4ParticleDefinition *, const G4Material *mat, G4double cut=DBL_MAX)
 
G4double ComputeElectronicDEDX (G4double kinEnergy, const G4String &part, const G4String &mat, G4double cut=DBL_MAX)
 
G4double ComputeDEDXForCutInRange (G4double kinEnergy, const G4ParticleDefinition *, const G4Material *mat, G4double rangecut=DBL_MAX)
 
G4double ComputeDEDXForCutInRange (G4double kinEnergy, const G4String &part, const G4String &mat, G4double rangecut=DBL_MAX)
 
G4double ComputeNuclearDEDX (G4double kinEnergy, const G4ParticleDefinition *, const G4Material *)
 
G4double ComputeNuclearDEDX (G4double kinEnergy, const G4String &part, const G4String &mat)
 
G4double ComputeTotalDEDX (G4double kinEnergy, const G4ParticleDefinition *, const G4Material *, G4double cut=DBL_MAX)
 
G4double ComputeTotalDEDX (G4double kinEnergy, const G4String &part, const G4String &mat, G4double cut=DBL_MAX)
 
G4double ComputeCrossSectionPerVolume (G4double kinEnergy, const G4ParticleDefinition *, const G4String &processName, const G4Material *, G4double cut=0.0)
 
G4double ComputeCrossSectionPerVolume (G4double kinEnergy, const G4String &part, const G4String &proc, const G4String &mat, G4double cut=0.0)
 
G4double ComputeCrossSectionPerAtom (G4double kinEnergy, const G4ParticleDefinition *, const G4String &processName, G4double Z, G4double A, G4double cut=0.0)
 
G4double ComputeCrossSectionPerAtom (G4double kinEnergy, const G4String &part, const G4String &processName, const G4Element *, G4double cut=0.0)
 
G4double ComputeCrossSectionPerShell (G4double kinEnergy, const G4ParticleDefinition *, const G4String &processName, G4int Z, G4int shellIdx, G4double cut=0.0)
 
G4double ComputeCrossSectionPerShell (G4double kinEnergy, const G4String &part, const G4String &processName, const G4Element *, G4int shellIdx, G4double cut=0.0)
 
G4double ComputeGammaAttenuationLength (G4double kinEnergy, const G4Material *)
 
G4double ComputeShellIonisationCrossSectionPerAtom (const G4String &part, G4int Z, G4AtomicShellEnumerator shell, G4double kinEnergy, const G4Material *mat=nullptr)
 
G4double ComputeMeanFreePath (G4double kinEnergy, const G4ParticleDefinition *, const G4String &processName, const G4Material *, G4double cut=0.0)
 
G4double ComputeMeanFreePath (G4double kinEnergy, const G4String &, const G4String &, const G4String &processName, G4double cut=0.0)
 
G4double ComputeEnergyCutFromRangeCut (G4double range, const G4ParticleDefinition *, const G4Material *)
 
G4double ComputeEnergyCutFromRangeCut (G4double range, const G4String &, const G4String &)
 
const G4ParticleDefinitionFindParticle (const G4String &)
 
const G4ParticleDefinitionFindIon (G4int Z, G4int A)
 
const G4MaterialFindMaterial (const G4String &)
 
const G4RegionFindRegion (const G4String &)
 
const G4MaterialCutsCoupleFindCouple (const G4Material *, const G4Region *r=nullptr)
 
G4VProcessFindProcess (const G4ParticleDefinition *part, const G4String &processName)
 
void SetupMaterial (const G4Material *)
 
void SetupMaterial (const G4String &)
 
void SetVerbose (G4int val)
 

Private Member Functions

G4MaterialGetNistMaterial (G4String material)
 

Private Attributes

G4NistElementBuildernistEle
 
G4NistMaterialBuildernistMat
 
std::ofstream outfile
 
std::ostream data
 
G4MaterialPmaterial
 
HadrontherapyParameterMessengerpMessenger
 
bool beamFlag
 
G4double kinEmin
 
G4double kinEmax
 
G4double npoints
 
G4String particle
 
G4String material
 
G4String filename
 
G4double dedxtot
 
G4double density
 
std::vector< G4doubleenergy
 
std::vector< G4doublemassDedx
 

Detailed Description

Definition at line 41 of file HadrontherapyInteractionParameters.hh.

View newest version in sPHENIX GitHub at line 41 of file HadrontherapyInteractionParameters.hh

Constructor & Destructor Documentation

HadrontherapyInteractionParameters::HadrontherapyInteractionParameters ( G4bool  wantMessenger)

Definition at line 53 of file HadrontherapyInteractionParameters.cc.

View newest version in sPHENIX GitHub at line 53 of file HadrontherapyInteractionParameters.cc

References G4cout, and pMessenger.

HadrontherapyInteractionParameters::~HadrontherapyInteractionParameters ( )

Definition at line 64 of file HadrontherapyInteractionParameters.cc.

View newest version in sPHENIX GitHub at line 64 of file HadrontherapyInteractionParameters.cc

References nistEle, nistMat, and pMessenger.

Member Function Documentation

void HadrontherapyInteractionParameters::BeamOn ( )

Definition at line 191 of file HadrontherapyInteractionParameters.cc.

View newest version in sPHENIX GitHub at line 191 of file HadrontherapyInteractionParameters.cc

References beamFlag, G4cout, G4endl, G4State_Idle, G4RunManager::GetRunManager(), and G4StateManager::GetStateManager().

Referenced by ParseArg().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4Material * HadrontherapyInteractionParameters::GetNistMaterial ( G4String  material)
private

Definition at line 130 of file HadrontherapyInteractionParameters.cc.

View newest version in sPHENIX GitHub at line 130 of file HadrontherapyInteractionParameters.cc

References density, G4NistManager::FindOrBuildMaterial(), G4NistManager::Instance(), and Pmaterial.

Referenced by ParseArg().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double HadrontherapyInteractionParameters::GetStopping ( G4double  energy,
const G4ParticleDefinition pDef,
const G4Material pMat,
G4double  density = 0. 
)

Definition at line 71 of file HadrontherapyInteractionParameters.cc.

View newest version in sPHENIX GitHub at line 71 of file HadrontherapyInteractionParameters.cc

References G4EmCalculator::ComputeTotalDEDX().

+ Here is the call graph for this function:

bool HadrontherapyInteractionParameters::GetStoppingTable ( const G4String vararg)

Definition at line 79 of file HadrontherapyInteractionParameters.cc.

View newest version in sPHENIX GitHub at line 79 of file HadrontherapyInteractionParameters.cc

References c, cm2, G4EmCalculator::ComputeTotalDEDX(), dedxtot, density, energy, filename, Acts::UnitConstants::g, G4BestUnit, G4cout, G4endl, kinEmax, kinEmin, left, massDedx, material, MeV, npoints, outfile, ParseArg(), and particle.

+ Here is the call graph for this function:

void HadrontherapyInteractionParameters::ListOfNistMaterials ( const G4String vararg)

Definition at line 206 of file HadrontherapyInteractionParameters.cc.

View newest version in sPHENIX GitHub at line 206 of file HadrontherapyInteractionParameters.cc

References G4cout, G4endl, left, and nistMat.

bool HadrontherapyInteractionParameters::ParseArg ( const G4String vararg)

Definition at line 137 of file HadrontherapyInteractionParameters.cc.

View newest version in sPHENIX GitHub at line 137 of file HadrontherapyInteractionParameters.cc

References BeamOn(), filename, G4EmCalculator::FindParticle(), G4cout, G4endl, GetNistMaterial(), kinEmax, kinEmin, material, MeV, npoints, outfile, and particle.

Referenced by GetStoppingTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

bool HadrontherapyInteractionParameters::beamFlag
private

Definition at line 71 of file HadrontherapyInteractionParameters.hh.

View newest version in sPHENIX GitHub at line 71 of file HadrontherapyInteractionParameters.hh

Referenced by BeamOn().

std::ostream HadrontherapyInteractionParameters::data
private

Definition at line 68 of file HadrontherapyInteractionParameters.hh.

View newest version in sPHENIX GitHub at line 68 of file HadrontherapyInteractionParameters.hh

G4double HadrontherapyInteractionParameters::dedxtot
private

Definition at line 75 of file HadrontherapyInteractionParameters.hh.

View newest version in sPHENIX GitHub at line 75 of file HadrontherapyInteractionParameters.hh

Referenced by GetStoppingTable().

G4double HadrontherapyInteractionParameters::density
private

Definition at line 75 of file HadrontherapyInteractionParameters.hh.

View newest version in sPHENIX GitHub at line 75 of file HadrontherapyInteractionParameters.hh

Referenced by GetNistMaterial(), and GetStoppingTable().

std::vector<G4double> HadrontherapyInteractionParameters::energy
private

Definition at line 76 of file HadrontherapyInteractionParameters.hh.

View newest version in sPHENIX GitHub at line 76 of file HadrontherapyInteractionParameters.hh

Referenced by GetStoppingTable().

G4String HadrontherapyInteractionParameters::filename
private

Definition at line 74 of file HadrontherapyInteractionParameters.hh.

View newest version in sPHENIX GitHub at line 74 of file HadrontherapyInteractionParameters.hh

Referenced by GetStoppingTable(), and ParseArg().

G4double HadrontherapyInteractionParameters::kinEmax
private

Definition at line 73 of file HadrontherapyInteractionParameters.hh.

View newest version in sPHENIX GitHub at line 73 of file HadrontherapyInteractionParameters.hh

Referenced by GetStoppingTable(), and ParseArg().

G4double HadrontherapyInteractionParameters::kinEmin
private

Definition at line 73 of file HadrontherapyInteractionParameters.hh.

View newest version in sPHENIX GitHub at line 73 of file HadrontherapyInteractionParameters.hh

Referenced by GetStoppingTable(), and ParseArg().

std::vector<G4double> HadrontherapyInteractionParameters::massDedx
private

Definition at line 77 of file HadrontherapyInteractionParameters.hh.

View newest version in sPHENIX GitHub at line 77 of file HadrontherapyInteractionParameters.hh

Referenced by GetStoppingTable().

G4String HadrontherapyInteractionParameters::material
private

Definition at line 74 of file HadrontherapyInteractionParameters.hh.

View newest version in sPHENIX GitHub at line 74 of file HadrontherapyInteractionParameters.hh

Referenced by GetStoppingTable(), and ParseArg().

G4NistElementBuilder* HadrontherapyInteractionParameters::nistEle
private

Definition at line 65 of file HadrontherapyInteractionParameters.hh.

View newest version in sPHENIX GitHub at line 65 of file HadrontherapyInteractionParameters.hh

Referenced by ~HadrontherapyInteractionParameters().

G4NistMaterialBuilder* HadrontherapyInteractionParameters::nistMat
private

Definition at line 66 of file HadrontherapyInteractionParameters.hh.

View newest version in sPHENIX GitHub at line 66 of file HadrontherapyInteractionParameters.hh

Referenced by ListOfNistMaterials(), and ~HadrontherapyInteractionParameters().

G4double HadrontherapyInteractionParameters::npoints
private

Definition at line 73 of file HadrontherapyInteractionParameters.hh.

View newest version in sPHENIX GitHub at line 73 of file HadrontherapyInteractionParameters.hh

Referenced by GetStoppingTable(), and ParseArg().

std::ofstream HadrontherapyInteractionParameters::outfile
private

Definition at line 67 of file HadrontherapyInteractionParameters.hh.

View newest version in sPHENIX GitHub at line 67 of file HadrontherapyInteractionParameters.hh

Referenced by GetStoppingTable(), and ParseArg().

G4String HadrontherapyInteractionParameters::particle
private

Definition at line 74 of file HadrontherapyInteractionParameters.hh.

View newest version in sPHENIX GitHub at line 74 of file HadrontherapyInteractionParameters.hh

Referenced by GetStoppingTable(), and ParseArg().

G4Material* HadrontherapyInteractionParameters::Pmaterial
private

Definition at line 69 of file HadrontherapyInteractionParameters.hh.

View newest version in sPHENIX GitHub at line 69 of file HadrontherapyInteractionParameters.hh

Referenced by GetNistMaterial().

HadrontherapyParameterMessenger* HadrontherapyInteractionParameters::pMessenger
private

Definition at line 70 of file HadrontherapyInteractionParameters.hh.

View newest version in sPHENIX GitHub at line 70 of file HadrontherapyInteractionParameters.hh

Referenced by HadrontherapyInteractionParameters(), and ~HadrontherapyInteractionParameters().


The documentation for this class was generated from the following files: