Garfield++ v2r0
A toolkit for the detailed simulation of particle detectors based on ionisation measurement in gases and semiconductors
|
#include <MatterDef.h>
Public Member Functions | |
MatterDef () | |
MatterDef (const std::string &fname, const std::string &fnotation, long fqatom, const std::vector< std::string > &fatom_not, const std::vector< double > &fweight_quan, double fdensity, double ftemperature) | |
MatterDef (const std::string &fname, const std::string &fnotation, const std::string &fatom_not, double fdensity, double ftemperature) | |
MatterDef (const std::string &fname, const std::string &fnotation, const std::string &fatom_not1, double fweight_quan1, const std::string &fatom_not2, double fweight_quan2, double fdensity, double ftemperature) | |
MatterDef (const std::string &fname, const std::string &fnotation, const std::string &fatom_not1, double fweight_quan1, const std::string &fatom_not2, double fweight_quan2, const std::string &fatom_not3, double fweight_quan3, double fdensity, double ftemperature) | |
~MatterDef () | |
const std::string & | name () const |
const std::string & | notation () const |
double | density () const |
double | temperature () const |
double | I_eff () const |
void | verify () |
Check that there is no matter with the same name in the container. | |
virtual void | print (std::ostream &file, int l) const |
virtual MatterDef * | copy () const |
Public Member Functions inherited from Heed::AtomMixDef | |
AtomMixDef () | |
Default constructor. | |
AtomMixDef (unsigned long fqatom, const std::vector< std::string > &fatom_not, const std::vector< double > &fweight_quan) | |
AtomMixDef (unsigned long fqatom, const std::vector< std::string > &fatom_not, const std::vector< long > &fweight_quan) | |
AtomMixDef (const std::string &fatom_not) | |
AtomMixDef (const std::string &fatom_not1, double fweight_quan1, const std::string &fatom_not2, double fweight_quan2) | |
AtomMixDef (const std::string &fatom_not1, double fweight_quan1, const std::string &fatom_not2, double fweight_quan2, const std::string &fatom_not3, double fweight_quan3) | |
AtomMixDef (const std::string &fatom_not1, double fweight_quan1, const std::string &fatom_not2, double fweight_quan2, const std::string &fatom_not3, double fweight_quan3, const std::string &fatom_not4, double fweight_quan4) | |
void | print (std::ostream &file, int l) const |
long | qatom () const |
const std::vector< PassivePtr< AtomDef > > & | atom () const |
PassivePtr< AtomDef > | atom (long n) const |
const std::vector< double > & | weight_quan () const |
const std::vector< double > & | weight_mass () const |
double | weight_quan (long n) const |
double | weight_mass (long n) const |
double | Z_mean () const |
double | A_mean () const |
double | inv_A_mean () const |
double | mean_ratio_Z_to_A () const |
double | NumberOfElectronsInGram () const |
Public Member Functions inherited from Heed::RegPassivePtr | |
RegPassivePtr (void) | |
RegPassivePtr (char fs_ban_del, char fs_ban_sub, char fs_ban_cop=0) | |
RegPassivePtr (const RegPassivePtr &f) | |
RegPassivePtr & | operator= (const RegPassivePtr &f) |
CountPP_ns::CountPassivePtr * | book (void) const |
void | clear_pointers (void) const |
virtual RegPassivePtr * | copy () const |
virtual | ~RegPassivePtr () |
virtual void | print (std::ostream &file, int l=1) const |
void | set_s_ban_del (char fs_ban_del) |
char | get_s_ban_del (void) const |
void | set_s_ban_sub (char fs_ban_sub) |
char | get_s_ban_sub (void) const |
void | set_s_ban_cop (char fs_ban_cop) |
char | get_s_ban_cop (void) const |
void | set_s_allow_del_at_zero_count (char fs_allow_del_at_zero_count) |
char | get_s_allow_del_at_zero_count (void) const |
long | get_total_number_of_references (void) const |
Static Public Member Functions | |
static void | printall (std::ostream &file) |
static void | verify (const std::string &fname, const std::string &fnotation) |
static std::list< MatterDef * > & | get_logbook () |
static const std::list< MatterDef * > & | get_const_logbook () |
static MatterDef * | get_MatterDef (const std::string &fnotation) |
Static Public Member Functions inherited from Heed::RegPassivePtr | |
static void | set_s_ban_del_ignore (char fs_ban_del_ignore) |
static char | get_s_ban_del_ignore (void) |
static void | set_s_print_adr_cpp (char fs_print_adr_cpp) |
static char | get_s_print_adr_cpp (void) |
Definition of matter (material or any media). Only the basic information: the name, the notation, the atomic mixture, temperature, density, effective ionization potential.
The principle of definitions of matters is the same as for atoms: a dictionary or a database. See details there. But the logbook is different, of course.
1998-2004 I. Smirnov
Definition at line 18 of file MatterDef.h.
Heed::MatterDef::MatterDef | ( | ) |
Definition at line 12 of file MatterDef.cpp.
Referenced by copy(), and Heed::GasDef::GasDef().
Heed::MatterDef::MatterDef | ( | const std::string & | fname, |
const std::string & | fnotation, | ||
long | fqatom, | ||
const std::vector< std::string > & | fatom_not, | ||
const std::vector< double > & | fweight_quan, | ||
double | fdensity, | ||
double | ftemperature | ||
) |
Definition at line 16 of file MatterDef.cpp.
Heed::MatterDef::MatterDef | ( | const std::string & | fname, |
const std::string & | fnotation, | ||
const std::string & | fatom_not, | ||
double | fdensity, | ||
double | ftemperature | ||
) |
Definition at line 31 of file MatterDef.cpp.
Heed::MatterDef::MatterDef | ( | const std::string & | fname, |
const std::string & | fnotation, | ||
const std::string & | fatom_not1, | ||
double | fweight_quan1, | ||
const std::string & | fatom_not2, | ||
double | fweight_quan2, | ||
double | fdensity, | ||
double | ftemperature | ||
) |
Definition at line 45 of file MatterDef.cpp.
Heed::MatterDef::MatterDef | ( | const std::string & | fname, |
const std::string & | fnotation, | ||
const std::string & | fatom_not1, | ||
double | fweight_quan1, | ||
const std::string & | fatom_not2, | ||
double | fweight_quan2, | ||
const std::string & | fatom_not3, | ||
double | fweight_quan3, | ||
double | fdensity, | ||
double | ftemperature | ||
) |
Definition at line 60 of file MatterDef.cpp.
Heed::MatterDef::~MatterDef | ( | ) |
Definition at line 158 of file MatterDef.cpp.
|
inlinevirtual |
Reimplemented from Heed::RegPassivePtr.
Reimplemented in Heed::GasDef.
Definition at line 66 of file MatterDef.h.
|
inline |
|
static |
Definition at line 131 of file MatterDef.cpp.
|
static |
Initialize the logbook at the first request and keep it as internal static variable.
Definition at line 126 of file MatterDef.cpp.
Referenced by get_const_logbook(), get_MatterDef(), MatterDef(), printall(), verify(), and ~MatterDef().
|
static |
Return the adress of the matter with this notation if it is registered. Otherwise return NULL.
Definition at line 135 of file MatterDef.cpp.
Referenced by Heed::HeedMatterDef::HeedMatterDef().
|
inline |
|
inline |
|
inline |
Definition at line 50 of file MatterDef.h.
Referenced by Heed::operator<<().
|
virtual |
Reimplemented from Heed::AtomMixDef.
Reimplemented in Heed::GasDef.
Definition at line 112 of file MatterDef.cpp.
|
static |
Definition at line 116 of file MatterDef.cpp.
|
inline |
Definition at line 52 of file MatterDef.h.
Referenced by Heed::operator<<().
void Heed::MatterDef::verify | ( | ) |
Check that there is no matter with the same name in the container.
Definition at line 77 of file MatterDef.cpp.
Referenced by Heed::GasDef::GasDef(), and MatterDef().
|
static |
Definition at line 94 of file MatterDef.cpp.