Garfield++ 4.0
A toolkit for the detailed simulation of particle detectors based on ionisation measurement in gases and semiconductors
|
#include <HeedDeltaElectronCS.h>
Public Member Functions | |
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 |
void | print (std::ostream &file, int l) const |
HeedDeltaElectronCS * | copy () const |
Public Attributes | |
HeedMatterDef * | hmd = nullptr |
ElElasticScat * | ees = nullptr |
ElElasticScatLowSigma * | eesls = nullptr |
PairProd * | pairprod = nullptr |
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< PointsRan > | angular_points_ran |
std::vector< PointsRan > | low_angular_points_ran |
std::vector< double > | mean_coef_low_sigma |
Static Public Attributes | |
static constexpr long | q_angular_mesh = 50 |
static constexpr double | low_cut_angle_deg = 20. |
Cross sections and various parameters for delta-electron transport. 2003, I. Smirnov
Definition at line 21 of file HeedDeltaElectronCS.h.
Heed::HeedDeltaElectronCS::HeedDeltaElectronCS | ( | ) |
Default constructor.
Referenced by copy().
Heed::HeedDeltaElectronCS::HeedDeltaElectronCS | ( | HeedMatterDef * | fhmd, |
ElElasticScat * | fees, | ||
ElElasticScatLowSigma * | feesls, | ||
PairProd * | fpairprod, | ||
int | fsruth = 2 , |
||
double | fmlambda = 0.001 * 4.0e-3 , |
||
double | fmthetac = 0.1 |
||
) |
Constructor.
Definition at line 24 of file HeedDeltaElectronCS.cpp.
|
inline |
Definition at line 35 of file HeedDeltaElectronCS.h.
double Heed::HeedDeltaElectronCS::get_sigma | ( | double | energy, |
double | nscat | ||
) | const |
Definition at line 229 of file HeedDeltaElectronCS.cpp.
void Heed::HeedDeltaElectronCS::print | ( | std::ostream & | file, |
int | l | ||
) | const |
Definition at line 259 of file HeedDeltaElectronCS.cpp.
std::vector<double> Heed::HeedDeltaElectronCS::angular_mesh_c |
Angular mesh, centers, angles in degrees.
Definition at line 80 of file HeedDeltaElectronCS.h.
Referenced by HeedDeltaElectronCS(), and print().
std::vector<PointsRan> Heed::HeedDeltaElectronCS::angular_points_ran |
Definition at line 83 of file HeedDeltaElectronCS.h.
Referenced by HeedDeltaElectronCS().
std::vector<double> Heed::HeedDeltaElectronCS::beta |
Table of velocities.
Definition at line 45 of file HeedDeltaElectronCS.h.
Referenced by HeedDeltaElectronCS(), and print().
ElElasticScat* Heed::HeedDeltaElectronCS::ees = nullptr |
Definition at line 41 of file HeedDeltaElectronCS.h.
Referenced by get_sigma(), and HeedDeltaElectronCS().
ElElasticScatLowSigma* Heed::HeedDeltaElectronCS::eesls = nullptr |
Definition at line 42 of file HeedDeltaElectronCS.h.
Referenced by HeedDeltaElectronCS(), and print().
std::vector<double> Heed::HeedDeltaElectronCS::eLoss |
Energy losses [MeV/cm] according to very advanced formula with Bethe-Bloch and density effect as in GEANT3, corresponding to centers of intervals of the common mesh.
Definition at line 52 of file HeedDeltaElectronCS.h.
Referenced by HeedDeltaElectronCS(), and print().
HeedMatterDef* Heed::HeedDeltaElectronCS::hmd = nullptr |
Definition at line 40 of file HeedDeltaElectronCS.h.
Referenced by HeedDeltaElectronCS(), and print().
std::vector<double> Heed::HeedDeltaElectronCS::lambda |
Path length [cm] at the energy values of the mesh. For sruth == 2 mean free path.
Definition at line 59 of file HeedDeltaElectronCS.h.
Referenced by HeedDeltaElectronCS(), and print().
std::vector<PointsRan> Heed::HeedDeltaElectronCS::low_angular_points_ran |
Definition at line 85 of file HeedDeltaElectronCS.h.
Referenced by HeedDeltaElectronCS().
|
staticconstexpr |
Definition at line 38 of file HeedDeltaElectronCS.h.
Referenced by HeedDeltaElectronCS().
std::vector<double> Heed::HeedDeltaElectronCS::low_lambda |
Path length for low angle scatterings. This is without multiplication used for coef_low_sigma (cm).
Definition at line 62 of file HeedDeltaElectronCS.h.
Referenced by HeedDeltaElectronCS(), and print().
std::vector<double> Heed::HeedDeltaElectronCS::mean_coef_low_sigma |
Definition at line 89 of file HeedDeltaElectronCS.h.
Referenced by get_sigma(), HeedDeltaElectronCS(), and print().
double Heed::HeedDeltaElectronCS::mlambda |
Mminimum mean length of range, multiplied by density. sm*gr/sm**3 = gr/sm**2
Definition at line 56 of file HeedDeltaElectronCS.h.
Referenced by HeedDeltaElectronCS(), and print().
std::vector<double> Heed::HeedDeltaElectronCS::momentum |
Table of momenta [MeV/c].
Definition at line 47 of file HeedDeltaElectronCS.h.
Referenced by HeedDeltaElectronCS(), and print().
double Heed::HeedDeltaElectronCS::mthetac |
Minimum threshold turn angle. For Rutherford: the interactions with less angle will not be taken into account. The actual threshold angle can be larger. The second restriction is going from restriction of atomic shell. The third one is from mlamBdel. For usual multiple scattering: Assuming that sigma = mTetacBdel the path lengt is calculated. If mlamBdel/density is less then the last is used.
Definition at line 77 of file HeedDeltaElectronCS.h.
Referenced by HeedDeltaElectronCS(), and print().
PairProd* Heed::HeedDeltaElectronCS::pairprod = nullptr |
Definition at line 43 of file HeedDeltaElectronCS.h.
|
staticconstexpr |
Definition at line 37 of file HeedDeltaElectronCS.h.
Referenced by HeedDeltaElectronCS(), and print().
int Heed::HeedDeltaElectronCS::sruth |
Formula to use. 0 - usual multiple scattering formula 1 - Rutherford cross-section 2 - precise theory?
Definition at line 68 of file HeedDeltaElectronCS.h.
Referenced by HeedDeltaElectronCS(), and print().