ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
|
Public Member Functions | |
G4DNADummyModel (const G4String &applyToMaterial, const G4ParticleDefinition *p, const G4String &nam, G4VEmModel *emModel) | |
~G4DNADummyModel () | |
virtual void | Initialise (const G4ParticleDefinition *particle, const G4DataVector &=*(new G4DataVector()), G4ParticleChangeForGamma *changeForGamme=nullptr) |
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) |
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, G4double tmax) |
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. | |
const G4VEmModel * | GetEmModel () const |
G4VEmModel * | GetEmModel () |
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 | |
G4double | GetNumMoleculePerVolumeUnitForMaterial (const G4Material *mat) |
Private Attributes | |
G4VEmModel * | fpEmModel |
const G4ParticleDefinition * | fpParticleDef |
const std::vector< double > * | fMaterialMolPerVol |
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. | |
Definition at line 40 of file G4DNADummyModel.hh.
View newest version in sPHENIX GitHub at line 40 of file G4DNADummyModel.hh
G4DNADummyModel::G4DNADummyModel | ( | const G4String & | applyToMaterial, |
const G4ParticleDefinition * | p, | ||
const G4String & | nam, | ||
G4VEmModel * | emModel | ||
) |
Definition at line 35 of file G4DNADummyModel.cc.
View newest version in sPHENIX GitHub at line 35 of file G4DNADummyModel.cc
References fpEmModel, and fpParticleDef.
G4DNADummyModel::~G4DNADummyModel | ( | ) |
Definition at line 42 of file G4DNADummyModel.cc.
View newest version in sPHENIX GitHub at line 42 of file G4DNADummyModel.cc
|
virtual |
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.
material | |
materialName | |
p | |
ekin | |
emin | |
emax |
Implements G4VDNAModel.
Definition at line 61 of file G4DNADummyModel.cc.
View newest version in sPHENIX GitHub at line 61 of file G4DNADummyModel.cc
References G4VEmModel::CrossSectionPerVolume(), fpEmModel, G4Material::GetMaterial(), and GetNumMoleculePerVolumeUnitForMaterial().
|
inline |
Definition at line 66 of file G4DNADummyModel.hh.
View newest version in sPHENIX GitHub at line 66 of file G4DNADummyModel.hh
References fpEmModel.
|
inline |
Definition at line 67 of file G4DNADummyModel.hh.
View newest version in sPHENIX GitHub at line 67 of file G4DNADummyModel.hh
References fpEmModel.
|
private |
Definition at line 74 of file G4DNADummyModel.cc.
View newest version in sPHENIX GitHub at line 74 of file G4DNADummyModel.cc
References fMaterialMolPerVol, and G4Material::GetIndex().
Referenced by CrossSectionPerVolume().
|
virtual |
Initialise Each model must implement an Initialize method.
particle | |
cuts |
Implements G4VDNAModel.
Definition at line 48 of file G4DNADummyModel.cc.
View newest version in sPHENIX GitHub at line 48 of file G4DNADummyModel.cc
References G4VDNAModel::EnableForMaterialAndParticle(), fMaterialMolPerVol, fpEmModel, fpParticleDef, G4Material::GetMaterial(), G4DNAMolecularMaterial::GetNumMolPerVolTableFor(), G4ParticleDefinition::GetParticleName(), G4VEmModel::HighEnergyLimit(), G4VEmModel::Initialise(), G4DNAMolecularMaterial::Instance(), G4VEmModel::LowEnergyLimit(), G4VDNAModel::SetHighELimit(), G4VDNAModel::SetLowELimit(), and G4VEmModel::SetParticleChange().
|
virtual |
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.
materialName | |
particleChangeForGamma | |
tmin | |
tmax |
Implements G4VDNAModel.
Definition at line 69 of file G4DNADummyModel.cc.
View newest version in sPHENIX GitHub at line 69 of file G4DNADummyModel.cc
References fpEmModel, and G4VEmModel::SampleSecondaries().
|
private |
Definition at line 72 of file G4DNADummyModel.hh.
View newest version in sPHENIX GitHub at line 72 of file G4DNADummyModel.hh
Referenced by GetNumMoleculePerVolumeUnitForMaterial(), and Initialise().
|
private |
Definition at line 70 of file G4DNADummyModel.hh.
View newest version in sPHENIX GitHub at line 70 of file G4DNADummyModel.hh
Referenced by CrossSectionPerVolume(), G4DNADummyModel(), GetEmModel(), Initialise(), and SampleSecondaries().
|
private |
Definition at line 71 of file G4DNADummyModel.hh.
View newest version in sPHENIX GitHub at line 71 of file G4DNADummyModel.hh
Referenced by G4DNADummyModel(), and Initialise().