ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
|
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...
Public Member Functions | |
void | Initialize () |
void | Clear () |
virtual G4bool | Notify (G4ApplicationState requestedState) |
const std::vector< double > * | 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< double > * | 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 () |
static void | DeleteInstance () |
Protected Member Functions | |
G4DNAMolecularMaterial () | |
G4DNAMolecularMaterial (const G4DNAMolecularMaterial &right) | |
G4DNAMolecularMaterial & | operator= (const G4DNAMolecularMaterial &) |
virtual | ~G4DNAMolecularMaterial () |
void | Create () |
void | InitializeNumMolPerVol () |
void | InitializeDensity () |
void | RecordMolecularMaterial (G4Material *parentMaterial, G4Material *molecularMaterial, G4double fraction) |
void | SearchMolecularMaterial (G4Material *parentMaterial, G4Material *material, double currentFraction) |
void | AddMaterial (const G4Material *, double 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< double > *, CompareMaterial > | fAskedDensityTable |
std::map< const G4Material *, std::vector< double > *, CompareMaterial > | fAskedNumPerVolTable |
std::map< const G4Material *, bool, CompareMaterial > | fWarningPrinted |
std::map< int, G4MolecularConfiguration * > | fMaterialToMolecularConf |
G4bool | fIsInitialized |
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.
View newest version in sPHENIX GitHub at line 95 of file G4DNAMolecularMaterial.hh
|
protected |
Definition at line 143 of file G4DNAMolecularMaterial.cc.
View newest version in sPHENIX GitHub at line 143 of file G4DNAMolecularMaterial.cc
References Create(), and fInstance.
|
protected |
Definition at line 169 of file G4DNAMolecularMaterial.cc.
View newest version in sPHENIX GitHub at line 169 of file G4DNAMolecularMaterial.cc
References Create().
|
protectedvirtual |
Definition at line 188 of file G4DNAMolecularMaterial.cc.
View newest version in sPHENIX GitHub at line 188 of file G4DNAMolecularMaterial.cc
References Clear(), and fInstance.
|
protected |
void G4DNAMolecularMaterial::Clear | ( | ) |
Definition at line 105 of file G4DNAMolecularMaterial.cc.
View newest version in sPHENIX GitHub at line 105 of file G4DNAMolecularMaterial.cc
References it.
Referenced by Notify(), and ~G4DNAMolecularMaterial().
|
protected |
Definition at line 93 of file G4DNAMolecularMaterial.cc.
View newest version in sPHENIX GitHub at line 93 of file G4DNAMolecularMaterial.cc
Referenced by G4DNAMolecularMaterial(), and operator=().
|
static |
Definition at line 83 of file G4DNAMolecularMaterial.cc.
View newest version in sPHENIX GitHub at line 83 of file G4DNAMolecularMaterial.cc
|
inline |
Definition at line 145 of file G4DNAMolecularMaterial.hh.
View newest version in sPHENIX GitHub at line 145 of file G4DNAMolecularMaterial.hh
References fpCompDensityTable.
const std::vector< double > * 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 364 of file G4DNAMolecularMaterial.cc.
View newest version in sPHENIX GitHub at line 364 of file G4DNAMolecularMaterial.cc
References fAskedDensityTable, FatalException, fIsInitialized, fNMaterials, fpCompDensityTable, G4endl, G4Exception(), G4State_Init, G4Material::GetMaterialTable(), G4StateManager::GetStateManager(), Initialize(), it, and PrintNotAMolecularMaterial().
Referenced by G4DNAElectronHoleRecombination::FindReactant().
|
inline |
Definition at line 142 of file G4DNAMolecularMaterial.hh.
View newest version in sPHENIX GitHub at line 142 of file G4DNAMolecularMaterial.hh
References fpCompFractionTable.
G4MolecularConfiguration * G4DNAMolecularMaterial::GetMolecularConfiguration | ( | const G4Material * | material | ) | const |
Definition at line 543 of file G4DNAMolecularMaterial.cc.
View newest version in sPHENIX GitHub at line 543 of file G4DNAMolecularMaterial.cc
References fMaterialToMolecularConf, G4Material::GetIndex(), and it.
G4double G4DNAMolecularMaterial::GetNumMoleculePerVolumeUnitForMaterial | ( | const G4Material * | mat | ) |
Deprecated.
Definition at line 596 of file G4DNAMolecularMaterial.cc.
View newest version in sPHENIX GitHub at line 596 of file G4DNAMolecularMaterial.cc
References FatalException, and G4Exception().
G4double G4DNAMolecularMaterial::GetNumMolPerVolForComponentInComposite | ( | const G4Material * | composite, |
const G4Material * | component, | ||
G4double | massFraction | ||
) |
Deprecated.
Definition at line 610 of file G4DNAMolecularMaterial.cc.
View newest version in sPHENIX GitHub at line 610 of file G4DNAMolecularMaterial.cc
References FatalException, and G4Exception().
const std::vector< double > * 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 435 of file G4DNAMolecularMaterial.cc.
View newest version in sPHENIX GitHub at line 435 of file G4DNAMolecularMaterial.cc
References fAskedNumPerVolTable, FatalException, fIsInitialized, fNMaterials, fpCompNumMolPerVolTable, G4endl, G4Exception(), G4State_Init, G4Material::GetMaterialTable(), G4StateManager::GetStateManager(), Initialize(), it, and PrintNotAMolecularMaterial().
Referenced by G4DNAModelInterface::BuildMaterialMolPerVolTable(), G4DNASecondOrderReaction::BuildPhysicsTable(), G4DNADingfelderChargeDecreaseModel::Initialise(), G4DNADummyModel::Initialise(), G4DNADingfelderChargeIncreaseModel::Initialise(), G4DNABornExcitationModel1::Initialise(), G4DNABornExcitationModel2::Initialise(), G4DNAMillerGreenExcitationModel::Initialise(), G4DNARuddIonisationModel::Initialise(), G4DNARuddIonisationExtendedModel::Initialise(), G4DNAEmfietzoglouExcitationModel::Initialise(), G4DNACPA100ElasticModel::Initialise(), G4DNACPA100ExcitationModel::Initialise(), and G4DNACPA100IonisationModel::Initialise().
void G4DNAMolecularMaterial::Initialize | ( | ) |
Definition at line 198 of file G4DNAMolecularMaterial.cc.
View newest version in sPHENIX GitHub at line 198 of file G4DNAMolecularMaterial.cc
References aMutex, fIsInitialized, fNMaterials, fpCompFractionTable, G4Material::GetMaterialTable(), InitializeDensity(), InitializeNumMolPerVol(), mat, and SearchMolecularMaterial().
Referenced by G4DNAModelInterface::BuildMaterialMolPerVolTable(), GetDensityTableFor(), GetNumMolPerVolTableFor(), G4DNAChampionElasticModel::Initialise(), G4DNAELSEPAElasticModel::Initialise(), G4DNAIonElasticModel::Initialise(), and Notify().
|
protected |
Definition at line 232 of file G4DNAMolecularMaterial.cc.
View newest version in sPHENIX GitHub at line 232 of file G4DNAMolecularMaterial.cc
References FatalException, fNMaterials, fpCompDensityTable, fpCompFractionTable, G4endl, G4Exception(), G4Material::GetMaterialTable(), and it.
Referenced by Initialize().
|
protected |
Definition at line 273 of file G4DNAMolecularMaterial.cc.
View newest version in sPHENIX GitHub at line 273 of file G4DNAMolecularMaterial.cc
References FatalException, fNMaterials, fpCompDensityTable, fpCompNumMolPerVolTable, G4endl, G4Exception(), and it.
Referenced by Initialize().
|
static |
Definition at line 75 of file G4DNAMolecularMaterial.cc.
View newest version in sPHENIX GitHub at line 75 of file G4DNAMolecularMaterial.cc
Referenced by G4DNAModelInterface::BuildMaterialMolPerVolTable(), G4DNASecondOrderReaction::BuildPhysicsTable(), G4DNABrownianTransportation::BuildPhysicsTable(), G4DNAElectronHoleRecombination::FindReactant(), G4DNAUeharaScreenedRutherfordElasticModel::Initialise(), G4DNAScreenedRutherfordElasticModel::Initialise(), G4DNADingfelderChargeDecreaseModel::Initialise(), G4DNADummyModel::Initialise(), G4DNADingfelderChargeIncreaseModel::Initialise(), G4DNAMeltonAttachmentModel::Initialise(), G4DNABornExcitationModel1::Initialise(), G4DNAChampionElasticModel::Initialise(), G4DNASancheExcitationModel::Initialise(), G4DNAELSEPAElasticModel::Initialise(), G4DNAMillerGreenExcitationModel::Initialise(), G4DNABornExcitationModel2::Initialise(), G4DNARuddIonisationModel::Initialise(), G4DNARuddIonisationExtendedModel::Initialise(), G4DNABornIonisationModel2::Initialise(), G4DNABornIonisationModel1::Initialise(), G4DNAIonElasticModel::Initialise(), G4DNAEmfietzoglouExcitationModel::Initialise(), G4DNAEmfietzoglouIonisationModel::Initialise(), G4DNACPA100ElasticModel::Initialise(), G4DNATransformElectronModel::Initialise(), G4DNACPA100ExcitationModel::Initialise(), G4DNACPA100IonisationModel::Initialise(), and G4TDNAOneStepThermalizationModel< MODEL >::Initialise().
|
virtual |
Implements G4VStateDependent.
Definition at line 152 of file G4DNAMolecularMaterial.cc.
View newest version in sPHENIX GitHub at line 152 of file G4DNAMolecularMaterial.cc
References Clear(), G4State_Idle, G4State_PreInit, G4State_Quit, G4StateManager::GetStateManager(), and Initialize().
|
protected |
Definition at line 179 of file G4DNAMolecularMaterial.cc.
View newest version in sPHENIX GitHub at line 179 of file G4DNAMolecularMaterial.cc
References Create().
|
protected |
Definition at line 509 of file G4DNAMolecularMaterial.cc.
View newest version in sPHENIX GitHub at line 509 of file G4DNAMolecularMaterial.cc
References fWarningPrinted, G4endl, G4Exception(), G4Material::GetName(), it, and JustWarning.
Referenced by GetDensityTableFor(), and GetNumMolPerVolTableFor().
|
protected |
Definition at line 307 of file G4DNAMolecularMaterial.cc.
View newest version in sPHENIX GitHub at line 307 of file G4DNAMolecularMaterial.cc
References G4Material::GetIndex(), and it.
Referenced by SearchMolecularMaterial().
|
protected |
Definition at line 332 of file G4DNAMolecularMaterial.cc.
View newest version in sPHENIX GitHub at line 332 of file G4DNAMolecularMaterial.cc
References G4Material::GetMassOfMolecule(), G4Material::GetMatComponents(), it, and RecordMolecularMaterial().
Referenced by Initialize().
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 555 of file G4DNAMolecularMaterial.cc.
View newest version in sPHENIX GitHub at line 555 of file G4DNAMolecularMaterial.cc
References fMaterialToMolecularConf, and G4Material::GetIndex().
Referenced by SetMolecularConfiguration().
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 566 of file G4DNAMolecularMaterial.cc.
View newest version in sPHENIX GitHub at line 566 of file G4DNAMolecularMaterial.cc
References fMaterialToMolecularConf, G4MoleculeTable::GetConfiguration(), G4Material::GetIndex(), and G4MoleculeTable::Instance().
void G4DNAMolecularMaterial::SetMolecularConfiguration | ( | const G4String & | materialName, |
const G4String & | molUserIF | ||
) |
Definition at line 578 of file G4DNAMolecularMaterial.cc.
View newest version in sPHENIX GitHub at line 578 of file G4DNAMolecularMaterial.cc
References G4cout, G4endl, G4Material::GetMaterial(), material(), and SetMolecularConfiguration().
|
mutableprotected |
Definition at line 249 of file G4DNAMolecularMaterial.hh.
View newest version in sPHENIX GitHub at line 249 of file G4DNAMolecularMaterial.hh
Referenced by GetDensityTableFor().
|
mutableprotected |
Definition at line 251 of file G4DNAMolecularMaterial.hh.
View newest version in sPHENIX GitHub at line 251 of file G4DNAMolecularMaterial.hh
Referenced by GetNumMolPerVolTableFor().
|
staticprotected |
Definition at line 223 of file G4DNAMolecularMaterial.hh.
View newest version in sPHENIX GitHub at line 223 of file G4DNAMolecularMaterial.hh
Referenced by G4DNAMolecularMaterial(), and ~G4DNAMolecularMaterial().
|
protected |
Definition at line 257 of file G4DNAMolecularMaterial.hh.
View newest version in sPHENIX GitHub at line 257 of file G4DNAMolecularMaterial.hh
Referenced by GetDensityTableFor(), GetNumMolPerVolTableFor(), and Initialize().
|
protected |
Definition at line 255 of file G4DNAMolecularMaterial.hh.
View newest version in sPHENIX GitHub at line 255 of file G4DNAMolecularMaterial.hh
Referenced by GetMolecularConfiguration(), and SetMolecularConfiguration().
|
protected |
Definition at line 258 of file G4DNAMolecularMaterial.hh.
View newest version in sPHENIX GitHub at line 258 of file G4DNAMolecularMaterial.hh
Referenced by GetDensityTableFor(), GetNumMolPerVolTableFor(), Initialize(), InitializeDensity(), and InitializeNumMolPerVol().
|
protected |
Definition at line 245 of file G4DNAMolecularMaterial.hh.
View newest version in sPHENIX GitHub at line 245 of file G4DNAMolecularMaterial.hh
Referenced by GetDensityTable(), GetDensityTableFor(), InitializeDensity(), and InitializeNumMolPerVol().
|
protected |
Definition at line 244 of file G4DNAMolecularMaterial.hh.
View newest version in sPHENIX GitHub at line 244 of file G4DNAMolecularMaterial.hh
Referenced by GetMassFractionTable(), Initialize(), and InitializeDensity().
|
protected |
Definition at line 246 of file G4DNAMolecularMaterial.hh.
View newest version in sPHENIX GitHub at line 246 of file G4DNAMolecularMaterial.hh
Referenced by GetNumMolPerVolTableFor(), and InitializeNumMolPerVol().
|
mutableprotected |
Definition at line 252 of file G4DNAMolecularMaterial.hh.
View newest version in sPHENIX GitHub at line 252 of file G4DNAMolecularMaterial.hh
Referenced by PrintNotAMolecularMaterial().