|
gsystem
|
Material definition belonging to a detector system. More...
#include <gmaterial.h>
Public Member Functions | |
| GMaterial (const std::string &system, std::vector< std::string > pars, const std::shared_ptr< GLogger > &logger) | |
| Construct a material from a serialized parameter list. | |
| virtual std::unique_ptr< GMaterial > | clone () const |
| Clone the material (polymorphic deep-copy). | |
| virtual | ~GMaterial ()=default |
| Virtual destructor (safe deletion through base pointers). | |
| bool | isChemicalFormula () const |
| Heuristic: return true if the composition looks like a chemical formula. | |
Identity and description | |
| std::string | getName () const |
| std::string | getDescription () const |
| double | getDensity () const |
| std::vector< std::string > | getComponents () const |
| std::vector< double > | getAmounts () const |
| Public Member Functions inherited from GBase< GMaterial > | |
| GBase (const std::shared_ptr< GOptions > &gopt, std::string logger_name="") | |
| virtual | ~GBase () |
| GBase & | operator= (const GBase &)=default |
Friends | |
| std::ostream & | operator<< (std::ostream &stream, const GMaterial &gMat) |
| Stream operator used for logging material summaries. | |
Optical properties | |
| std::vector< double > | getPhotonEnergy () const |
| std::vector< double > | getIndexOfRefraction () const |
| std::vector< double > | getAbsorptionLength () const |
| std::vector< double > | getReflectivity () const |
| std::vector< double > | getEfficiency () const |
Scintillation properties | |
| std::vector< double > | getFastComponent () const |
| std::vector< double > | getSlowComponent () const |
| double | getScintillationYield () const |
| double | getResolutionScale () const |
| double | getFasttimeConstant () const |
| double | getSlowtimeConstant () const |
| double | getYieldratio () const |
| double | getBirksConstant () const |
| bool | hasScintillationYield () const |
| bool | hasResolutionScale () const |
| bool | hasFasttimeConstant () const |
| bool | hasSlowtimeConstant () const |
| bool | hasYieldratio () const |
| bool | hasBirksConstant () const |
Additional optical properties | |
| std::vector< double > | getRayleigh () const |
| std::vector< double > | getMie () const |
| double | getMieForward () const |
| double | getMieBackward () const |
| double | getMieRatio () const |
| bool | hasMieForward () const |
| bool | hasMieBackward () const |
| bool | hasMieRatio () const |
Additional Inherited Members | |
| Protected Attributes inherited from GBase< GMaterial > | |
| std::shared_ptr< GLogger > | log |
A GMaterial is constructed from a serialized list of parameters (typically read from a database row or ASCII file) and stores:
The module treats materials as system-local definitions: a system (GSystem) loads its own materials and associates them to volumes by name.
Definition at line 28 of file gmaterial.h.
| GMaterial::GMaterial | ( | const std::string & | system, |
| std::vector< std::string > | pars, | ||
| const std::shared_ptr< GLogger > & | logger ) |
| system | System name that owns this material (used for provenance/logging). |
| pars | Serialized material parameters (must match gsystem::GMATERIALNUMBEROFPARS). |
| logger | Logger used for diagnostics and error reporting. |
The constructor validates pars length against gsystem::GMATERIALNUMBEROFPARS and then parses the fields. Unset optical/scintillation properties are skipped.
Definition at line 21 of file gmaterial.cc.
|
virtualdefault |
|
inlinenodiscardvirtual |
Definition at line 48 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 188 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 181 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 202 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 180 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 179 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 178 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 190 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 195 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 199 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 187 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 214 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 216 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 215 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 217 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 177 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 186 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 213 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 189 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 198 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 197 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 196 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 200 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 201 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 208 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 205 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 219 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 218 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 220 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 204 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 203 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 206 of file gmaterial.h.
|
inlinenodiscard |
Definition at line 207 of file gmaterial.h.
|
inlinenodiscard |
The module uses a simple heuristic: when the sum of amounts is > 1.0, the values are likely atom counts rather than fractional masses.
true if the composition likely represents a formula, false otherwise. Definition at line 231 of file gmaterial.h.
|
friend |
Definition at line 74 of file gmaterial.cc.