Garfield++ 3.0
A toolkit for the detailed simulation of particle detectors based on ionisation measurement in gases and semiconductors
Loading...
Searching...
No Matches
MagboltzInterface.hh File Reference

Go to the source code of this file.

Namespaces

namespace  Garfield
 
namespace  Garfield::Magboltz
 

Functions

void Garfield::Magboltz::gasmix_ (long long *ngs, double *q, double *qin, long long *nin, double *e, double *ei, char *name, double *virl, double *eb, double *peqel, double *peqin, double *penfra, long long *kel, long long *kin, double *qion, double *peqion, double *eion, long long *nion, double *qatt, long long *natt, double *qnull, long long *nnull, double *scln, long long *nc0, double *ec0, double *wk, double *efl, long long *ng1, double *eg1, long long *ng2, double *eg2, char scrpt[nMaxLevelsPerComponent][nCharDescr], char scrptn[nMaxNullTerms][nCharDescr])
 
void Garfield::Magboltz::magboltz_ ()
 

Variables

constexpr unsigned int Garfield::Magboltz::nEnergySteps = 4000
 
constexpr unsigned int Garfield::Magboltz::nMaxIonisationTerms = 30
 
constexpr unsigned int Garfield::Magboltz::nMaxInelasticTerms = 250
 
constexpr unsigned int Garfield::Magboltz::nMaxAttachmentTerms = 8
 
constexpr unsigned int Garfield::Magboltz::nMaxNullTerms = 10
 
constexpr unsigned int Garfield::Magboltz::nMaxLevelsPerComponent = 300
 
constexpr unsigned int Garfield::Magboltz::nCharDescr = 50
 
constexpr unsigned int Garfield::Magboltz::nMaxLevels = 960
 
struct {
   double   Garfield::Magboltz::eovb
 
   double   Garfield::Magboltz::wb
 
   double   Garfield::Magboltz::btheta
 
   double   Garfield::Magboltz::bmag
 
Garfield::Magboltz::bfld_
 
struct {
   long long   Garfield::Magboltz::nGas
 
   long long   Garfield::Magboltz::nStep
 
   long long   Garfield::Magboltz::nAniso
 
   double   Garfield::Magboltz::efinal
 
   double   Garfield::Magboltz::estep
 
   double   Garfield::Magboltz::akt
 
   double   Garfield::Magboltz::ary
 
   double   Garfield::Magboltz::tempc
 
   double   Garfield::Magboltz::torr
 
   long long   Garfield::Magboltz::ipen
 
Garfield::Magboltz::inpt_
 
struct {
   double   Garfield::Magboltz::tmax
 
   double   Garfield::Magboltz::small
 
   double   Garfield::Magboltz::api
 
   double   Garfield::Magboltz::estart
 
   double   Garfield::Magboltz::theta
 
   double   Garfield::Magboltz::phi
 
   double   Garfield::Magboltz::rstart
 
   double   Garfield::Magboltz::efield
 
   long long   Garfield::Magboltz::nmax
 
Garfield::Magboltz::setp_
 
struct {
   double   Garfield::Magboltz::amgas [6]
 
   double   Garfield::Magboltz::vtmb [6]
 
   double   Garfield::Magboltz::tcfmx
 
   double   Garfield::Magboltz::tcfmxg [6]
 
   long long   Garfield::Magboltz::ithrm
 
Garfield::Magboltz::thrm_
 
struct {
   double   Garfield::Magboltz::echarg
 
   double   Garfield::Magboltz::emass
 
   double   Garfield::Magboltz::amu
 
   double   Garfield::Magboltz::pir2
 
Garfield::Magboltz::cnsts_
 
struct {
   double   Garfield::Magboltz::eg [nEnergySteps]
 
   double   Garfield::Magboltz::eroot [nEnergySteps]
 
   double   Garfield::Magboltz::qt1 [nEnergySteps]
 
   double   Garfield::Magboltz::qt2 [nEnergySteps]
 
   double   Garfield::Magboltz::qt3 [nEnergySteps]
 
   double   Garfield::Magboltz::qt4 [nEnergySteps]
 
Garfield::Magboltz::mix2_
 
struct {
   double   Garfield::Magboltz::den [nEnergySteps]
 
Garfield::Magboltz::dens_
 
struct {
   double   Garfield::Magboltz::time [300]
 
   long long   Garfield::Magboltz::icoll [30]
 
   double   Garfield::Magboltz::spec [nEnergySteps]
 
   double   Garfield::Magboltz::tmax1
 
   double   Garfield::Magboltz::ave
 
   double   Garfield::Magboltz::den
 
