Garfield++ v2r0
A toolkit for the detailed simulation of particle detectors based on ionisation measurement in gases and semiconductors
Loading...
Searching...
No Matches
Garfield::HeedChamber Class Reference

#include <HeedChamber.hh>

+ Inheritance diagram for Garfield::HeedChamber:

Public Member Functions

 HeedChamber (const Heed::abssyscoor &fcsys, const double dx, const double dy, const double dz, const Heed::EnTransfCS &etcs, const Heed::HeedDeltaElectronCS &hdecs)
 
virtual Garfield::HeedChambercopy () const
 
virtual absvol * Gavol () const
 Get the volume.
 
- Public Member Functions inherited from Heed::sh_manip_absvol
virtual const abssyscoorGasc () const
 Get the coordinate system.
 
void Psc (const fixsyscoor &fcsys)
 
 sh_manip_absvol ()
 
 sh_manip_absvol (sh_manip_absvol &f)
 
 sh_manip_absvol (const sh_manip_absvol &f)
 
 sh_manip_absvol (const abssyscoor &f)
 
 sh_manip_absvol (const point &fc, const basis &fbas, const std::string &fname)
 
virtual ~sh_manip_absvol ()
 
virtual void m_chname (char *nm) const
 
virtual void m_print (std::ostream &file, int l) const
 
virtual sh_manip_absvolcopy () const
 
- Public Member Functions inherited from Heed::manip_absvol
virtual absvolGavol () const =0
 Get the volume.
 
virtual const abssyscoorGasc () const
 Get the coordinate system.
 
virtual int m_check_point_inside (const point &fpt, const vec &dir) const
 
virtual int m_find_embed_vol (const point &fpt, const vec &fdir, manip_absvol_treeid *atid) const
 
virtual int m_range (trajestep &fts, int s_ext, int &sb, PassivePtr< manip_absvol > &faeid) const
 
virtual int m_range_ext (trajestep &fts, int s_ext) const
 
void down_absref (absref *f) const
 
void up_absref (absref *f) const
 
void m_chname (char *nm) const
 
virtual void m_print (std::ostream &file, int l) const
 
virtual manip_absvolcopy () const
 
virtual ~manip_absvol ()
 
- Public Member Functions inherited from Heed::absref
virtual ~absref ()
 Destructor.
 
virtual void down (const abssyscoor *fasc)
 Convert numbering representation of object to basical system of fasc.
 
virtual void up (const abssyscoor *fasc)
 Convert numbering representation of objects to new system.
 
virtual void turn (const vec &dir, vfloat angle)
 Turn around axis doing via center of coordinate system along dir.
 
virtual void shift (const vec &dir)
 
- 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)
 
RegPassivePtroperator= (const RegPassivePtr &f)
 
CountPP_ns::CountPassivePtrbook (void) const
 
void clear_pointers (void) const
 
virtual RegPassivePtrcopy () 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
 
- Public Member Functions inherited from Heed::box
 box ()
 Default constructor.
 
 box (vfloat fdx, vfloat fdy, vfloat fdz, const std::string &fname)
 
 box (vfloat fdx, vfloat fdy, vfloat fdz, vfloat fprec, const std::string &fname)
 Constructor with user-provided precision.
 
 box (box &fb)
 
 box (const box &fb)
 
virtual ~box ()
 Destructor.
 
void init_prec ()
 
void init_planes ()
 
virtual int check_point_inside (const point &fpt, const vec &dir) const
 
virtual int range_ext (trajestep &fts, int s_ext) const
 Range till exit from given volume or to entry only.
 
virtual void income (gparticle *gp)
 
virtual void chname (char *nm) const
 
virtual void print (std::ostream &file, int l) const
 
virtual boxcopy () const
 
- Public Member Functions inherited from Heed::absvol
virtual ~absvol ()
 Destructor.
 
virtual int check_point_inside (const point &fpt, const vec &dir) const =0
 
virtual int find_embed_vol (const point &fpt, const vec &dir, manip_absvol_treeid *atid) const
 
virtual int range (trajestep &fts, int s_ext, int &sb, PassivePtr< manip_absvol > &faeid) const
 
virtual int range_ext (trajestep &fts, int s_ext) const =0
 
virtual void income (gparticle *)
 
virtual void chname (char *nm) const
 
virtual void print (std::ostream &file, int l) const
 
virtual absvolcopy () const
 
virtual std::vector< manip_absvol * > Gamanip_embed () const
 
- Public Member Functions inherited from Heed::EnTransfCS
 EnTransfCS ()
 Default constructor.
 
 EnTransfCS (double fparticle_mass, double fgamma_1, int fs_primary_electron, HeedMatterDef *fhmd, long fparticle_charge=1)
 Constructor.
 
virtual void print (std::ostream &file, int l) const
 
virtual EnTransfCScopy () const
 
- Public Member Functions inherited from Heed::HeedDeltaElectronCS
 HeedDeltaElectronCS ()
 Default constructor.
 
 HeedDeltaElectronCS (HeedMatterDef *fhmd, ElElasticScat *fees, ElElasticScatLowSigma *feesls, PairProd *fpairprod, int fsruth=2, double fmlambda=0.001 *4.0e-3, double fmthetac=0.1)
 Constructor.
 
double get_sigma (double energy, double nscat) const
 
