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

Gallium-Nitride. More...

#include <MediumGaN.hh>

Inheritance diagram for Garfield::MediumGaN:

Public Member Functions

 MediumGaN ()
 Constructor.
virtual ~MediumGaN ()
 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 SetElectronConcentration (const double c)
 Set the electron concentration [cm-3].
void SetLowFieldMobility (const double mue, const double muh)
 Set the low-field mobility values [cm2 / (V ns)] explicitly.
void UnsetLowFieldMobility ()
 Use the default mobility models.

Private Member Functions

void UpdateTransportParameters ()

Private Attributes

double m_eMobility = 1.405e-6
double m_hMobility = 0.170e-6
double m_eDensity = 7.78e16
double m_eHallFactor = 1.
double m_hHallFactor = 1.
double m_eImpactA = 1.5e5
double m_hImpactA = 6.4e5
double m_eImpactB = 1.41e7
double m_hImpactB = 1.46e7
bool m_userMobility = false

Detailed Description

Gallium-Nitride.

Definition at line 10 of file MediumGaN.hh.

Constructor & Destructor Documentation

◆ MediumGaN()

Garfield::MediumGaN::MediumGaN ( )

Constructor.

◆ ~MediumGaN()

virtual Garfield::MediumGaN::~MediumGaN ( )
inlinevirtual

Destructor.

Definition at line 15 of file MediumGaN.hh.

15{}

Member Function Documentation

◆ ElectronAttachment()

bool Garfield::MediumGaN::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::MediumGaN::ElectronMobility ( )
inlineoverride

Definition at line 32 of file MediumGaN.hh.

32{ return m_eMobility; }

◆ ElectronTownsend()

bool Garfield::MediumGaN::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::MediumGaN::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::MediumGaN::GetComponent ( const unsigned int i,
std::string & label,
double & f )
override

◆ HoleAttachment()

bool Garfield::MediumGaN::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::MediumGaN::HoleMobility ( )
inlineoverride

Definition at line 43 of file MediumGaN.hh.

43{ return m_hMobility; }

◆ HoleTownsend()

bool Garfield::MediumGaN::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::MediumGaN::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::MediumGaN::IsSemiconductor ( ) const
inlineoverride

Definition at line 17 of file MediumGaN.hh.

17{ return true; }

◆ SetElectronConcentration()

void Garfield::MediumGaN::SetElectronConcentration ( const double c)

Set the electron concentration [cm-3].

◆ SetLowFieldMobility()

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

Set the low-field mobility values [cm2 / (V ns)] explicitly.

◆ UnsetLowFieldMobility()

void Garfield::MediumGaN::UnsetLowFieldMobility ( )

Use the default mobility models.

◆ UpdateTransportParameters()

void Garfield::MediumGaN::UpdateTransportParameters ( )
private

Member Data Documentation

◆ m_eDensity

double Garfield::MediumGaN::m_eDensity = 7.78e16
private

Definition at line 59 of file MediumGaN.hh.

◆ m_eHallFactor

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

Definition at line 62 of file MediumGaN.hh.

◆ m_eImpactA

double Garfield::MediumGaN::m_eImpactA = 1.5e5
private

Definition at line 68 of file MediumGaN.hh.

◆ m_eImpactB

double Garfield::MediumGaN::m_eImpactB = 1.41e7
private

Definition at line 70 of file MediumGaN.hh.

◆ m_eMobility

double Garfield::MediumGaN::m_eMobility = 1.405e-6
private

Definition at line 55 of file MediumGaN.hh.

◆ m_hHallFactor

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

Definition at line 63 of file MediumGaN.hh.

◆ m_hImpactA

double Garfield::MediumGaN::m_hImpactA = 6.4e5
private

Definition at line 69 of file MediumGaN.hh.

◆ m_hImpactB

double Garfield::MediumGaN::m_hImpactB = 1.46e7
private

Definition at line 71 of file MediumGaN.hh.

◆ m_hMobility

double Garfield::MediumGaN::m_hMobility = 0.170e-6
private

Definition at line 56 of file MediumGaN.hh.

◆ m_userMobility

bool Garfield::MediumGaN::m_userMobility = false
private

Definition at line 73 of file MediumGaN.hh.


The documentation for this class was generated from the following file:
  • /builds/garfield/docs/source/Include/Garfield/MediumGaN.hh