PLaSK library
Loading...
Searching...
No Matches
plask::MaterialWithBase Struct Reference

Material with another one as base. More...

#include <plask/material/material.hpp>

Inheritance diagram for plask::MaterialWithBase:
[legend]
Collaboration diagram for plask::MaterialWithBase:
[legend]

Public Member Functions

 MaterialWithBase ()=default
 
 MaterialWithBase (const shared_ptr< Material > &base)
 
 MaterialWithBase (Material *base)
 
Kind kind () const override
 
double lattC (double T, char x) const override
 Get lattice constant (Å).
 
double Eg (double T, double e, char point) const override
 Get energy gap Eg (eV)
 
double CB (double T, double e, char point) const override
 Get conduction band level CB (eV).
 
double VB (double T, double e, char point, char hole) const override
 Get valence band level VB(eV).
 
double Dso (double T, double e) const override
 Get split-off energy Dso (eV).
 
double Mso (double T, double e) const override
 Get split-off mass Mso [ $m_0$].
 
Tensor2< doubleMe (double T, double e, char point) const override
 Get electron effective mass Me in in-plane (lateral) and cross-plane (vertical) direction [ $m_0$].
 
Tensor2< doubleMhh (double T, double e) const override
 Get heavy hole effective mass Mhh in in-plane (lateral) and cross-plane (vertical) direction [ $m_0$].
 
Tensor2< doubleMlh (double T, double e) const override
 Get light hole effective mass Mlh in in-plane (lateral) and cross-plane (vertical) direction [ $m_0$].
 
Tensor2< doubleMh (double T, double e) const override
 Get hole effective mass Mh in in-plane (lateral) and cross-plane (vertical) direction [ $m_0$].
 
double ac (double T) const override
 Get hydrostatic deformation potential for the conduction band ac (eV).
 
double av (double T) const override
 Get hydrostatic deformation potential for the valence band av (eV).
 
double b (double T) const override
 Get shear deformation potential b (eV).
 
double d (double T) const override
 Get shear deformation potential d (eV).
 
double c11 (double T) const override
 Get elastic constant c11 (GPa).
 
double c12 (double T) const override
 Get elastic constant c12 (GPa).
 
double c44 (double T) const override
 Get elastic constant c44 (GPa).
 
double eps (double T) const override
 Get dielectric constant EpsR (-).
 
double chi (double T, double e, char point) const override
 Get electron affinity Chi(eV).
 
double Na () const override
 Get acceptor concentration Na [cm^(-3)].
 
double Nd () const override
 Get donor concentration Nd [cm^(-3)].
 
double Ni (double T) const override
 Get intrinsic carrier concentration Ni [cm^(-3)].
 
double Nf (double T) const override
 Get free carrier concentration N [cm^(-3)].
 
double EactD (double T) const override
 Get donor ionisation energy EactD (eV).
 
double EactA (double T) const override
 Get acceptor ionisation energy EactA (eV).
 
Tensor2< doublemob (double T) const override
 Get mobility in-plane (lateral) and cross-plane (vertical) direction [cm^2/(V*s)].
 
Tensor2< doublecond (double T) const override
 Get electrical conductivity sigma in-plane (lateral) and cross-plane (vertical) direction [S/m].
 
double A (double T) const override
 Get monomolecular recombination coefficient A (1/s).
 
double B (double T) const override
 Get radiative recombination coefficient B (cm^3/s).
 
double C (double T) const override
 Get Auger recombination coefficient C (cm^6/s).
 
double D (double T) const override
 Get ambipolar diffusion coefficient D (cm^2/s).
 
Tensor2< doublethermk (double T, double t) const override
 Get thermal conductivity in in-plane (lateral) and cross-plane (vertical) direction k [W/(m*K)].
 
double dens (double T) const override
 Get density (kg/m^3).
 
double cp (double T) const override
 Get specific heat at constant pressure [J/(kg*K)].
 
double nr (double lam, double T, double n) const override
 Get refractive index Nr (-).
 
double absp (double lam, double T) const override
 Get absorption coefficient alpha [cm^(-1)].
 
