VGM Version 5.3
|
VGM material factory for Geant4. More...
#include <MaterialFactory.h>
Public Member Functions | |
MaterialFactory () | |
virtual | ~MaterialFactory () |
virtual VGM::IIsotope * | CreateIsotope (const std::string &name, int z, int n, double a) |
Create a chemical isotope. | |
virtual VGM::IElement * | CreateElement (const std::string &name, const std::string &symbol, double z, double a) |
Create a chemical element. | |
virtual VGM::IElement * | CreateElement (const std::string &name, const std::string &symbol, const VGM::IsotopeVector &isotopes, const VGM::RelAbundanceVector &relAbundances) |
Create a chemical element. | |
virtual VGM::IElement * | CreateElement (int z, bool isotopes) |
Create a chemical element. | |
virtual VGM::IMaterial * | CreateMaterial (const std::string &name, double density, VGM::IElement *element, double radlen, double intlen) |
Create a material. | |
virtual VGM::IMaterial * | CreateMaterial (const std::string &name, double density, VGM::IElement *element, double radlen, double intlen, VGM::MaterialState state, double temperature, double pressure) |
Create a compound material. | |
virtual VGM::IMaterial * | CreateMaterial (const std::string &name, double density, const VGM::ElementVector &elements, const VGM::MassFractionVector &fractions) |
Create a compound material. | |
virtual VGM::IMaterial * | CreateMaterial (const std::string &name, double density, const VGM::ElementVector &elements, const VGM::MassFractionVector &fractions, VGM::MaterialState state, double temperature, double pressure) |
Create a compound material. | |
virtual VGM::IMaterial * | CreateMaterial (const std::string &name, double density, const VGM::ElementVector &elements, const VGM::AtomCountVector &atomCounts) |
Create a compound material. | |
virtual VGM::IMaterial * | CreateMaterial (const std::string &name, double density, const VGM::ElementVector &elements, const VGM::AtomCountVector &atomCounts, VGM::MaterialState state, double temperature, double pressure) |
Create a compound material. | |
virtual VGM::IMedium * | CreateMedium (const std::string &name, int mediumId, VGM::IMaterial *material, int nofParameters, double *parameters) |
Create a tracking medium. | |
virtual bool | Import () |
Import native materials. | |
Public Member Functions inherited from BaseVGM::VMaterialFactory | |
VMaterialFactory (const std::string &name) | |
virtual | ~VMaterialFactory () |
virtual std::string | Name () const |
Return the name of this factory. | |
virtual const VGM::IsotopeStore & | Isotopes () const |
Return the store of isotopes. | |
virtual const VGM::ElementStore & | Elements () const |
Return the store of elements. | |
virtual const VGM::MaterialStore & | Materials () const |
Return the store of materials. | |
virtual const VGM::MediumStore & | Media () const |
Return the store of media. | |
virtual const VGM::IIsotope * | Isotope (const std::string &name) const |
Return isotope specified by name. | |
virtual const VGM::IElement * | Element (const std::string &name) const |
Return element specified by name. | |
virtual const VGM::IMaterial * | Material (const std::string &name) const |
Return material specified by name. | |
virtual const VGM::IMedium * | Medium (const std::string &name) const |
Return medium specified by name. | |
virtual bool | Export (VGM::IMaterialFactory *factory) const |
Export materials to the specified material factory. | |
virtual void | PrintIsotopes () const |
Print all isotopes. | |
virtual void | PrintElements () const |
Print all elements. | |
virtual void | PrintMaterials () const |
Print all materials. | |
virtual void | PrintMedia () const |
Print all media. | |
virtual void | SetDebug (int debug) |
Set the debug level. | |
virtual int | Debug () const |
Return the debug level. | |
Public Member Functions inherited from VGM::IMaterialFactory | |
virtual | ~IMaterialFactory () |
Protected Member Functions | |
MaterialFactory (const MaterialFactory &rhs) | |
Protected Member Functions inherited from BaseVGM::VMaterialFactory | |
VMaterialFactory () | |
VMaterialFactory (const VMaterialFactory &rhs) | |
virtual VGM::IsotopeStore & | IsotopeStore () |
virtual VGM::ElementStore & | ElementStore () |
virtual VGM::MaterialStore & | MaterialStore () |
virtual VGM::MediumStore & | MediumStore () |
VGM material factory for Geant4.
Definition at line 37 of file MaterialFactory.h.
Geant4GM::MaterialFactory::MaterialFactory | ( | ) |
Standard default constructor
Definition at line 44 of file MaterialFactory.cxx.
|
virtual |
Definition at line 63 of file MaterialFactory.cxx.
|
protected |
Protected copy constructor
Definition at line 53 of file MaterialFactory.cxx.
|
virtual |
Create a chemical isotope.
name | its name (must be unique in the factory) |
z | the atomic number |
n | the number of nucleons |
a | the mass of a mole in g/mole (optional) |
Implements VGM::IMaterialFactory.
Definition at line 183 of file MaterialFactory.cxx.
|
virtual |
Create a chemical element.
name | its name (must be unique in the factory) |
symbol | its symbol |
z | the effective atomic number |
a | the effective mass of a mole in g/mole |
Implements VGM::IMaterialFactory.
Definition at line 211 of file MaterialFactory.cxx.
|
virtual |
Create a chemical element.
name | its name (must be unique in the factory) |
symbol | its symbol |
isotopes | vector of isotopes constituting this element |
relAbundances | vector of relative abundances of isotopes |
Implements VGM::IMaterialFactory.
Definition at line 264 of file MaterialFactory.cxx.
|
virtual |
Create a chemical element.
z | the effective atomic number |
isotopes | if true, build element from isotopes |
Implements VGM::IMaterialFactory.
Definition at line 290 of file MaterialFactory.cxx.
|
virtual |
Create a material.
name | its name (must be unique in the factory) |
density | in g/cm3 |
element | element constituing this material |
radlen | radiation length in mm |
intlen | nuclear interaction length in mm |
Implements VGM::IMaterialFactory.
Definition at line 317 of file MaterialFactory.cxx.
|
virtual |
Create a compound material.
name | its name (must be unique in the factory) |
density | in g/cm3 |
element | element constituing this material |
radlen | radiation length in mm |
intlen | nuclear interaction length in mm |
state | material state |
temperature | temperature in kelvin |
pressure | pressure in atmosphere |
Implements VGM::IMaterialFactory.
Definition at line 334 of file MaterialFactory.cxx.
|
virtual |
Create a compound material.
name | its name (must be unique in the factory) |
density | in g/cm3 |
elements | vector of elements constituing this material |
fractions | vector of mass fractions of elements constituing this material |
Implements VGM::IMaterialFactory.
Definition at line 352 of file MaterialFactory.cxx.
|
virtual |
Create a compound material.
name | its name (must be unique in the factory) |
density | in g/cm3 |
elements | vector of elements constituing this material |
fractions | vector of mass fractions of elements constituing this material |
state | material state |
temperature | temperature in kelvin |
pressure | pressure in atmosphere |
Implements VGM::IMaterialFactory.
Definition at line 366 of file MaterialFactory.cxx.
|
virtual |
Create a compound material.
name | its name (must be unique in the factory) |
density | in g/cm3 |
elements | vector of elements constituing this material |
atomCounts | vector of atom counts of elements constituing this material |
Implements VGM::IMaterialFactory.
Definition at line 381 of file MaterialFactory.cxx.
|
virtual |
Create a compound material.
name | its name (must be unique in the factory) |
density | in g/cm3 |
elements | vector of elements constituing this material |
atomCounts | vector of atom counts of elements constituing this material |
state | material state |
temperature | temperature in kelvin |
pressure | pressure in atmosphere |
Implements VGM::IMaterialFactory.
Definition at line 395 of file MaterialFactory.cxx.
|
virtual |
Create a tracking medium.
name | its name (must be unique in the factory) |
mediumId | its unique identifier |
material | associated material |
nofParameters | number of defined parameters |
parameters | array of parameters |
Implements VGM::IMaterialFactory.
Definition at line 410 of file MaterialFactory.cxx.
|
virtual |
Import native materials.
Import all isotopes, elements, materials from G4MaterialTable
Implements VGM::IMaterialFactory.
Definition at line 423 of file MaterialFactory.cxx.