   double   Garfield::Magboltz::xid
 
   double   Garfield::Magboltz::x
 
   double   Garfield::Magboltz::y
 
   double   Garfield::Magboltz::z
 
   double   Garfield::Magboltz::st
 
   long long   Garfield::Magboltz::nnull
 
   double   Garfield::Magboltz::icoln [nMaxLevels]
 
   long long   Garfield::Magboltz::icolnn [60]
 
Garfield::Magboltz::outpt_
 
struct {
   char   Garfield::Magboltz::dscrpt [nMaxLevels][nCharDescr]
 
   char   Garfield::Magboltz::dscrptn [60][nCharDescr]
 
Garfield::Magboltz::scrip_
 
struct {
   double   Garfield::Magboltz::cf [nMaxLevels][nEnergySteps]
 
   double   Garfield::Magboltz::ein [nMaxLevels]
 
   double   Garfield::Magboltz::tcf [nEnergySteps]
 
   long long   Garfield::Magboltz::iarry [nMaxLevels]
 
   double   Garfield::Magboltz::rgas [nMaxLevels]
 
   double   Garfield::Magboltz::ipn [nMaxLevels]
 
   double   Garfield::Magboltz::wpl [nMaxLevels]
 
   long long   Garfield::Magboltz::last
 
   long long   Garfield::Magboltz::isize
 
   double   Garfield::Magboltz::penfra [nMaxLevels][3]
 
   double   Garfield::Magboltz::tcfmax [8]
 
Garfield::Magboltz::large_
 
struct {
   long long   Garfield::Magboltz::ngasn [6]
 
Garfield::Magboltz::gasn_
 
struct {
   double   Garfield::Magboltz::an1
 
   double   Garfield::Magboltz::an2
 
   double   Garfield::Magboltz::an3
 
   double   Garfield::Magboltz::an4
 
   double   Garfield::Magboltz::an5
 
   double   Garfield::Magboltz::an6
 
   double   Garfield::Magboltz::an
 
   double   Garfield::Magboltz::frac [6]
 
Garfield::Magboltz::ratio_
 
struct {
   double   Garfield::Magboltz::wx
 
   double   Garfield::Magboltz::wy
 
   double   Garfield::Magboltz::wz
 
Garfield::Magboltz::vel_
 
struct {
   double   Garfield::Magboltz::dwx
 
   double   Garfield::Magboltz::dwy
 
   double   Garfield::Magboltz::dwz
 
Garfield::Magboltz::velerr_
 
struct {
   double   Garfield::Magboltz::difxx
 
   double   Garfield::Magboltz::difyy
 
   double   Garfield::Magboltz::difzz
 
   double   Garfield::Magboltz::difyz
 
   double   Garfield::Magboltz::difxy
 
   double   Garfield::Magboltz::difxz
 
Garfield::Magboltz::diflab_
 
struct {
   double   Garfield::Magboltz::dxxer
 
   double   Garfield::Magboltz::dyyer
 
   double   Garfield::Magboltz::dzzer
 
   double   Garfield::Magboltz::dyzer
 
   double   Garfield::Magboltz::dxyer
 
   double   Garfield::Magboltz::dxzer
 
Garfield::Magboltz::diferb_
 
struct {
   double   Garfield::Magboltz::difln
 
   double   Garfield::Magboltz::diftr
 
Garfield::Magboltz::difvel_
 
struct {
   double   Garfield::Magboltz::dfler
 
   double   Garfield::Magboltz::dfter
 
Garfield::Magboltz::diferl_
 
struct {
   double   Garfield::Magboltz::alpha
 
   double   Garfield::Magboltz::att
 
Garfield::Magboltz::ctowns_
 
struct {
   double   Garfield::Magboltz::alper
 
   double   Garfield::Magboltz::atter
 
Garfield::Magboltz::ctwner_
 
struct {
   double   Garfield::Magboltz::ralpha
 
   double   Garfield::Magboltz::ralper
 
   double   Garfield::Magboltz::tofene
 
   double   Garfield::Magboltz::tofener
 
   double   Garfield::Magboltz::tofwv
 
   double   Garfield::Magboltz::tofwver
 
   double   Garfield::Magboltz::tofdl
 
   double   Garfield::Magboltz::tofdler
 
   double   Garfield::Magboltz::tofdt
 
   double   Garfield::Magboltz::tofdter
 
   double   Garfield::Magboltz::tofwr
 
   double   Garfield::Magboltz::tofwrer
 
   double   Garfield::Magboltz::rattof
 
   double   Garfield::Magboltz::ratofer
 
Garfield::Magboltz::tofout_