dcomplex Nr (double lam, double T, double n) const override
 Get refractive index Nr (-).
 
Tensor3< dcomplex > Eps (double lam, double T, double n) const override
 Get Hermitian permittivity tensor ε (-).
 
Tensor2< doublemobe (double T) const override
 Get electron mobility in-plane (lateral) and cross-plane (vertical) direction [cm^2/(V*s)].
 
Tensor2< doublemobh (double T) const override
 Get hole mobility in-plane (lateral) and cross-plane (vertical) direction [cm^2/(V*s)].
 
double taue (double T) const override
 Get monomolecular electrons lifetime (ns).
 
double tauh (double T) const override
 Get monomolecular holes lifetime (ns).
 
double Ce (double T) const override
 Get Auger recombination coefficient C for electrons (cm^6/s).
 
double Ch (double T) const override
 Get Auger recombination coefficient C for holes (cm^6/s).
 
double e13 (double T) const override
 Get piezoelectric constant e13 (C/m^2)
 
double e15 (double T) const override
 Get piezoelectric constant e13 (C/m^2)
 
double e33 (double T) const override
 Get piezoelectric constant e33 (C/m^2)
 
double c13 (double T) const override
 Get elastic constant c13 (GPa).
 
double c33 (double T) const override
 Get elastic constant c33 (GPa).
 
double Psp (double T) const override
 Get spontaneous polarization (C/m^2)
 
double y1 () const override
 Get Luttinger parameter γ1 (-).
 
double y2 () const override
 Get Luttinger parameter γ2 (-).
 
double y3 () const override
 Get Luttinger parameter γ3 (-).
 
- Public Member Functions inherited from plask::Material
virtual OmpLockGuard lock () const
 Create OpenMP lock guard.
 
virtual ~Material ()
 Do nothing.
 
virtual std::string name () const =0
 Get short (without composition and doping amounts) name of material.
 
std::string dopant () const
 Get dopant material name (part of name after ':', possibly empty).
 
std::string nameWithoutDopant () const
 Get material name without dopant (without ':' and part of name after it).
 
virtual std::string str () const
 Get full (with composition and doping amounts) name of material.
 
bool isAlloy () const
 Check if this material is alloy.
 
virtual Composition composition () const
 If this material is alloy return its composition.
 
virtual double doping () const
 Doping concentration.
 
virtual ConductivityType condtype () const
 Get electrical conductivity type.
 
bool operator== (const Material &other) const
 Check if this material is equal to other (checks type and uses isEqual).
 
bool operator== (shared_ptr< const Material > other) const
 Check if this material is equal to other (checks type and uses isEqual).
 
bool operator!= (const Material &other) const
 Check if this material is different from other (checks type and uses isEqual).
 
bool operator!= (shared_ptr< const Material > other) const
 Check if this material is different from other (checks type and uses isEqual).
 

Public Attributes

shared_ptr< Materialbase
 

Additional Inherited Members

- Public Types inherited from plask::Material
enum  Kind : unsigned {
  GENERIC = (1<<0) , EMPTY = (1<<1) , SEMICONDUCTOR = (1<<2) , OXIDE = (1<<3) ,
  DIELECTRIC = (1<<4) , METAL = (1<<5) , LIQUID_CRYSTAL = (1<<6) , MIXED = (1<<7)
}
 Material kind. More...
 
enum  ConductivityType {
  CONDUCTIVITY_N , CONDUCTIVITY_I , CONDUCTIVITY_P , CONDUCTIVITY_OTHER ,
  CONDUCTIVITY_UNDETERMINED
}
 Material conductivity type. More...
 
typedef std::map< std::string, doubleComposition
 Type for material composition.
 
- Static Public Member Functions inherited from plask::Material
static bool isNameWithDopant (const std::string &material_name)
 Check if dopant is included in material_name.
 
static bool isSimpleMaterialName (const std::string &material_name)
 Check if material_name is name of simple material.
 
static std::pair< std::string, doublefirstCompositionObject (const char *&begin, const char *end, const char *fullname)
 Parse composition object from [begin, end) string.
 
