Geant4 11.2.2
Toolkit for the simulation of the passage of particles through matter
|
G4DNAMolecularMaterial builds tables of molecular densities for chosen molecular materials. The class handles homogeneous, composite and derived materials. A material of interest is labeled as molecular if built using the number of atoms rather than the mass fractions. More...
#include <G4DNAMolecularMaterial.hh>
Public Member Functions | |
G4DNAMolecularMaterial (const G4DNAMolecularMaterial &right)=delete | |
G4DNAMolecularMaterial & | operator= (const G4DNAMolecularMaterial &)=delete |
void | Initialize () |
void | Clear () |
G4bool | Notify (G4ApplicationState requestedState) override |
const std::vector< G4double > * | GetDensityTableFor (const G4Material *) const |
Retrieve a table of volumetric mass densities (mass per unit volume) in the G4 unit system for chosen material. | |
const std::vector< G4double > * | GetNumMolPerVolTableFor (const G4Material *) const |
Retrieve a table of molecular densities (number of molecules per unit volume) in the G4 unit system for chosen material. | |
const std::vector< ComponentMap > * | GetMassFractionTable () const |
const std::vector< ComponentMap > * | GetDensityTable () const |
G4MolecularConfiguration * | GetMolecularConfiguration (const G4Material *) const |
void | SetMolecularConfiguration (const G4Material *, G4MolecularConfiguration *) |
Associate a molecular configuration to a G4material. | |
void | SetMolecularConfiguration (const G4Material *, const G4String &) |
Associate a molecular configuration to a G4material. | |
void | SetMolecularConfiguration (const G4String &materialName, const G4String &molUserIF) |
G4double | GetNumMoleculePerVolumeUnitForMaterial (const G4Material *mat) |
Deprecated. | |
G4double | GetNumMolPerVolForComponentInComposite (const G4Material *composite, const G4Material *component, G4double massFraction) |
Deprecated. | |
Public Member Functions inherited from G4VStateDependent | |
G4VStateDependent (G4bool bottom=false) | |
virtual | ~G4VStateDependent () |
G4bool | operator== (const G4VStateDependent &right) const |
G4bool | operator!= (const G4VStateDependent &right) const |
Static Public Member Functions | |
static G4DNAMolecularMaterial * | Instance () |
Protected Member Functions | |
G4DNAMolecularMaterial () | |
~G4DNAMolecularMaterial () override | |
void | Create () |
void | InitializeNumMolPerVol () |
void | InitializeDensity () |
void | RecordMolecularMaterial (G4Material *parentMaterial, G4Material *molecularMaterial, G4double fraction) |
void | SearchMolecularMaterial (G4Material *parentMaterial, G4Material *material, G4double currentFraction) |
void | AddMaterial (const G4Material *, G4double fraction) |
void | PrintNotAMolecularMaterial (const char *methodName, const G4Material *lookForMaterial) const |
Protected Attributes | |
std::vector< ComponentMap > * | fpCompFractionTable |
std::vector< ComponentMap > * | fpCompDensityTable |
std::vector< ComponentMap > * | fpCompNumMolPerVolTable |
std::map< const G4Material *, std::vector< G4double > *, CompareMaterial > | fAskedDensityTable |
std::map< const G4Material *, std::vector< G4double > *, CompareMaterial > | fAskedNumPerVolTable |
std::map< const G4Material *, G4bool, CompareMaterial > | fWarningPrinted |
std::map< G4int, G4MolecularConfiguration * > | fMaterialToMolecularConf |
G4bool | fIsInitialized |
std::size_t | fNMaterials |
Static Protected Attributes | |
static G4DNAMolecularMaterial * | fInstance |
G4DNAMolecularMaterial builds tables of molecular densities for chosen molecular materials. The class handles homogeneous, composite and derived materials. A material of interest is labeled as molecular if built using the number of atoms rather than the mass fractions.
Definition at line 95 of file G4DNAMolecularMaterial.hh.
|
delete |
|
protected |
Definition at line 139 of file G4DNAMolecularMaterial.cc.
Referenced by Instance().
|
overrideprotected |
Definition at line 157 of file G4DNAMolecularMaterial.cc.
|
protected |
void G4DNAMolecularMaterial::Clear | ( | ) |
Definition at line 99 of file G4DNAMolecularMaterial.cc.
Referenced by ~G4DNAMolecularMaterial().
|
protected |
Definition at line 88 of file G4DNAMolecularMaterial.cc.
Referenced by G4DNAMolecularMaterial().
|
inline |
Definition at line 147 of file G4DNAMolecularMaterial.hh.
const std::vector< G4double > * G4DNAMolecularMaterial::GetDensityTableFor | ( | const G4Material * | searchedMaterial | ) | const |
Retrieve a table of volumetric mass densities (mass per unit volume) in the G4 unit system for chosen material.
[in] | searchedMaterial | The material which you'd like to retrieve the volumic mass |
searchedMaterial
used in parameter must be built as a molecular material, using the number of atoms rather than the density fractions. searchedMaterial
indexed on the (parent) material index. Definition at line 326 of file G4DNAMolecularMaterial.cc.
|
inline |
Definition at line 144 of file G4DNAMolecularMaterial.hh.
G4MolecularConfiguration * G4DNAMolecularMaterial::GetMolecularConfiguration | ( | const G4Material * | material | ) | const |
Definition at line 500 of file G4DNAMolecularMaterial.cc.
G4double G4DNAMolecularMaterial::GetNumMoleculePerVolumeUnitForMaterial | ( | const G4Material * | mat | ) |
Deprecated.
Definition at line 553 of file G4DNAMolecularMaterial.cc.
G4double G4DNAMolecularMaterial::GetNumMolPerVolForComponentInComposite | ( | const G4Material * | composite, |
const G4Material * | component, | ||
G4double | massFraction ) |
Deprecated.
Definition at line 567 of file G4DNAMolecularMaterial.cc.
const std::vector< G4double > * G4DNAMolecularMaterial::GetNumMolPerVolTableFor | ( | const G4Material * | searchedMaterial | ) | const |
Retrieve a table of molecular densities (number of molecules per unit volume) in the G4 unit system for chosen material.
[in] | searchedMaterial | The material which you'd like to retrieve the molecular density |
searchedMaterial
used in parameter must be built as a molecular material, using the number of atoms rather than the density fractions. searchedMaterial
indexed on the (parent) material index. Definition at line 396 of file G4DNAMolecularMaterial.cc.
Referenced by G4DNASecondOrderReaction::BuildPhysicsTable(), G4DNACPA100ElasticModel::CrossSectionPerVolume(), G4DNACPA100ExcitationModel::CrossSectionPerVolume(), G4DNACPA100IonisationModel::CrossSectionPerVolume(), G4DNAPTBElasticModel::CrossSectionPerVolume(), G4DNAPTBExcitationModel::CrossSectionPerVolume(), G4DNAPTBIonisationModel::CrossSectionPerVolume(), G4DNABornExcitationModel1::Initialise(), G4DNABornExcitationModel2::Initialise(), G4DNADingfelderChargeDecreaseModel::Initialise(), G4DNADingfelderChargeIncreaseModel::Initialise(), G4DNAEmfietzoglouExcitationModel::Initialise(), G4DNAMillerGreenExcitationModel::Initialise(), G4DNARelativisticIonisationModel::Initialise(), G4DNARPWBAExcitationModel::Initialise(), G4DNARPWBAIonisationModel::Initialise(), G4DNARuddIonisationExtendedModel::Initialise(), and G4DNARuddIonisationModel::Initialise().
void G4DNAMolecularMaterial::Initialize | ( | ) |
Definition at line 164 of file G4DNAMolecularMaterial.cc.
Referenced by GetDensityTableFor(), GetNumMolPerVolTableFor(), G4DNAChampionElasticModel::Initialise(), G4DNAIonElasticModel::Initialise(), and Notify().
|
protected |
Definition at line 197 of file G4DNAMolecularMaterial.cc.
Referenced by Initialize().
|
protected |
Definition at line 237 of file G4DNAMolecularMaterial.cc.
Referenced by Initialize().
|
static |
Definition at line 80 of file G4DNAMolecularMaterial.cc.
Referenced by G4DNABrownianTransportation::BuildPhysicsTable(), G4DNASecondOrderReaction::BuildPhysicsTable(), G4DNACPA100ElasticModel::CrossSectionPerVolume(), G4DNACPA100ExcitationModel::CrossSectionPerVolume(), G4DNACPA100IonisationModel::CrossSectionPerVolume(), G4DNAELSEPAElasticModel::CrossSectionPerVolume(), G4DNAPTBElasticModel::CrossSectionPerVolume(), G4DNAPTBExcitationModel::CrossSectionPerVolume(), G4DNAPTBIonisationModel::CrossSectionPerVolume(), G4DNABornExcitationModel1::Initialise(), G4DNABornExcitationModel2::Initialise(), G4DNABornIonisationModel1::Initialise(), G4DNABornIonisationModel2::Initialise(), G4DNAChampionElasticModel::Initialise(), G4DNADingfelderChargeDecreaseModel::Initialise(), G4DNADingfelderChargeIncreaseModel::Initialise(), G4DNAEmfietzoglouExcitationModel::Initialise(), G4DNAEmfietzoglouIonisationModel::Initialise(), G4DNAIonElasticModel::Initialise(), G4DNAMeltonAttachmentModel::Initialise(), G4DNAMillerGreenExcitationModel::Initialise(), G4DNARelativisticIonisationModel::Initialise(), G4DNARPWBAExcitationModel::Initialise(), G4DNARPWBAIonisationModel::Initialise(), G4DNARuddIonisationExtendedModel::Initialise(), G4DNARuddIonisationModel::Initialise(), G4DNASancheExcitationModel::Initialise(), G4DNAScreenedRutherfordElasticModel::Initialise(), G4DNATransformElectronModel::Initialise(), G4DNAUeharaScreenedRutherfordElasticModel::Initialise(), and G4TDNAOneStepThermalizationModel< MODEL >::Initialise().
|
overridevirtual |
Implements G4VStateDependent.
Definition at line 146 of file G4DNAMolecularMaterial.cc.
|
delete |
|
protected |
Definition at line 467 of file G4DNAMolecularMaterial.cc.
Referenced by GetDensityTableFor(), and GetNumMolPerVolTableFor().
|
protected |
Definition at line 270 of file G4DNAMolecularMaterial.cc.
Referenced by SearchMolecularMaterial().
|
protected |
Definition at line 295 of file G4DNAMolecularMaterial.cc.
Referenced by Initialize(), and SearchMolecularMaterial().
void G4DNAMolecularMaterial::SetMolecularConfiguration | ( | const G4Material * | material, |
const G4String & | molConf ) |
Associate a molecular configuration to a G4material.
[in] | material | Pointer to a G4 material. The material does not need to be defined as a molecular material. |
[in] | molConf | User ID of the molecular configuration corresponding to the G4 material . |
[in] | material | Name of the G4 material. The material does not need to be defined as a molecular material. |
[in] | molConf | User ID of the molecular configuration corresponding to the G4 material . |
Definition at line 524 of file G4DNAMolecularMaterial.cc.
void G4DNAMolecularMaterial::SetMolecularConfiguration | ( | const G4Material * | material, |
G4MolecularConfiguration * | molConf ) |
Associate a molecular configuration to a G4material.
[in] | material | Pointer to a G4 material. The material does not need to be defined as a molecular material. |
[in] | molConf | The molecular configuration corresponding to the G4 material . |
Definition at line 512 of file G4DNAMolecularMaterial.cc.
Referenced by SetMolecularConfiguration().
void G4DNAMolecularMaterial::SetMolecularConfiguration | ( | const G4String & | materialName, |
const G4String & | molUserIF ) |
Definition at line 536 of file G4DNAMolecularMaterial.cc.
|
mutableprotected |
Definition at line 249 of file G4DNAMolecularMaterial.hh.
Referenced by Clear(), and GetDensityTableFor().
|
mutableprotected |
Definition at line 251 of file G4DNAMolecularMaterial.hh.
Referenced by Clear(), and GetNumMolPerVolTableFor().
|
staticprotected |
Definition at line 225 of file G4DNAMolecularMaterial.hh.
Referenced by Instance().
|
protected |
Definition at line 257 of file G4DNAMolecularMaterial.hh.
Referenced by Create(), GetDensityTableFor(), GetNumMolPerVolTableFor(), and Initialize().
|
protected |
Definition at line 255 of file G4DNAMolecularMaterial.hh.
Referenced by GetMolecularConfiguration(), SetMolecularConfiguration(), and SetMolecularConfiguration().
|
protected |
Definition at line 258 of file G4DNAMolecularMaterial.hh.
Referenced by Create(), GetDensityTableFor(), GetNumMolPerVolTableFor(), Initialize(), InitializeDensity(), and InitializeNumMolPerVol().
|
protected |
Definition at line 245 of file G4DNAMolecularMaterial.hh.
Referenced by Clear(), Create(), GetDensityTable(), GetDensityTableFor(), InitializeDensity(), and InitializeNumMolPerVol().
|
protected |
Definition at line 244 of file G4DNAMolecularMaterial.hh.
Referenced by Clear(), Create(), GetMassFractionTable(), Initialize(), and InitializeDensity().
|
protected |
Definition at line 246 of file G4DNAMolecularMaterial.hh.
Referenced by Clear(), Create(), GetNumMolPerVolTableFor(), and InitializeNumMolPerVol().
|
mutableprotected |
Definition at line 252 of file G4DNAMolecularMaterial.hh.
Referenced by PrintNotAMolecularMaterial().