virtual void print (std::ostream &file, int l) const
 
virtual HeedDeltaElectronCScopy () const
 

Protected Member Functions

virtual void get_components (Heed::ActivePtr< Heed::absref_transmit > &aref_tran)
 
virtual void get_components (ActivePtr< absref_transmit > &aref_tran)
 
virtual void get_components (ActivePtr< absref_transmit > &aref_tran)
 

Additional Inherited Members

- 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)
 
- Public Attributes inherited from Heed::box
vfloat m_dx
 
vfloat m_dy
 
vfloat m_dz
 Lengths of sides.
 
vfloat m_dxh
 
vfloat m_dyh
 
vfloat m_dzh
 Half-lengths of sides.
 
ulsvolume m_ulsv
 
std::string m_name
 
- Public Attributes inherited from Heed::absvol
vfloat prec
 
bool s_sensitive
 
- Public Attributes inherited from Heed::EnTransfCS
double particle_mass
 Particle mass [MeV].
 
double particle_ener
 Total energy [MeV].
 
long particle_charge
 Charge in units of electron charge (used square, sign does not matter).
 
double gamma_1
 Lorentz factor - 1 (the best dimensionless measurement of speed).
 
double max_etransf
 Max. energy transfer [MeV].
 
bool s_simple_form
 
int s_primary_electron
 Flag that the primary particle is the electron.
 
PassivePtr< HeedMatterDefhmd
 
std::vector< double > log1C
 common first log without cs
 
std::vector< double > log2C
 common second log without cs
 
std::vector< double > chereC
 Cherenkov's radiation.
 
std::vector< double > chereCangle
 angle of Cherenkov's radiation
 
std::vector< double > Rruth
 term called R in my paper
 
std::vector< double > addaC
 Sum of (ionization) differential cross-section terms.
 
double quanC
 Integrated (ionization) cross-section.
 
double meanC
 
double meanC1
 
double meaneleC
 
double meaneleC1
 
std::vector< std::vector< std::vector< double > > > cher
 
std::vector< std::vector< std::vector< double > > > fruth
 Rutherford term.
 
std::vector< std::vector< std::vector< double > > > adda
 Sum.
 
std::vector< std::vector< std::vector< double > > > fadda
 Integral, normalised to unity.
 
std::vector< std::vector< double > > quan
 
std::vector< std::vector< double > > mean
 
std::vector< double > length_y0
 
- Public Attributes inherited from Heed::HeedDeltaElectronCS
PassivePtr< HeedMatterDefhmd
 
PassivePtr< ElElasticScatees
 
PassivePtr< ElElasticScatLowSigmaeesls
 
PassivePtr< PairProdpairprod
 
std::vector< double > beta
 Table of velocities.
 
std::vector< double > momentum
 Table of momenta [MeV/c].
 
std::vector< double > eLoss
 
double mlambda
 
std::vector< double > lambda
 
std::vector< double > low_lambda
 
int sruth
 
double mthetac
 
std::vector< double > angular_mesh_c
 Angular mesh, centers, angles in degrees.
 
std::vector< PointsRanangular_points_ran
 
std::vector< PointsRanlow_angular_points_ran
 
std::vector< double > mean_coef_low_sigma
 
- Static Public Attributes inherited from Heed::HeedDeltaElectronCS
static const long q_angular_mesh = 50
 
static const double low_cut_angle_deg = 20.0
 
- Protected Attributes inherited from Heed::sh_manip_absvol
fixsyscoor csys
 
absrefaref_ptr [1]
 

Detailed Description

Definition at line 13 of file HeedChamber.hh.

Constructor & Destructor Documentation

◆ HeedChamber()

Garfield::HeedChamber::HeedChamber ( const Heed::abssyscoor fcsys,
const double  dx,
const double  dy,
const double  dz,
const Heed::EnTransfCS etcs,
const Heed::HeedDeltaElectronCS hdecs 
)
inline

Definition at line 19 of file HeedChamber.hh.

22 : Heed::sh_manip_absvol(fcsys),
23 Heed::box(dx * Heed::CLHEP::cm,
24 dy * Heed::CLHEP::cm,
25 dz * Heed::CLHEP::cm, "chamber"),
26 Heed::EnTransfCS(etcs),
28
29 s_sensitive = true;
30 }
bool s_sensitive
Definition: volume.h:75
Definition: box.h:25

Member Function Documentation

◆ copy()

virtual Garfield::HeedChamber * Garfield::HeedChamber::copy ( ) const
inlinevirtual

Reimplemented from Heed::EnTransfCS.

Definition at line 32 of file HeedChamber.hh.

32 {
33 return new Garfield::HeedChamber(*this);
34 }

◆ Gavol()

virtual absvol * Garfield::HeedChamber::Gavol ( ) const
inlinevirtual

Get the volume.

Implements Heed::manip_absvol.

Definition at line 35 of file HeedChamber.hh.

35{ return (Heed::box*)this; }

◆ get_components()

virtual void Garfield::HeedChamber::get_components ( Heed::ActivePtr< Heed::absref_transmit > &  aref_tran)
inlineprotectedvirtual

Reimplemented from Heed::box.

Definition at line 38 of file HeedChamber.hh.

38 {
39 sh_manip_absvol::get_components(aref_tran);
40 }

The documentation for this class was generated from the following file: