20 void GetComponent(
const unsigned int i, std::string& label,
double& f);
31 const double bx,
const double by,
const double bz,
32 double& vx,
double& vy,
double& vz);
34 const double bx,
const double by,
const double bz,
37 const double bx,
const double by,
const double bz,
40 bool HoleVelocity(
const double ex,
const double ey,
const double ez,
41 const double bx,
const double by,
const double bz,
42 double& vx,
double& vy,
double& vz);
43 bool HoleTownsend(
const double ex,
const double ey,
const double ez,
44 const double bx,
const double by,
const double bz,
46 bool HoleAttachment(
const double ex,
const double ey,
const double ez,
47 const double bx,
const double by,
const double bz,
53 const unsigned int i = 0);
55 const unsigned int i = 0);
59 double eMobility, hMobility;
61 double eHallFactor, hHallFactor;
64 double eTrapCs, hTrapCs;
65 double eTrapDensity, hTrapDensity;
66 double eTrapTime, hTrapTime;
70 bool m_hasUserMobility;
73 bool m_hasOpticalData;
74 std::string opticalDataFile;
81 std::vector<opticalData> opticalDataTable;
82 bool LoadOpticalData(
const std::string filename);
bool ElectronAttachment(const double ex, const double ey, const double ez, const double bx, const double by, const double bz, double &eta)
void SetTrapCrossSection(const double ecs, const double hcs)
Set electron and hole trapping cross-sections [cm-2].
bool GetDielectricFunction(const double e, double &eps1, double &eps2, const unsigned int i=0)
virtual ~MediumGaAs()
Destructor.
bool ElectronTownsend(const double ex, const double ey, const double ez, const double bx, const double by, const double bz, double &alpha)
void GetComponent(const unsigned int i, std::string &label, double &f)
void SetTrapDensity(const double n)
Set the density of traps [cm-3].
void SetTrappingTime(const double etau, const double htau)
Set the trapping time [ns] for electrons and holes.
bool IsSemiconductor() const
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)
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)
bool HoleAttachment(const double ex, const double ey, const double ez, const double bx, const double by, const double bz, double &eta)
bool GetOpticalDataRange(double &emin, double &emax, const unsigned int i=0)
bool HoleTownsend(const double ex, const double ey, const double ez, const double bx, const double by, const double bz, double &alpha)
void SetLowFieldMobility(const double mue, const double muh)
Abstract base class for media.