static Composition completeComposition (const Composition &composition)
 Change NaN-s in material composition to calculated amounts.
 
static Composition minimalComposition (const Composition &composition)
 Change material composition to minimal set.
 
static Composition parseComposition (const char *begin, const char *end, const char *fullname=nullptr)
 Parse composition from string, or string fragment.
 
static Composition parseComposition (const std::string &composition_str, const std::string &fullname="")
 Parse composition from string.
 
static void parseDopant (const char *begin, const char *end, std::string &dopant_elem_name, double &doping, bool allow_dopant_without_amount, const char *fullname)
 Parse information about dopant from string.
 
static void parseDopant (const std::string &dopant, std::string &dopant_elem_name, double &doping, bool allow_dopant_without_amount, const std::string &fullname)
 Parse information about dopant from string.
 
static std::vector< std::string > parseObjectsNames (const char *begin, const char *end)
 Split object name to objects.
 
static std::vector< std::string > parseObjectsNames (const std::string &allNames)
 Split object name to objects.
 
- Protected Member Functions inherited from plask::Material
virtual bool isEqual (const Material &other) const
 Check if this material is equal to other.
 
void throwNotImplemented (const std::string &method_name) const
 Throw exception with information that method with name method_name is not implemented for this material.
 

Detailed Description

Material with another one as base.

Definition at line 958 of file material.hpp.

Constructor & Destructor Documentation

◆ MaterialWithBase() [1/3]

plask::MaterialWithBase::MaterialWithBase ( )
default

◆ MaterialWithBase() [2/3]

plask::MaterialWithBase::MaterialWithBase ( const shared_ptr< Material > &  base)
inline

Definition at line 962 of file material.hpp.

◆ MaterialWithBase() [3/3]

plask::MaterialWithBase::MaterialWithBase ( Material base)
inline

Definition at line 963 of file material.hpp.

Member Function Documentation

◆ A()

double plask::MaterialWithBase::A ( double  T) const
overridevirtual

Get monomolecular recombination coefficient A (1/s).

Parameters
Ttemperature (K)
Returns
monomolecular recombination coefficient A (1/s)

Reimplemented from plask::Material.

Definition at line 478 of file material.cpp.

◆ absp()

double plask::MaterialWithBase::absp ( double  lam,
double  T 
) const
overridevirtual

Get absorption coefficient alpha [cm^(-1)].

Parameters
lamWavelength (nm)
Ttemperature (K)
ninjected carriers concentration (1/cm)
Returns
absorption coefficient alpha cm^(-1)]

Reimplemented from plask::Material.

Definition at line 492 of file material.cpp.

◆ ac()

double plask::MaterialWithBase::ac ( double  T) const
overridevirtual

Get hydrostatic deformation potential for the conduction band ac (eV).

Parameters
Ttemperature (K)
Returns
hydrostatic deformation potential for the conduction band ac (eV)

Reimplemented from plask::Material.

Definition at line 461 of file material.cpp.

◆ av()

double plask::MaterialWithBase::av ( double  T) const
overridevirtual

Get hydrostatic deformation potential for the valence band av (eV).

Parameters
Ttemperature (K)
Returns
hydrostatic deformation potential for the valence band av (eV)

Reimplemented from plask::Material.

Definition at line 462 of file material.cpp.

◆ b()

double plask::MaterialWithBase::b ( double  T) const
overridevirtual

Get shear deformation potential b (eV).

Parameters
Ttemperature (K)
Returns
shear deformation potential b (eV)

Reimplemented from plask::Material.

Definition at line 463 of file material.cpp.

◆ B()

double plask::MaterialWithBase::B ( double  T) const
overridevirtual

Get radiative recombination coefficient B (cm^3/s).

Parameters
Ttemperature (K)
Returns
radiative recombination coefficient B (cm^3/s)

Reimplemented from plask::Material.

Definition at line 479 of file material.cpp.

◆ C()

double plask::MaterialWithBase::C ( double  T) const
overridevirtual

Get Auger recombination coefficient C (cm^6/s).

Parameters
Ttemperature (K)
Returns
Auger recombination coefficient C (cm^6/s)

