Garfield++ v2r0
A toolkit for the detailed simulation of particle detectors based on ionisation measurement in gases and semiconductors
|
#include <MediumMagboltz.hh>
Public Member Functions | |
MediumMagboltz () | |
virtual | ~MediumMagboltz () |
bool | SetMaxElectronEnergy (const double e) |
double | GetMaxElectronEnergy () const |
bool | SetMaxPhotonEnergy (const double e) |
double | GetMaxPhotonEnergy () const |
void | EnableEnergyRangeAdjustment () |
void | DisableEnergyRangeAdjustment () |
void | EnableAnisotropicScattering () |
void | DisableAnisotropicScattering () |
void | SetSplittingFunctionOpalBeaty () |
void | SetSplittingFunctionGreenSawada () |
void | SetSplittingFunctionFlat () |
void | EnableDeexcitation () |
void | DisableDeexcitation () |
void | EnableRadiationTrapping () |
void | DisableRadiationTrapping () |
void | EnablePenningTransfer (const double r, const double lambda) |
void | EnablePenningTransfer (const double r, const double lambda, std::string gasname) |
void | DisablePenningTransfer () |
void | DisablePenningTransfer (std::string gasname) |
void | EnableCrossSectionOutput () |
void | DisableCrossSectionOutput () |
void | SetExcitationScalingFactor (const double r, std::string gasname) |
bool | Initialise (const bool verbose=false) |
void | PrintGas () |
double | GetElectronNullCollisionRate (const int band) |
double | GetElectronCollisionRate (const double e, const int band) |
double | GetElectronCollisionRate (const double e, const unsigned int level, const int band) |
bool | GetElectronCollision (const double e, int &type, int &level, double &e1, double &dx, double &dy, double &dz, int &nion, int &ndxc, int &band) |
unsigned int | GetNumberOfIonisationProducts () const |
bool | GetIonisationProduct (const unsigned int i, int &type, double &energy) const |
void | ComputeDeexcitation (int iLevel, int &fLevel) |
unsigned int | GetNumberOfDeexcitationProducts () const |
bool | GetDeexcitationProduct (const unsigned int i, double &t, double &s, int &type, double &energy) const |
double | GetPhotonCollisionRate (const double e) |
bool | GetPhotonCollision (const double e, int &type, int &level, double &e1, double &ctheta, int &nsec, double &esec) |
void | ResetCollisionCounters () |
unsigned int | GetNumberOfElectronCollisions () const |
unsigned int | GetNumberOfElectronCollisions (int &nElastic, int &nIonising, int &nAttachment, int &nInelastic, int &nExcitation, int &nSuperelastic) const |
int | GetNumberOfLevels () |
bool | GetLevel (const unsigned int i, int &ngas, int &type, std::string &descr, double &e) |
unsigned int | GetNumberOfElectronCollisions (const unsigned int level) const |
int | GetNumberOfPenningTransfers () const |
int | GetNumberOfPhotonCollisions () const |
int | GetNumberOfPhotonCollisions (int &nElastic, int &nIonising, int &nInelastic) const |
void | RunMagboltz (const double e, const double b, const double btheta, const int ncoll, bool verbose, double &vx, double &vy, double &vz, double &dl, double &dt, double &alpha, double &eta, double &lor, double &vxerr, double &vyerr, double &vzerr, double &dlerr, double &dterr, double &alphaerr, double &etaerr, double &lorerr, double &alphatof) |
void | GenerateGasTable (const int numCollisions=10, const bool verbose=true) |
Public Member Functions inherited from Garfield::MediumGas | |
MediumGas () | |
virtual | ~MediumGas () |
bool | IsGas () const |
bool | SetComposition (const std::string &gas1, const double f1=1., const std::string &gas2="", const double f2=0., const std::string &gas3="", const double f3=0., const std::string &gas4="", const double f4=0., const std::string &gas5="", const double f5=0., const std::string &gas6="", const double f6=0.) |
void | GetComposition (std::string &gas1, double &f1, std::string &gas2, double &f2, std::string &gas3, double &f3, std::string &gas4, double &f4, std::string &gas5, double &f5, std::string &gas6, double &f6) |
void | GetComponent (const unsigned int i, std::string &label, double &f) |
void | SetAtomicNumber (const double z) |
double | GetAtomicNumber () const |
void | SetAtomicWeight (const double a) |
double | GetAtomicWeight () const |
void | SetNumberDensity (const double n) |
double | GetNumberDensity () const |
void | SetMassDensity (const double rho) |
double | GetMassDensity () const |
bool | LoadGasFile (const std::string &filename) |
bool | WriteGasFile (const std::string &filename) |
void | PrintGas () |
bool | LoadIonMobility (const std::string &filename) |
void | SetExtrapolationMethodExcitationRates (const std::string &extrLow, const std::string &extrHigh) |
void | SetExtrapolationMethodIonisationRates (const std::string &extrLow, const std::string &extrHigh) |
void | SetInterpolationMethodExcitationRates (const int intrp) |
void | SetInterpolationMethodIonisationRates (const int intrp) |
double | ScaleElectricField (const double e) const |
double | UnScaleElectricField (const double e) const |
double | ScaleDiffusion (const double d) const |
double | ScaleDiffusionTensor (const double d) const |
double | ScaleTownsend (const double alpha) const |
double | ScaleAttachment (const double eta) const |
double | ScaleLorentzAngle (const double lor) const |
bool | GetPhotoabsorptionCrossSection (const double &e, double &sigma, const unsigned int &i) |
Public Member Functions inherited from Garfield::Medium | |
Medium () | |
virtual | ~Medium () |
int | GetId () const |
const std::string & | GetName () const |
virtual bool | IsGas () const |
virtual bool | IsSemiconductor () const |
void | SetTemperature (const double t) |
double | GetTemperature () const |
void | SetPressure (const double p) |
double | GetPressure () const |
void | SetDielectricConstant (const double eps) |
double | GetDielectricConstant () const |
unsigned int | GetNumberOfComponents () const |
virtual void | GetComponent (const unsigned int i, std::string &label, double &f) |
virtual void | SetAtomicNumber (const double z) |
virtual double | GetAtomicNumber () const |
virtual void | SetAtomicWeight (const double a) |
virtual double | GetAtomicWeight () const |
virtual void | SetNumberDensity (const double n) |
virtual double | GetNumberDensity () const |
virtual void | SetMassDensity (const double rho) |
virtual double | GetMassDensity () const |
virtual void | EnableDrift () |
void | DisableDrift () |
virtual void | EnablePrimaryIonisation () |
void | DisablePrimaryIonisation () |
bool | IsDriftable () const |
bool | IsMicroscopic () const |
bool | IsIonisable () const |
void | SetW (const double w) |
double | GetW () |
void | SetFanoFactor (const double f) |
double | GetFanoFactor () |
virtual bool | ElectronVelocity (const double ex, const double ey, const double ez, const double bx, const double by, const double bz, double &vx, double &vy, double &vz) |
virtual bool | ElectronDiffusion (const double ex, const double ey, const double ez, const double bx, const double by, const double bz, double &dl, double &dt) |
virtual bool | ElectronDiffusion (const double ex, const double ey, const double ez, const double bx, const double by, const double bz, double cov[3][3]) |
virtual bool | ElectronTownsend (const double ex, const double ey, const double ez, const double bx, const double by, const double bz, double &alpha) |
virtual bool | ElectronAttachment (const double ex, const double ey, const double ez, const double bx, const double by, const double bz, double &eta) |
virtual bool | ElectronLorentzAngle (const double ex, const double ey, const double ez, const double bx, const double by, const double bz, double &lor) |
virtual double | GetElectronEnergy (const double px, const double py, const double pz, double &vx, double &vy, double &vz, const int band=0) |
virtual void | GetElectronMomentum (const double e, double &px, double &py, double &pz, int &band) |
virtual double | GetElectronNullCollisionRate (const int band=0) |
virtual double | GetElectronCollisionRate (const double e, const int band=0) |
virtual bool | GetElectronCollision (const double e, int &type, int &level, double &e1, double &dx, double &dy, double &dz, int &nion, int &ndxc, int &band) |
virtual unsigned int | GetNumberOfIonisationProducts () const |
virtual bool | GetIonisationProduct (const unsigned int i, int &type, double &energy) const |
virtual unsigned int | GetNumberOfDeexcitationProducts () const |
virtual bool | GetDeexcitationProduct (const unsigned int i, double &t, double &s, int &type, double &energy) const |
virtual bool | HoleVelocity (const double ex, const double ey, const double ez, const double bx, const double by, const double bz, double &vx, double &vy, double &vz) |
virtual bool | HoleDiffusion (const double ex, const double ey, const double ez, const double bx, const double by, const double bz, double &dl, double &dt) |
virtual bool | HoleDiffusion (const double ex, const double ey, const double ez, const double bx, const double by, const double bz, double cov[3][3]) |
virtual bool | HoleTownsend (const double ex, const double ey, const double ez, const double bx, const double by, const double bz, double &alpha) |
virtual bool | HoleAttachment (const double ex, const double ey, const double ez, const double bx, const double by, const double bz, double &eta) |
virtual bool | IonVelocity (const double ex, const double ey, const double ez, const double bx, const double by, const double bz, double &vx, double &vy, double &vz) |
virtual bool | IonDiffusion (const double ex, const double ey, const double ez, const double bx, const double by, const double bz, double &dl, double &dt) |
virtual bool | IonDissociation (const double ex, const double ey, const double ez, const double bx, const double by, const double bz, double &diss) |
void | SetFieldGrid (double emin, double emax, int ne, bool logE, double bmin=0., double bmax=0., int nb=1, double amin=0., double amax=0., int na=1) |
void | SetFieldGrid (const std::vector< double > &efields, const std::vector< double > &bfields, const std::vector< double > &angles) |
void | GetFieldGrid (std::vector< double > &efields, std::vector< double > &bfields, std::vector< double > &angles) |
bool | GetElectronVelocityE (const unsigned int ie, const unsigned int ib, const unsigned int ia, double &v) |
bool | GetElectronVelocityExB (const unsigned int ie, const unsigned int ib, const unsigned int ia, double &v) |
bool | GetElectronVelocityB (const unsigned int ie, const unsigned int ib, const unsigned int ia, double &v) |
bool | GetElectronLongitudinalDiffusion (const unsigned int ie, const unsigned int ib, const unsigned int ia, double &dl) |
bool | GetElectronTransverseDiffusion (const unsigned int ie, const unsigned int ib, const unsigned int ia, double &dt) |
bool | GetElectronTownsend (const unsigned int ie, const unsigned int ib, const unsigned int ia, double &alpha) |
bool | GetElectronAttachment (const unsigned int ie, const unsigned int ib, const unsigned int ia, double &eta) |
bool | GetElectronLorentzAngle (const unsigned int ie, const unsigned int ib, const unsigned int ia, double &lor) |
bool | GetHoleVelocityE (const unsigned int ie, const unsigned int ib, const unsigned int ia, double &v) |
bool | GetHoleVelocityExB (const unsigned int ie, const unsigned int ib, const unsigned int ia, double &v) |
bool | GetHoleVelocityB (const unsigned int ie, const unsigned int ib, const unsigned int ia, double &v) |
bool | GetHoleLongitudinalDiffusion (const unsigned int ie, const unsigned int ib, const unsigned int ia, double &dl) |
bool | GetHoleTransverseDiffusion (const unsigned int ie, const unsigned int ib, const unsigned int ia, double &dt) |
bool | GetHoleTownsend (const unsigned int ie, const unsigned int ib, const unsigned int ia, double &alpha) |
bool | GetHoleAttachment (const unsigned int ie, const unsigned int ib, const unsigned int ia, double &eta) |
bool | GetIonMobility (const unsigned int ie, const unsigned int ib, const unsigned int ia, double &mu) |
bool | GetIonLongitudinalDiffusion (const unsigned int ie, const unsigned int ib, const unsigned int ia, double &dl) |
bool | GetIonTransverseDiffusion (const unsigned int ie, const unsigned int ib, const unsigned int ia, double &dt) |
bool | GetIonDissociation (const unsigned int ie, const unsigned int ib, const unsigned int ia, double &diss) |
void | ResetElectronVelocity () |
void | ResetElectronDiffusion () |
void | ResetElectronTownsend () |
void | ResetElectronAttachment () |
void | ResetElectronLorentzAngle () |
void | ResetHoleVelocity () |
void | ResetHoleDiffusion () |
void | ResetHoleTownsend () |
void | ResetHoleAttachment () |
void | ResetIonMobility () |
void | ResetIonDiffusion () |
void | ResetIonDissociation () |
bool | SetIonMobility (const unsigned int ie, const unsigned int ib, const unsigned int ia, const double mu) |
bool | SetIonMobility (const std::vector< double > &fields, const std::vector< double > &mobilities) |
void | SetExtrapolationMethodVelocity (const std::string &extrLow, const std::string &extrHigh) |
void | SetExtrapolationMethodDiffusion (const std::string &extrLow, const std::string &extrHigh) |
void | SetExtrapolationMethodTownsend (const std::string &extrLow, const std::string &extrHigh) |
void | SetExtrapolationMethodAttachment (const std::string &extrLow, const std::string &extrHigh) |
void | SetExtrapolationMethodIonMobility (const std::string &extrLow, const std::string &extrHigh) |
void | SetExtrapolationMethodIonDissociation (const std::string &extrLow, const std::string &extrHigh) |
void | SetInterpolationMethodVelocity (const unsigned int intrp) |
void | SetInterpolationMethodDiffusion (const unsigned int intrp) |
void | SetInterpolationMethodTownsend (const unsigned int intrp) |
void | SetInterpolationMethodAttachment (const unsigned int intrp) |
void | SetInterpolationMethodIonMobility (const unsigned int intrp) |
void | SetInterpolationMethodIonDissociation (const unsigned int intrp) |
virtual double | ScaleElectricField (const double e) const |
virtual double | UnScaleElectricField (const double e) const |
virtual double | ScaleVelocity (const double v) const |
virtual double | ScaleDiffusion (const double d) const |
virtual double | ScaleDiffusionTensor (const double d) const |
virtual double | ScaleTownsend (const double alpha) const |
virtual double | ScaleAttachment (const double eta) const |
virtual double | ScaleLorentzAngle (const double lor) const |
virtual double | ScaleDissociation (const double diss) const |
virtual bool | GetOpticalDataRange (double &emin, double &emax, const unsigned int i=0) |
virtual bool | GetDielectricFunction (const double e, double &eps1, double &eps2, const unsigned int i=0) |
virtual bool | GetPhotoAbsorptionCrossSection (const double e, double &sigma, const unsigned int i=0) |
virtual double | GetPhotonCollisionRate (const double e) |
virtual bool | GetPhotonCollision (const double e, int &type, int &level, double &e1, double &ctheta, int &nsec, double &esec) |
void | EnableDebugging () |
void | DisableDebugging () |
Public Attributes | |
double | fit3d4p |
double | fitHigh4p |
double | fit3dQCO2 |
double | fit3dEtaCO2 |
double | fit3dQCH4 |
double | fit3dEtaCH4 |
double | fit3dQC2H6 |
double | fit3dEtaC2H6 |
double | fit4pEtaCH4 |
double | fit4pEtaC2H6 |
double | fit4sEtaC2H6 |
double | fitLineCut |
Additional Inherited Members | |
Protected Member Functions inherited from Garfield::MediumGas | |
bool | GetGasInfo (const std::string &gasname, double &a, double &z) const |
bool | GetGasName (const int gasnumber, const int version, std::string &gasname) |
bool | GetGasName (std::string input, std::string &gasname) const |
bool | GetGasNumberGasFile (const std::string &input, int &number) const |
Protected Member Functions inherited from Garfield::Medium | |
double | GetAngle (const double ex, const double ey, const double ez, const double bx, const double by, const double bz, const double e, const double b) const |
double | Interpolate1D (const double e, const std::vector< double > &table, const std::vector< double > &fields, const unsigned int intpMeth, const int jExtr, const int iExtr) |
bool | GetExtrapolationIndex (std::string extrStr, unsigned int &extrNb) |
void | CloneTable (std::vector< std::vector< std::vector< double > > > &tab, const std::vector< double > &efields, const std::vector< double > &bfields, const std::vector< double > &angles, const unsigned int intp, const unsigned int extrLow, const unsigned int extrHigh, const double init, const std::string &label) |
void | CloneTensor (std::vector< std::vector< std::vector< std::vector< double > > > > &tab, const unsigned int n, const std::vector< double > &efields, const std::vector< double > &bfields, const std::vector< double > &angles, const unsigned int intp, const unsigned int extrLow, const unsigned int extrHigh, const double init, const std::string &label) |
void | InitParamArrays (const unsigned int eRes, const unsigned int bRes, const unsigned int aRes, std::vector< std::vector< std::vector< double > > > &tab, const double val) |
void | InitParamTensor (const unsigned int eRes, const unsigned int bRes, const unsigned int aRes, const unsigned int tRes, std::vector< std::vector< std::vector< std::vector< double > > > > &tab, const double val) |
Protected Attributes inherited from Garfield::MediumGas | |
std::string | m_gas [m_nMaxGases] |
double | m_fraction [m_nMaxGases] |
double | m_atWeight [m_nMaxGases] |
double | m_atNum [m_nMaxGases] |
bool | m_usePenning |
double | m_rPenningGlobal |
double | m_rPenningGas [m_nMaxGases] |
double | m_lambdaPenningGlobal |
double | m_lambdaPenningGas [m_nMaxGases] |
double | m_pressureTable |
double | m_temperatureTable |
std::vector< std::vector< std::vector< double > > > | m_tabTownsendNoPenning |
bool | m_hasExcRates |
bool | m_hasIonRates |
std::vector< std::vector< std::vector< std::vector< double > > > > | m_tabExcRates |
std::vector< std::vector< std::vector< std::vector< double > > > > | m_tabIonRates |
std::vector< excListElement > | m_excitationList |
std::vector< ionListElement > | m_ionisationList |
unsigned int | m_extrLowExcRates |
unsigned int | m_extrHighExcRates |
unsigned int | m_extrLowIonRates |
unsigned int | m_extrHighIonRates |
unsigned int | m_intpExcRates |
unsigned int | m_intpIonRates |
Protected Attributes inherited from Garfield::Medium | |
std::string | m_className |
int | m_id |
std::string | m_name |
double | m_temperature |
double | m_pressure |
double | m_epsilon |
unsigned int | m_nComponents |
double | m_z |
double | m_a |
double | m_density |
bool | m_driftable |
bool | m_microscopic |
bool | m_ionisable |
double | m_w |
double | m_fano |
bool | m_isChanged |
bool | m_debug |
std::vector< double > | m_eFields |
std::vector< double > | m_bFields |
std::vector< double > | m_bAngles |
bool | m_map2d |
bool | m_hasElectronVelocityE |
bool | m_hasElectronVelocityB |
bool | m_hasElectronVelocityExB |
bool | m_hasElectronDiffLong |
bool | m_hasElectronDiffTrans |
bool | m_hasElectronDiffTens |
bool | m_hasElectronAttachment |
bool | m_hasElectronLorentzAngle |
std::vector< std::vector< std::vector< double > > > | tabElectronVelocityE |
std::vector< std::vector< std::vector< double > > > | tabElectronVelocityExB |
std::vector< std::vector< std::vector< double > > > | tabElectronVelocityB |
std::vector< std::vector< std::vector< double > > > | tabElectronDiffLong |
std::vector< std::vector< std::vector< double > > > | tabElectronDiffTrans |
std::vector< std::vector< std::vector< double > > > | tabElectronTownsend |
std::vector< std::vector< std::vector< double > > > | tabElectronAttachment |
std::vector< std::vector< std::vector< double > > > | tabElectronLorentzAngle |
std::vector< std::vector< std::vector< std::vector< double > > > > | tabElectronDiffTens |
bool | m_hasHoleVelocityE |
bool | m_hasHoleVelocityB |
bool | m_hasHoleVelocityExB |
bool | m_hasHoleDiffLong |
bool | m_hasHoleDiffTrans |
bool | m_hasHoleDiffTens |
bool | m_hasHoleTownsend |
bool | m_hasHoleAttachment |
std::vector< std::vector< std::vector< double > > > | tabHoleVelocityE |
std::vector< std::vector< std::vector< double > > > | tabHoleVelocityExB |
std::vector< std::vector< std::vector< double > > > | tabHoleVelocityB |
std::vector< std::vector< std::vector< double > > > | tabHoleDiffLong |
std::vector< std::vector< std::vector< double > > > | tabHoleDiffTrans |
std::vector< std::vector< std::vector< double > > > | tabHoleTownsend |
std::vector< std::vector< std::vector< double > > > | tabHoleAttachment |
std::vector< std::vector< std::vector< std::vector< double > > > > | tabHoleDiffTens |
bool | m_hasIonMobility |
bool | m_hasIonDiffLong |
bool | m_hasIonDiffTrans |
bool | m_hasIonDissociation |
std::vector< std::vector< std::vector< double > > > | tabIonMobility |
std::vector< std::vector< std::vector< double > > > | tabIonDiffLong |
std::vector< std::vector< std::vector< double > > > | tabIonDiffTrans |
std::vector< std::vector< std::vector< double > > > | tabIonDissociation |
int | thrElectronTownsend |
int | thrElectronAttachment |
int | thrHoleTownsend |
int | thrHoleAttachment |
int | thrIonDissociation |
unsigned int | m_extrLowVelocity |
unsigned int | m_extrHighVelocity |
unsigned int | m_extrLowDiffusion |
unsigned int | m_extrHighDiffusion |
unsigned int | m_extrLowTownsend |
unsigned int | m_extrHighTownsend |
unsigned int | m_extrLowAttachment |
unsigned int | m_extrHighAttachment |
unsigned int | m_extrLowLorentzAngle |
unsigned int | m_extrHighLorentzAngle |
unsigned int | m_extrLowMobility |
unsigned int | m_extrHighMobility |
unsigned int | m_extrLowDissociation |
unsigned int | m_extrHighDissociation |
unsigned int | m_intpVelocity |
unsigned int | m_intpDiffusion |
unsigned int | m_intpTownsend |
unsigned int | m_intpAttachment |
unsigned int | m_intpLorentzAngle |
unsigned int | m_intpMobility |
unsigned int | m_intpDissociation |
Static Protected Attributes inherited from Garfield::MediumGas | |
static const unsigned int | m_nMaxGases = 6 |
Static Protected Attributes inherited from Garfield::Medium | |
static int | m_idCounter = -1 |
Interface to Magboltz (version 9).
Definition at line 11 of file MediumMagboltz.hh.
Garfield::MediumMagboltz::MediumMagboltz | ( | ) |
Definition at line 23 of file MediumMagboltz.cc.
|
inlinevirtual |
Definition at line 17 of file MediumMagboltz.hh.
void Garfield::MediumMagboltz::ComputeDeexcitation | ( | int | iLevel, |
int & | fLevel | ||
) |
Definition at line 4981 of file MediumMagboltz.cc.
|
inline |
Definition at line 39 of file MediumMagboltz.hh.
|
inline |
Definition at line 67 of file MediumMagboltz.hh.
|
inline |
Definition at line 51 of file MediumMagboltz.hh.
|
inline |
Definition at line 32 of file MediumMagboltz.hh.
void Garfield::MediumMagboltz::DisablePenningTransfer | ( | ) |
Definition at line 313 of file MediumMagboltz.cc.
void Garfield::MediumMagboltz::DisablePenningTransfer | ( | std::string | gasname | ) |
Definition at line 330 of file MediumMagboltz.cc.
|
inline |
Definition at line 54 of file MediumMagboltz.hh.
|
inline |
Definition at line 35 of file MediumMagboltz.hh.
|
inline |
Definition at line 66 of file MediumMagboltz.hh.
void Garfield::MediumMagboltz::EnableDeexcitation | ( | ) |
Definition at line 174 of file MediumMagboltz.cc.
|
inline |
Definition at line 31 of file MediumMagboltz.hh.
void Garfield::MediumMagboltz::EnablePenningTransfer | ( | const double | r, |
const double | lambda | ||
) |
Definition at line 203 of file MediumMagboltz.cc.
Referenced by GarfieldPhysics::InitializePhysics().
void Garfield::MediumMagboltz::EnablePenningTransfer | ( | const double | r, |
const double | lambda, | ||
std::string | gasname | ||
) |
Definition at line 237 of file MediumMagboltz.cc.
void Garfield::MediumMagboltz::EnableRadiationTrapping | ( | ) |
Definition at line 191 of file MediumMagboltz.cc.
void Garfield::MediumMagboltz::GenerateGasTable | ( | const int | numCollisions = 10 , |
const bool | verbose = true |
||
) |
Definition at line 5479 of file MediumMagboltz.cc.
|
virtual |
Reimplemented from Garfield::Medium.
Definition at line 895 of file MediumMagboltz.cc.
|
virtual |
Reimplemented from Garfield::Medium.
Definition at line 644 of file MediumMagboltz.cc.
|
virtual |
Reimplemented from Garfield::Medium.
Definition at line 546 of file MediumMagboltz.cc.
Referenced by GetElectronCollisionRate().
double Garfield::MediumMagboltz::GetElectronCollisionRate | ( | const double | e, |
const unsigned int | level, | ||
const int | band | ||
) |
Definition at line 599 of file MediumMagboltz.cc.
|
virtual |
Reimplemented from Garfield::Medium.
Definition at line 526 of file MediumMagboltz.cc.
|
virtual |
Reimplemented from Garfield::Medium.
Definition at line 908 of file MediumMagboltz.cc.
bool Garfield::MediumMagboltz::GetLevel | ( | const unsigned int | i, |
int & | ngas, | ||
int & | type, | ||
std::string & | descr, | ||
double & | e | ||
) |
Definition at line 1122 of file MediumMagboltz.cc.
|
inline |
Definition at line 22 of file MediumMagboltz.hh.
|
inline |
Definition at line 27 of file MediumMagboltz.hh.
|
inlinevirtual |
Reimplemented from Garfield::Medium.
Definition at line 92 of file MediumMagboltz.hh.
unsigned int Garfield::MediumMagboltz::GetNumberOfElectronCollisions | ( | ) | const |
Definition at line 1087 of file MediumMagboltz.cc.
unsigned int Garfield::MediumMagboltz::GetNumberOfElectronCollisions | ( | const unsigned int | level | ) | const |
Definition at line 1206 of file MediumMagboltz.cc.
unsigned int Garfield::MediumMagboltz::GetNumberOfElectronCollisions | ( | int & | nElastic, |
int & | nIonising, | ||
int & | nAttachment, | ||
int & | nInelastic, | ||
int & | nExcitation, | ||
int & | nSuperelastic | ||
) | const |
Definition at line 1094 of file MediumMagboltz.cc.
|
inlinevirtual |
Reimplemented from Garfield::Medium.
Definition at line 86 of file MediumMagboltz.hh.
int Garfield::MediumMagboltz::GetNumberOfLevels | ( | ) |
Definition at line 1108 of file MediumMagboltz.cc.
|
inline |
Definition at line 119 of file MediumMagboltz.hh.
int Garfield::MediumMagboltz::GetNumberOfPhotonCollisions | ( | ) | const |
Definition at line 1216 of file MediumMagboltz.cc.
int Garfield::MediumMagboltz::GetNumberOfPhotonCollisions | ( | int & | nElastic, |
int & | nIonising, | ||
int & | nInelastic | ||
) | const |
Definition at line 1223 of file MediumMagboltz.cc.
|
virtual |
Reimplemented from Garfield::Medium.
Definition at line 968 of file MediumMagboltz.cc.
|
virtual |
Reimplemented from Garfield::Medium.
Definition at line 922 of file MediumMagboltz.cc.
bool Garfield::MediumMagboltz::Initialise | ( | const bool | verbose = false | ) |
Definition at line 417 of file MediumMagboltz.cc.
Referenced by GarfieldPhysics::InitializePhysics(), and PrintGas().
void Garfield::MediumMagboltz::PrintGas | ( | ) |
Definition at line 435 of file MediumMagboltz.cc.
void Garfield::MediumMagboltz::ResetCollisionCounters | ( | ) |
Definition at line 1078 of file MediumMagboltz.cc.
void Garfield::MediumMagboltz::RunMagboltz | ( | const double | e, |
const double | b, | ||
const double | btheta, | ||
const int | ncoll, | ||
bool | verbose, | ||
double & | vx, | ||
double & | vy, | ||
double & | vz, | ||
double & | dl, | ||
double & | dt, | ||
double & | alpha, | ||
double & | eta, | ||
double & | lor, | ||
double & | vxerr, | ||
double & | vyerr, | ||
double & | vzerr, | ||
double & | dlerr, | ||
double & | dterr, | ||
double & | alphaerr, | ||
double & | etaerr, | ||
double & | lorerr, | ||
double & | alphatof | ||
) |
Definition at line 5278 of file MediumMagboltz.cc.
Referenced by GenerateGasTable().
void Garfield::MediumMagboltz::SetExcitationScalingFactor | ( | const double | r, |
std::string | gasname | ||
) |
Definition at line 380 of file MediumMagboltz.cc.
bool Garfield::MediumMagboltz::SetMaxElectronEnergy | ( | const double | e | ) |
Definition at line 97 of file MediumMagboltz.cc.
Referenced by GetElectronCollision(), and GetElectronCollisionRate().
bool Garfield::MediumMagboltz::SetMaxPhotonEnergy | ( | const double | e | ) |
Definition at line 124 of file MediumMagboltz.cc.
Referenced by GetPhotonCollision(), and GetPhotonCollisionRate().
void Garfield::MediumMagboltz::SetSplittingFunctionFlat | ( | ) |
Definition at line 168 of file MediumMagboltz.cc.
void Garfield::MediumMagboltz::SetSplittingFunctionGreenSawada | ( | ) |
Definition at line 149 of file MediumMagboltz.cc.
void Garfield::MediumMagboltz::SetSplittingFunctionOpalBeaty | ( | ) |
Definition at line 143 of file MediumMagboltz.cc.
double Garfield::MediumMagboltz::fit3d4p |
Definition at line 140 of file MediumMagboltz.hh.
Referenced by MediumMagboltz().
double Garfield::MediumMagboltz::fit3dEtaC2H6 |
Definition at line 143 of file MediumMagboltz.hh.
Referenced by MediumMagboltz().
double Garfield::MediumMagboltz::fit3dEtaCH4 |
Definition at line 142 of file MediumMagboltz.hh.
Referenced by MediumMagboltz().
double Garfield::MediumMagboltz::fit3dEtaCO2 |
Definition at line 141 of file MediumMagboltz.hh.
Referenced by MediumMagboltz().
double Garfield::MediumMagboltz::fit3dQC2H6 |
Definition at line 143 of file MediumMagboltz.hh.
Referenced by MediumMagboltz().
double Garfield::MediumMagboltz::fit3dQCH4 |
Definition at line 142 of file MediumMagboltz.hh.
Referenced by MediumMagboltz().
double Garfield::MediumMagboltz::fit3dQCO2 |
Definition at line 141 of file MediumMagboltz.hh.
Referenced by MediumMagboltz().
double Garfield::MediumMagboltz::fit4pEtaC2H6 |
Definition at line 145 of file MediumMagboltz.hh.
Referenced by MediumMagboltz().
double Garfield::MediumMagboltz::fit4pEtaCH4 |
Definition at line 144 of file MediumMagboltz.hh.
Referenced by MediumMagboltz().
double Garfield::MediumMagboltz::fit4sEtaC2H6 |
Definition at line 146 of file MediumMagboltz.hh.
Referenced by MediumMagboltz().
double Garfield::MediumMagboltz::fitHigh4p |
Definition at line 140 of file MediumMagboltz.hh.
Referenced by MediumMagboltz().
double Garfield::MediumMagboltz::fitLineCut |
Definition at line 147 of file MediumMagboltz.hh.
Referenced by MediumMagboltz().