|
Geant4 10.7.0
Toolkit for the simulation of the passage of particles through matter
|
The G4DNAPTBExcitationModel class This class implements the PTB excitation model. More...
#include <G4DNAPTBExcitationModel.hh>
Inheritance diagram for G4DNAPTBExcitationModel:Public Member Functions | |
| G4DNAPTBExcitationModel (const G4String &applyToMaterial="all", const G4ParticleDefinition *p=0, const G4String &nam="DNAPTBExcitationModel") | |
| G4DNAPTBExcitationModel Constructor. | |
| virtual | ~G4DNAPTBExcitationModel () |
| ~G4DNAPTBExcitationModel Destructor | |
| virtual void | Initialise (const G4ParticleDefinition *particle, const G4DataVector &= *(new G4DataVector()), G4ParticleChangeForGamma *fpChangeForGamme=nullptr) |
| Initialise Set the materials for which the model can be used and defined the energy limits. | |
| virtual G4double | CrossSectionPerVolume (const G4Material *material, const G4String &materialName, const G4ParticleDefinition *p, G4double ekin, G4double emin, G4double emax) |
| CrossSectionPerVolume Retrieve the cross section corresponding to the current material, particle and energy. | |
| virtual void | SampleSecondaries (std::vector< G4DynamicParticle * > *, const G4MaterialCutsCouple *, const G4String &materialName, const G4DynamicParticle *, G4ParticleChangeForGamma *particleChangeForGamma, G4double tmin, G4double tmax) |
| SampleSecondaries If the model is selected for the ModelInterface then the SampleSecondaries method will be called. The method sets the incident particle characteristics after the ModelInterface. | |
Public Member Functions inherited from G4VDNAModel | |
| G4VDNAModel (const G4String &nam, const G4String &applyToMaterial) | |
| G4VDNAModel Constructeur of the G4VDNAModel class. | |
| virtual | ~G4VDNAModel () |
| ~G4VDNAModel | |
| virtual void | Initialise (const G4ParticleDefinition *particle, const G4DataVector &cuts, G4ParticleChangeForGamma *fpChangeForGamme=nullptr)=0 |
| Initialise Each model must implement an Initialize method. | |
| virtual G4double | CrossSectionPerVolume (const G4Material *material, const G4String &materialName, const G4ParticleDefinition *p, G4double ekin, G4double emin, G4double emax)=0 |
| CrossSectionPerVolume Every model must implement its own CrossSectionPerVolume method. It is used by the process to determine the step path and must return a cross section times a number of molecules per volume unit. | |
| virtual void | SampleSecondaries (std::vector< G4DynamicParticle * > *, const G4MaterialCutsCouple *, const G4String &materialName, const G4DynamicParticle *, G4ParticleChangeForGamma *particleChangeForGamma, G4double tmin=0, G4double tmax=DBL_MAX)=0 |
| SampleSecondaries Each model must implement SampleSecondaries to decide if a particle will be created after the ModelInterface or if any charateristic of the incident particle will change. | |
| 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. | |
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 | |
| TableMapData * | GetTableData () |
| GetTableData. | |
| std::vector< G4String > | BuildApplyToMatVect (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. | |
The G4DNAPTBExcitationModel class This class implements the PTB excitation model.
Definition at line 50 of file G4DNAPTBExcitationModel.hh.
| G4DNAPTBExcitationModel::G4DNAPTBExcitationModel | ( | const G4String & | applyToMaterial = "all", |
| const G4ParticleDefinition * | p = 0, |
||
| const G4String & | nam = "DNAPTBExcitationModel" |
||
| ) |
G4DNAPTBExcitationModel Constructor.
| applyToMaterial | |
| p | |
| nam |
Definition at line 36 of file G4DNAPTBExcitationModel.cc.
|
virtual |
~G4DNAPTBExcitationModel Destructor
Definition at line 62 of file G4DNAPTBExcitationModel.cc.
|
virtual |
CrossSectionPerVolume Retrieve the cross section corresponding to the current material, particle and energy.
| material | |
| materialName | |
| p | |
| ekin | |
| emin | |
| emax |
Implements G4VDNAModel.
Definition at line 186 of file G4DNAPTBExcitationModel.cc.
|
virtual |
Initialise Set the materials for which the model can be used and defined the energy limits.
Implements G4VDNAModel.
Definition at line 69 of file G4DNAPTBExcitationModel.cc.
|
virtual |
SampleSecondaries If the model is selected for the ModelInterface then the SampleSecondaries method will be called. The method sets the incident particle characteristics after the ModelInterface.
| materialName | |
| particleChangeForGamma | |
| tmin | |
| tmax |
Implements G4VDNAModel.
Definition at line 236 of file G4DNAPTBExcitationModel.cc.