Reimplemented from plask::Material.

Definition at line 480 of file material.cpp.

◆ c11()

double plask::MaterialWithBase::c11 ( double  T) const
overridevirtual

Get elastic constant c11 (GPa).

Parameters
Ttemperature (K)
Returns
elastic constant c11 (GPa)

Reimplemented from plask::Material.

Definition at line 465 of file material.cpp.

◆ c12()

double plask::MaterialWithBase::c12 ( double  T) const
overridevirtual

Get elastic constant c12 (GPa).

Parameters
Ttemperature (K)
Returns
elastic constant c12 (GPa)

Reimplemented from plask::Material.

Definition at line 466 of file material.cpp.

◆ c13()

double plask::MaterialWithBase::c13 ( double  T) const
overridevirtual

Get elastic constant c13 (GPa).

Parameters
Ttemperature (K)
Returns
elastic constant c13 (GPa)

Reimplemented from plask::Material.

Definition at line 517 of file material.cpp.

◆ c33()

double plask::MaterialWithBase::c33 ( double  T) const
overridevirtual

Get elastic constant c33 (GPa).

Parameters
Ttemperature (K)
Returns
elastic constant c33 (GPa)

Reimplemented from plask::Material.

Definition at line 518 of file material.cpp.

◆ c44()

double plask::MaterialWithBase::c44 ( double  T) const
overridevirtual

Get elastic constant c44 (GPa).

Parameters
Ttemperature (K)
Returns
elastic constant c44 (GPa)

Reimplemented from plask::Material.

Definition at line 467 of file material.cpp.

◆ CB()

double plask::MaterialWithBase::CB ( double  T,
double  e,
char  point 
) const
overridevirtual

Get conduction band level CB (eV).

Parameters
Ttemperature (K)
elateral strain (-)
pointpoint in the Brillouin zone (-)
Returns
conduction band level CB (eV)

Reimplemented from plask::Material.

Definition at line 453 of file material.cpp.

◆ Ce()

double plask::MaterialWithBase::Ce ( double  T) const
overridevirtual

Get Auger recombination coefficient C for electrons (cm^6/s).

Parameters
Ttemperature (K)
Returns
Auger recombination coefficient C (cm^6/s)

Reimplemented from plask::Material.

Definition at line 512 of file material.cpp.

◆ Ch()

double plask::MaterialWithBase::Ch ( double  T) const
overridevirtual

Get Auger recombination coefficient C for holes (cm^6/s).

Parameters
Ttemperature (K)
Returns
Auger recombination coefficient C (cm^6/s)

Reimplemented from plask::Material.

Definition at line 513 of file material.cpp.

◆ chi()

double plask::MaterialWithBase::chi ( double  T,
double  e,
char  point 
) const
overridevirtual

Get electron affinity Chi(eV).

Parameters
Ttemperature (K)
elateral strain (-)
pointpoint in Brillouin zone (-)
Returns
electron affinity Chi (eV)

Reimplemented from plask::Material.

Definition at line 469 of file material.cpp.

◆ cond()

Tensor2< double > plask::MaterialWithBase::cond ( double  T) const
overridevirtual

Get electrical conductivity sigma in-plane (lateral) and cross-plane (vertical) direction [S/m].

Parameters
Ttemperature (K)
Returns
electrical conductivity sigma [S/m]

Reimplemented from plask::Material.

Definition at line 477 of file material.cpp.

◆ cp()

double plask::MaterialWithBase::cp ( double  T) const
overridevirtual

Get specific heat at constant pressure [J/(kg*K)].

Parameters
Ttemperature (K)
Returns
specific heat at constant pressure [J/(kg*K)]

Reimplemented from plask::Material.

Definition at line 490 of file material.cpp.

◆ d()

double plask::MaterialWithBase::d ( double  T) const
overridevirtual

Get shear deformation potential d (eV).

Parameters
Ttemperature (K)
Returns
shear deformation potential d (eV)

Reimplemented from plask::Material.

Definition at line 464 of file material.cpp.

◆ D()

