Garfield 0.3
Toolkit for the detailed simulation of particle detectors based on ionization measurement in gases and semiconductors
Loading...
Searching...
No Matches
Garfield::MediumDiamond Class Reference

Diamond. More...

#include <MediumDiamond.hh>

Inheritance diagram for Garfield::MediumDiamond:

Public Member Functions

 MediumDiamond ()
 Constructor.
virtual ~MediumDiamond ()
 Destructor.
bool IsSemiconductor () const override
void GetComponent (const unsigned int i, std::string &label, double &f) override
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) override
bool ElectronTownsend (const double ex, const double ey, const double ez, const double bx, const double by, const double bz, double &alpha) override
bool ElectronAttachment (const double ex, const double ey, const double ez, const double bx, const double by, const double bz, double &eta) override
double ElectronMobility () override
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) override
bool HoleTownsend (const double ex, const double ey, const double ez, const double bx, const double by, const double bz, double &alpha) override
bool HoleAttachment (const double ex, const double ey, const double ez, const double bx, const double by, const double bz, double &eta) override
double HoleMobility () override
void SetLowFieldMobility (const double mue, const double muh)
void UnsetLowFieldMobility ()
void SetSaturationVelocity (const double vsate, const double vsath)
void UnsetSaturationVelocity ()

Private Member Functions

void UpdateTransportParameters ()

Private Attributes

std::mutex m_mutex
double m_eMobility = 4.551e-6
double m_hMobility = 2.750e-6
double m_eHallFactor = 1.
double m_hHallFactor = 1.
double m_eSatVel = 2.6e-2
double m_hSatVel = 1.6e-2
bool m_userMobility = false

Detailed Description

Diamond.

Definition at line 12 of file MediumDiamond.hh.

Constructor & Destructor Documentation

◆ MediumDiamond()

Garfield::MediumDiamond::MediumDiamond ( )

Constructor.

◆ ~MediumDiamond()

virtual Garfield::MediumDiamond::~MediumDiamond ( )
inlinevirtual

Destructor.

Definition at line 17 of file MediumDiamond.hh.

17{}

Member Function Documentation

◆ ElectronAttachment()

bool Garfield::MediumDiamond::ElectronAttachment ( const double ex,
const double ey,
const double ez,
const double bx,
const double by,
const double bz,
double & eta )
override

◆ ElectronMobility()

double Garfield::MediumDiamond::ElectronMobility ( )
inlineoverride

Definition at line 34 of file MediumDiamond.hh.

34{ return m_eMobility; }

◆ ElectronTownsend()

bool Garfield::MediumDiamond::ElectronTownsend ( const double ex,
const double ey,
const double ez,
const double bx,
const double by,
const double bz,
double & alpha )
override

◆ ElectronVelocity()

bool Garfield::MediumDiamond::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 )
override

◆ GetComponent()

void Garfield::MediumDiamond::GetComponent ( const unsigned int i,
std::string & label,
double & f )
override

◆ HoleAttachment()

bool Garfield::MediumDiamond::HoleAttachment ( const double ex,
const double ey,
const double ez,
const double bx,
const double by,
const double bz,
double & eta )
override

◆ HoleMobility()

double Garfield::MediumDiamond::HoleMobility ( )
inlineoverride

Definition at line 45 of file MediumDiamond.hh.

45{ return m_hMobility; }

◆ HoleTownsend()

bool Garfield::MediumDiamond::HoleTownsend ( const double ex,
const double ey,
const double ez,
const double bx,
const double by,
const double bz,
double & alpha )
override

◆ HoleVelocity()

bool Garfield::MediumDiamond::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 )
override

◆ IsSemiconductor()

bool Garfield::MediumDiamond::IsSemiconductor ( ) const
inlineoverride

Definition at line 19 of file MediumDiamond.hh.

19{ return true; }

◆ SetLowFieldMobility()

void Garfield::MediumDiamond::SetLowFieldMobility ( const double mue,
const double muh )

◆ SetSaturationVelocity()

void Garfield::MediumDiamond::SetSaturationVelocity ( const double vsate,
const double vsath )

◆ UnsetLowFieldMobility()

void Garfield::MediumDiamond::UnsetLowFieldMobility ( )

◆ UnsetSaturationVelocity()

void Garfield::MediumDiamond::UnsetSaturationVelocity ( )

◆ UpdateTransportParameters()

void Garfield::MediumDiamond::UpdateTransportParameters ( )
private

Member Data Documentation

◆ m_eHallFactor

double Garfield::MediumDiamond::m_eHallFactor = 1.
private

Definition at line 60 of file MediumDiamond.hh.

◆ m_eMobility

double Garfield::MediumDiamond::m_eMobility = 4.551e-6
private

Definition at line 57 of file MediumDiamond.hh.

◆ m_eSatVel

double Garfield::MediumDiamond::m_eSatVel = 2.6e-2
private

Definition at line 63 of file MediumDiamond.hh.

◆ m_hHallFactor

double Garfield::MediumDiamond::m_hHallFactor = 1.
private

Definition at line 61 of file MediumDiamond.hh.

◆ m_hMobility

double Garfield::MediumDiamond::m_hMobility = 2.750e-6
private

Definition at line 58 of file MediumDiamond.hh.

◆ m_hSatVel

double Garfield::MediumDiamond::m_hSatVel = 1.6e-2
private

Definition at line 64 of file MediumDiamond.hh.

◆ m_mutex

std::mutex Garfield::MediumDiamond::m_mutex
private

Definition at line 54 of file MediumDiamond.hh.

◆ m_userMobility

bool Garfield::MediumDiamond::m_userMobility = false
private

Definition at line 66 of file MediumDiamond.hh.


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