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

The G4DNAVacuumModel class Implementation of the vacuum model allowing the user to use G4_Galactic as void in a Geant4-DNA simulation. More...

#include <geant4/tree/geant4-10.6-release/source/processes/electromagnetic/dna/models/include/G4DNAVacuumModel.hh>

+ Inheritance diagram for G4DNAVacuumModel:
+ Collaboration diagram for G4DNAVacuumModel:

Public Member Functions

 G4DNAVacuumModel (const G4String &applyToMaterial="all", const G4ParticleDefinition *p=0, const G4String &nam="DNAPTBVacuumModel")
 G4DNAVacuumModel Constructor.
 
virtual ~G4DNAVacuumModel ()
 ~G4DNAVacuumModel Destructor
 
virtual void Initialise (const G4ParticleDefinition *, const G4DataVector &=*(new G4DataVector()), G4ParticleChangeForGamma *fpChangeForGamme=nullptr)
 Initialise Registers the G4_Galactic material as "void material" for every particle.
 
virtual G4double CrossSectionPerVolume (const G4Material *material, const G4String &materialName, const G4ParticleDefinition *p, G4double ekin, G4double emin, G4double emax)
 CrossSectionPerVolume.
 
virtual void SampleSecondaries (std::vector< G4DynamicParticle * > *, const G4MaterialCutsCouple *, const G4String &materialName, const G4DynamicParticle *, G4ParticleChangeForGamma *particleChangeForGamma, G4double tmin, G4double tmax)
 SampleSecondaries.
 
- Public Member Functions inherited from G4VDNAModel
 G4VDNAModel (const G4String &nam, const G4String &applyToMaterial)
 G4VDNAModel Constructeur of the G4VDNAModel class.
 
virtual ~G4VDNAModel ()
 ~G4VDNAModel
 
G4bool IsMaterialDefine (const G4String &materialName)
 IsMaterialDefine Check if the given material is defined in the simulation.
 
G4bool IsMaterialExistingInModel (const G4String &materialName)
 IsMaterialExistingInModel Check if the given material is defined in the current model class.
 
G4bool IsParticleExistingInModelForMaterial (const G4String &particleName, const G4String &materialName)
 IsParticleExistingInModelForMaterial To check two things: 1- is the material existing in model ? 2- if yes, is the particle defined for that material ?
 
G4String GetName ()
 GetName.
 
G4double GetHighELimit (const G4String &material, const G4String &particle)
 GetHighEnergyLimit.
 
G4double GetLowELimit (const G4String &material, const G4String &particle)
 GetLowEnergyLimit.
 
void SetHighELimit (const G4String &material, const G4String &particle, G4double lim)
 SetHighEnergyLimit.
 
void SetLowELimit (const G4String &material, const G4String &particle, G4double lim)
 SetLowEnergyLimit.
 

Private Member Functions

 G4DNAVacuumModel (const G4DNAVacuumModel &)
 
G4DNAVacuumModeloperator= (const G4DNAVacuumModel &right)
 

Private Attributes

G4int verboseLevel
 verbose level
 

Additional Inherited Members

- Protected Types inherited from G4VDNAModel
typedef std::map< G4String,
std::map< G4String,
G4DNACrossSectionDataSet
*, std::less< G4String > > > 
TableMapData
 
typedef std::map< G4String,
std::map< G4String, G4double > > 
RatioMapData
 
typedef std::map< G4String,
G4double >::const_iterator 
ItCompoMapData
 
- Protected Member Functions inherited from G4VDNAModel
TableMapDataGetTableData ()
 GetTableData.
 
std::vector< G4StringBuildApplyToMatVect (const G4String &materials)
 BuildApplyToMatVect Build the material name vector which is used to know the materials the user want to include in the model.
 
void ReadAndSaveCSFile (const G4String &materialName, const G4String &particleName, const G4String &file, G4double scaleFactor)
 ReadAndSaveCSFile Read and save a "simple" cross section file : use of G4DNACrossSectionDataSet->loadData()
 
G4int RandomSelectShell (G4double k, const G4String &particle, const G4String &materialName)
 RandomSelectShell Method to randomely select a shell from the data table uploaded. The size of the table (number of columns) is used to determine the total number of possible shells.
 
void AddCrossSectionData (G4String materialName, G4String particleName, G4String fileCS, G4String fileDiffCS, G4double scaleFactor)
 AddCrossSectionData Method used during the initialization of the model class to add a new material. It adds a material to the model and fills vectors with informations.
 