double plask::MaterialWithBase::D ( double  T) const
overridevirtual

Get ambipolar diffusion coefficient D (cm^2/s).

Parameters
Ttemperature (K)
Returns
ambipolar diffusion coefficient D (cm^2/s)

Reimplemented from plask::Material.

Definition at line 481 of file material.cpp.

◆ dens()

double plask::MaterialWithBase::dens ( double  T) const
overridevirtual

Get density (kg/m^3).

Parameters
Ttemperature (K)
Returns
density (kg/m^3)

Reimplemented from plask::Material.

Definition at line 489 of file material.cpp.

◆ Dso()

double plask::MaterialWithBase::Dso ( double  T,
double  e 
) const
overridevirtual

Get split-off energy Dso (eV).

Parameters
Ttemperature (K)
elateral strain (-)
Returns
split-off energy Dso (eV)

Reimplemented from plask::Material.

Definition at line 455 of file material.cpp.

◆ e13()

double plask::MaterialWithBase::e13 ( double  T) const
overridevirtual

Get piezoelectric constant e13 (C/m^2)

Parameters
Ttemperature (K)
Returns
piezoelectric constant e13 (C/m^2)

Reimplemented from plask::Material.

Definition at line 514 of file material.cpp.

◆ e15()

double plask::MaterialWithBase::e15 ( double  T) const
overridevirtual

Get piezoelectric constant e13 (C/m^2)

Parameters
Ttemperature (K)
Returns
piezoelectric constant e13 (C/m^2)

Reimplemented from plask::Material.

Definition at line 515 of file material.cpp.

◆ e33()

double plask::MaterialWithBase::e33 ( double  T) const
overridevirtual

Get piezoelectric constant e33 (C/m^2)

Parameters
Ttemperature (K)
Returns
piezoelectric constant e33 (C/m^2)

Reimplemented from plask::Material.

Definition at line 516 of file material.cpp.

◆ EactA()

double plask::MaterialWithBase::EactA ( double  T) const
overridevirtual

Get acceptor ionisation energy EactA (eV).

Parameters
Ttemperature (K)
Returns
acceptor ionisation energy EactA (eV)

Reimplemented from plask::Material.

Definition at line 475 of file material.cpp.

◆ EactD()

double plask::MaterialWithBase::EactD ( double  T) const
overridevirtual

Get donor ionisation energy EactD (eV).

Parameters
Ttemperature (K)
Returns
donor ionisation energy EactD (eV)

Reimplemented from plask::Material.

Definition at line 474 of file material.cpp.

◆ Eg()

double plask::MaterialWithBase::Eg ( double  T,
double  e,
char  point 
) const
overridevirtual

Get energy gap Eg (eV)

Parameters
Ttemperature (K)
elateral strain (-)
pointpoint in the Brillouin zone (-)
Returns
energy gap Eg (eV)

Reimplemented from plask::Material.

Definition at line 452 of file material.cpp.

◆ Eps()

Tensor3< dcomplex > plask::MaterialWithBase::Eps ( double  lam,
double  T,
double  n 
) const
overridevirtual

Get Hermitian permittivity tensor ε (-).

Parameters
lamWavelength (nm)
Ttemperature (K)
ninjected carriers concentration (1/cm)
Returns
permittivity index tensor Eps(-)

Reimplemented from plask::Material.

Definition at line 500 of file material.cpp.

◆ eps()

double plask::MaterialWithBase::eps ( double  T) const
overridevirtual

Get dielectric constant EpsR (-).

Parameters
Ttemperature (K)
Returns
dielectric constant EpsR (-)

Reimplemented from plask::Material.

Definition at line 468 of file material.cpp.

◆ kind()

Material::Kind plask::MaterialWithBase::kind ( ) const
overridevirtual
Returns
material kind

Implements plask::Material.

Definition at line 449 of file material.cpp.

◆ lattC()

double plask::MaterialWithBase::lattC ( double  T,
char  x 
) const
overridevirtual

Get lattice constant (Å).

Parameters
Ttemperature (K)
xlattice parameter (-)
Returns
lattice constant (Å)