void AddCrossSectionData (G4String materialName, G4String particleName, G4String fileCS, G4double scaleFactor)
 AddCrossSectionData Method used during the initialization of the model class to add a new material. It adds a material to the model and fills vectors with informations. Not every model needs differential cross sections.
 
void LoadCrossSectionData (const G4String &particleName)
 LoadCrossSectionData Method to loop on all the registered materials in the model and load the corresponding data.
 
virtual void ReadDiffCSFile (const G4String &materialName, const G4String &particleName, const G4String &path, const G4double scaleFactor)
 ReadDiffCSFile Virtual method that need to be implemented if one wish to use the differential cross sections. The read method for that kind of information is not standardized yet.
 
void EnableForMaterialAndParticle (const G4String &materialName, const G4String &particleName)
 EnableMaterialAndParticle.
 

Detailed Description

The G4DNAVacuumModel class Implementation of the vacuum model allowing the user to use G4_Galactic as void in a Geant4-DNA simulation.

Definition at line 46 of file G4DNAVacuumModel.hh.

View newest version in sPHENIX GitHub at line 46 of file G4DNAVacuumModel.hh

Constructor & Destructor Documentation

G4DNAVacuumModel::G4DNAVacuumModel ( const G4String applyToMaterial = "all",
const G4ParticleDefinition p = 0,
const G4String nam = "DNAPTBVacuumModel" 
)

G4DNAVacuumModel Constructor.

Parameters
applyToMaterial
p
nam

Definition at line 33 of file G4DNAVacuumModel.cc.

View newest version in sPHENIX GitHub at line 33 of file G4DNAVacuumModel.cc

References G4cout, G4endl, and verboseLevel.

G4DNAVacuumModel::~G4DNAVacuumModel ( )
virtual

~G4DNAVacuumModel Destructor

Definition at line 47 of file G4DNAVacuumModel.cc.

View newest version in sPHENIX GitHub at line 47 of file G4DNAVacuumModel.cc

References G4cout, G4endl, and verboseLevel.

G4DNAVacuumModel::G4DNAVacuumModel ( const G4DNAVacuumModel )
private

Member Function Documentation

G4double G4DNAVacuumModel::CrossSectionPerVolume ( const G4Material material,
const G4String materialName,
const G4ParticleDefinition p,
G4double  ekin,
G4double  emin,
G4double  emax 
)
virtual

CrossSectionPerVolume.

Parameters
material
materialName
p
ekin
emin
emax
Returns
cross section value

Implements G4VDNAModel.

Definition at line 68 of file G4DNAVacuumModel.cc.

View newest version in sPHENIX GitHub at line 68 of file G4DNAVacuumModel.cc

References G4cout, G4endl, and verboseLevel.

void G4DNAVacuumModel::Initialise ( const G4ParticleDefinition particle,
const G4DataVector = *(new G4DataVector()),
G4ParticleChangeForGamma fpChangeForGamme = nullptr 
)
virtual

Initialise Registers the G4_Galactic material as "void material" for every particle.

Implements G4VDNAModel.

Definition at line 56 of file G4DNAVacuumModel.cc.

View newest version in sPHENIX GitHub at line 56 of file G4DNAVacuumModel.cc

References G4VDNAModel::EnableForMaterialAndParticle(), G4cout, G4endl, G4ParticleDefinition::GetParticleName(), and verboseLevel.

+ Here is the call graph for this function:

G4DNAVacuumModel& G4DNAVacuumModel::operator= ( const G4DNAVacuumModel right)
private
void G4DNAVacuumModel::SampleSecondaries ( std::vector< G4DynamicParticle * > *  ,
const G4MaterialCutsCouple ,
const G4String materialName,
const G4DynamicParticle ,
G4ParticleChangeForGamma particleChangeForGamma,
G4double  tmin,
G4double  tmax 
)
virtual

SampleSecondaries.

Parameters
materialName
particleChangeForGamma
tmin
tmax

Implements G4VDNAModel.

Definition at line 83 of file G4DNAVacuumModel.cc.

View newest version in sPHENIX GitHub at line 83 of file G4DNAVacuumModel.cc

References G4cout, G4endl, and verboseLevel.

Member Data Documentation

G4int G4DNAVacuumModel::verboseLevel
private

verbose level

Definition at line 109 of file G4DNAVacuumModel.hh.

View newest version in sPHENIX GitHub at line 109 of file G4DNAVacuumModel.hh

Referenced by CrossSectionPerVolume(), G4DNAVacuumModel(), Initialise(), SampleSecondaries(), and ~G4DNAVacuumModel().


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