Reimplemented from plask::Material.

Definition at line 451 of file material.cpp.

◆ Me()

Tensor2< double > plask::MaterialWithBase::Me ( double  T,
double  e,
char  point 
) const
overridevirtual

Get electron effective mass Me in in-plane (lateral) and cross-plane (vertical) direction [ $m_0$].

Parameters
Ttemperature (K)
elateral strain (-)
pointpoint in Brillouin zone (-)
Returns
electron effective mass Me [ $m_0$]

Reimplemented from plask::Material.

Definition at line 457 of file material.cpp.

◆ Mh()

Tensor2< double > plask::MaterialWithBase::Mh ( double  T,
double  e 
) const
overridevirtual

Get hole effective mass Mh in in-plane (lateral) and cross-plane (vertical) direction [ $m_0$].

Parameters
Ttemperature (K)
elateral strain (-)
Returns
hole effective mass Mh [ $m_0$]

Reimplemented from plask::Material.

Definition at line 460 of file material.cpp.

◆ Mhh()

Tensor2< double > plask::MaterialWithBase::Mhh ( double  T,
double  e 
) const
overridevirtual

Get heavy hole effective mass Mhh in in-plane (lateral) and cross-plane (vertical) direction [ $m_0$].

Parameters
Ttemperature (K)
elateral strain (-)
Returns
heavy hole effective mass Mhh [ $m_0$]

Reimplemented from plask::Material.

Definition at line 458 of file material.cpp.

◆ Mlh()

Tensor2< double > plask::MaterialWithBase::Mlh ( double  T,
double  e 
) const
overridevirtual

Get light hole effective mass Mlh in in-plane (lateral) and cross-plane (vertical) direction [ $m_0$].

Parameters
Ttemperature (K)
elateral strain (-)
Returns
light hole effective mass Mlh [ $m_0$]

Reimplemented from plask::Material.

Definition at line 459 of file material.cpp.

◆ mob()

Tensor2< double > plask::MaterialWithBase::mob ( double  T) const
overridevirtual

Get mobility in-plane (lateral) and cross-plane (vertical) direction [cm^2/(V*s)].

Parameters
Ttemperature (K)
Returns
mobility [cm^2/(V*s)]

Reimplemented from plask::Material.

Definition at line 476 of file material.cpp.

◆ mobe()

Tensor2< double > plask::MaterialWithBase::mobe ( double  T) const
overridevirtual

Get electron mobility in-plane (lateral) and cross-plane (vertical) direction [cm^2/(V*s)].

Parameters
Ttemperature (K)
Returns
mobility [cm^2/(V*s)]

Reimplemented from plask::Material.

Definition at line 508 of file material.cpp.

◆ mobh()

Tensor2< double > plask::MaterialWithBase::mobh ( double  T) const
overridevirtual

Get hole mobility in-plane (lateral) and cross-plane (vertical) direction [cm^2/(V*s)].

Parameters
Ttemperature (K)
Returns
mobility [cm^2/(V*s)]

Reimplemented from plask::Material.

Definition at line 509 of file material.cpp.

◆ Mso()

double plask::MaterialWithBase::Mso ( double  T,
double  e 
) const
overridevirtual

Get split-off mass Mso [ $m_0$].

Parameters
Ttemperature (K)
elateral strain (-)
Returns
split-off mass Mso [ $m_0$]

Reimplemented from plask::Material.

Definition at line 456 of file material.cpp.

◆ Na()

double plask::MaterialWithBase::Na ( ) const
overridevirtual

Get acceptor concentration Na [cm^(-3)].

Returns
acceptor concentration Na [cm^(-3)]

Reimplemented from plask::Material.

Definition at line 470 of file material.cpp.

◆ Nd()

double plask::MaterialWithBase::Nd ( ) const
overridevirtual

Get donor concentration Nd [cm^(-3)].

Returns
donor concentration Nd [cm^(-3)]

Reimplemented from plask::Material.

Definition at line 471 of file material.cpp.

◆ Nf()

double plask::MaterialWithBase::Nf ( double  T) const
overridevirtual

Get free carrier concentration N [cm^(-3)].

Parameters
Ttemperature (K)
Returns
free carrier concentration N [cm^(-3)]

Reimplemented from plask::Material.

Definition at line 473 of file material.cpp.

◆ Ni()

double plask::MaterialWithBase::Ni ( double  T) const
overridevirtual

Get intrinsic carrier concentration Ni [cm^(-3)].

Parameters
Ttemperature (K)
Returns
intrinsic carrier concentration Ni [cm^(-3)]

Reimplemented from plask::Material.

Definition at line 472 of file material.cpp.

◆ nr()

double plask::MaterialWithBase::nr ( double  lam,
double  T,
double  n 
) const
overridevirtual

Get refractive index Nr (-).

Parameters
lamWavelength (nm)
Ttemperature (K)
ninjected carriers concentration (1/cm)
Returns
refractive index Nr (-)

Reimplemented from plask::Material.

Definition at line 491 of file material.cpp.

◆ Nr()

dcomplex plask::MaterialWithBase::Nr ( double  lam,
double  T,
double  n 
) const
overridevirtual

Get refractive index Nr (-).

Parameters
lamWavelength (nm)
Ttemperature (K)
Returns
refractive index Nr(-)

Reimplemented from plask::Material.

Definition at line 493 of file material.cpp.

◆ Psp()

double plask::MaterialWithBase::Psp ( double  T) const
overridevirtual

Get spontaneous polarization (C/m^2)

Parameters
Ttemperature (K)
Returns
spontaneous polarization (C/m^2)

Reimplemented from plask::Material.

Definition at line 519 of file material.cpp.

◆ taue()

double plask::MaterialWithBase::taue ( double  T) const
overridevirtual

Get monomolecular electrons lifetime (ns).

Parameters
Ttemperature (K)
Returns
monomolecular electrons lifetime (ns)

Reimplemented from plask::Material.

Definition at line 510 of file material.cpp.

◆ tauh()

double plask::MaterialWithBase::tauh ( double  T) const
overridevirtual

Get monomolecular holes lifetime (ns).

Parameters
Ttemperature (K)
Returns
monomolecular holes lifetime (ns)

Reimplemented from plask::Material.

Definition at line 511 of file material.cpp.

◆ thermk()

Tensor2< double > plask::MaterialWithBase::thermk ( double  T,
double  h 
) const
overridevirtual

Get thermal conductivity in in-plane (lateral) and cross-plane (vertical) direction k [W/(m*K)].

Parameters
Ttemperature (K)
hlayer thickness (µm)
Returns
thermal conductivity k [W/(m*K)]

Reimplemented from plask::Material.

Definition at line 488 of file material.cpp.

◆ VB()

double plask::MaterialWithBase::VB ( double  T,
double  e,
char  point,
char  hole 
) const
overridevirtual

Get valence band level VB(eV).

Parameters
Ttemperature (K)
elateral strain (-)
pointpoint in Brillouin zone (-)
holehole type ('H'eavy or 'L'ight) (-)
Returns
valence band level VB(eV)

Reimplemented from plask::Material.

Definition at line 454 of file material.cpp.

◆ y1()

double plask::MaterialWithBase::y1 ( ) const
overridevirtual

Get Luttinger parameter γ1 (-).

Returns
Luttinger parameter y1 (-)

Reimplemented from plask::Material.

Definition at line 520 of file material.cpp.

◆ y2()

double plask::MaterialWithBase::y2 ( ) const
overridevirtual

Get Luttinger parameter γ2 (-).

Returns
Luttinger parameter y2 (-)

Reimplemented from plask::Material.

Definition at line 521 of file material.cpp.

◆ y3()

double plask::MaterialWithBase::y3 ( ) const
overridevirtual

Get Luttinger parameter γ3 (-).

Returns
Luttinger parameter y3 (-)

Reimplemented from plask::Material.

Definition at line 522 of file material.cpp.

Member Data Documentation

◆ base

shared_ptr<Material> plask::MaterialWithBase::base

Definition at line 959 of file material.hpp.


The documentation for this struct was generated from the following files: