PLaSK library
|
Represent material, its physical properties. More...
#include <plask/material/material.hpp>
Classes | |
struct | Parameters |
Parameters of material, information about: name, label, composition and dopant. More... | |
struct | StringBuilder |
Helper class for easy constructing string representations of complex materials. More... | |
Public Types | |
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, double > | Composition |
Type for material composition. | |
Public Member Functions | |
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 Kind | kind () const =0 |
virtual double | lattC (double T, char x) const |
Get lattice constant (Å). | |
virtual double | Eg (double T, double e=0., char point=' *') const |
Get energy gap Eg (eV) | |
virtual double | CB (double T, double e=0., char point=' *') const |
Get conduction band level CB (eV). | |
virtual double | VB (double T, double e=0., char point=' *', char hole='H') const |
Get valence band level VB(eV). | |
virtual double | Dso (double T, double e=0.) const |
Get split-off energy Dso (eV). | |
virtual double | Mso (double T, double e=0.) const |
Get split-off mass Mso [ ]. | |
virtual Tensor2< double > | Me (double T, double e=0., char point=' *') const |
Get electron effective mass Me in in-plane (lateral) and cross-plane (vertical) direction [ ]. | |
virtual Tensor2< double > | Mhh (double T, double e=0.) const |
Get heavy hole effective mass Mhh in in-plane (lateral) and cross-plane (vertical) direction [ ]. | |
virtual Tensor2< double > | Mlh (double T, double e=0.) const |
Get light hole effective mass Mlh in in-plane (lateral) and cross-plane (vertical) direction [ ]. | |
virtual Tensor2< double > | Mh (double T, double e=0.) const |
Get hole effective mass Mh in in-plane (lateral) and cross-plane (vertical) direction [ ]. | |
virtual double | y1 () const |
Get Luttinger parameter γ1 (-). | |
virtual double | y2 () const |
Get Luttinger parameter γ2 (-). | |
virtual double | y3 () const |
Get Luttinger parameter γ3 (-). | |
virtual double | ac (double T) const |
Get hydrostatic deformation potential for the conduction band ac (eV). | |
virtual double | av (double T) const |
Get hydrostatic deformation potential for the valence band av (eV). | |
virtual double | b (double T) const |
Get shear deformation potential b (eV). | |
virtual double | d (double T) const |
Get shear deformation potential d (eV). | |
virtual double | c11 (double T) const |
Get elastic constant c11 (GPa). | |
virtual double | c12 (double T) const |
Get elastic constant c12 (GPa). | |
virtual double | c44 (double T) const |
Get elastic constant c44 (GPa). | |
virtual double | eps (double T) const |
Get dielectric constant EpsR (-). | |
virtual Tensor3< dcomplex > | Eps (double lam, double T, double n=0) const |
Get Hermitian permittivity tensor ε (-). | |
virtual double | chi (double T, double e=0., char point=' *') const |
Get electron affinity Chi(eV). | |
virtual double | Ni (double T) const |
Get intrinsic carrier concentration Ni [cm^(-3)]. | |
virtual double | Nf (double T) const |
Get free carrier concentration N [cm^(-3)]. | |
virtual double | EactD (double T) const |
Get donor ionisation energy EactD (eV). | |
virtual double | EactA (double T) const |
Get acceptor ionisation energy EactA (eV). | |
virtual Tensor2< double > | mob (double T) const |
Get mobility in-plane (lateral) and cross-plane (vertical) direction [cm^2/(V*s)]. | |
virtual Tensor2< double > | cond (double T) const |
Get electrical conductivity sigma in-plane (lateral) and cross-plane (vertical) direction [S/m]. | |
virtual ConductivityType | condtype () const |
Get electrical conductivity type. | |
virtual double | A (double T) const |
Get monomolecular recombination coefficient A (1/s). | |
virtual double | B (double T) const |
Get radiative recombination coefficient B (cm^3/s). | |
virtual double | C (double T) const |
Get Auger recombination coefficient C (cm^6/s). | |
virtual double | D (double T) const |
Get ambipolar diffusion coefficient D (cm^2/s). | |
virtual Tensor2< double > | thermk (double T, double h=INFINITY) const |
Get thermal conductivity in in-plane (lateral) and cross-plane (vertical) direction k [W/(m*K)]. | |
virtual double | dens (double T) const |
Get density (kg/m^3). | |
virtual double | cp (double T) const |
Get specific heat at constant pressure [J/(kg*K)]. | |
virtual double | nr (double lam, double T, double n=0) const |
Get refractive index Nr (-). | |
virtual double | absp (double lam, double T) const |
Get absorption coefficient alpha [cm^(-1)]. | |
virtual dcomplex | Nr (double lam, double T, double n=0) const |
Get refractive index Nr (-). | |
virtual Tensor2< double > | mobe (double T) const |
Get electron mobility in-plane (lateral) and cross-plane (vertical) direction [cm^2/(V*s)]. | |
virtual Tensor2< double > | mobh (double T) const |
Get hole mobility in-plane (lateral) and cross-plane (vertical) direction [cm^2/(V*s)]. | |
virtual double | taue (double T) const |
Get monomolecular electrons lifetime (ns). | |
virtual double | tauh (double T) const |
Get monomolecular holes lifetime (ns). | |
virtual double | Ce (double T) const |
Get Auger recombination coefficient C for electrons (cm^6/s). | |
virtual double | Ch (double T) const |
Get Auger recombination coefficient C for holes (cm^6/s). | |
virtual double | e13 (double T) const |
Get piezoelectric constant e13 (C/m^2) | |
virtual double | e15 (double T) const |
Get piezoelectric constant e13 (C/m^2) | |
virtual double | e33 (double T) const |
Get piezoelectric constant e33 (C/m^2) | |
virtual double | c13 (double T) const |
Get elastic constant c13 (GPa). | |
virtual double | c33 (double T) const |
Get elastic constant c33 (GPa). | |
virtual double | Psp (double T) const |
Get spontaneous polarization (C/m^2) | |
virtual double | Na () const |
Get acceptor concentration Na [cm^(-3)]. | |
virtual double | Nd () const |
Get donor concentration Nd [cm^(-3)]. | |
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). | |
Static Public Member Functions | |
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, double > | firstCompositionObject (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 | |
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. | |
Friends | |
struct | MaterialsDB |
Represent material, its physical properties.
Definition at line 60 of file material.hpp.
typedef std::map<std::string, double> plask::Material::Composition |
Type for material composition.
Definition at line 86 of file material.hpp.
Material conductivity type.
Definition at line 75 of file material.hpp.
Material kind.
Definition at line 63 of file material.hpp.
|
inlinevirtual |
Do nothing.
Definition at line 383 of file material.hpp.
Get monomolecular recombination coefficient A (1/s).
T | temperature (K) |
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 150 of file material.cpp.
Get absorption coefficient alpha [cm^(-1)].
lam | Wavelength (nm) |
T | temperature (K) |
n | injected carriers concentration (1/cm) |
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 152 of file material.cpp.
Get hydrostatic deformation potential for the conduction band ac (eV).
T | temperature (K) |
Reimplemented in plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 201 of file material.cpp.
Get hydrostatic deformation potential for the valence band av (eV).
T | temperature (K) |
Reimplemented in plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 202 of file material.cpp.
Get shear deformation potential b (eV).
T | temperature (K) |
Reimplemented in plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 203 of file material.cpp.
Get radiative recombination coefficient B (cm^3/s).
T | temperature (K) |
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 154 of file material.cpp.
Get Auger recombination coefficient C (cm^6/s).
T | temperature (K) |
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 156 of file material.cpp.
Get elastic constant c11 (GPa).
T | temperature (K) |
Reimplemented in plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 205 of file material.cpp.
Get elastic constant c12 (GPa).
T | temperature (K) |
Reimplemented in plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 206 of file material.cpp.
Get elastic constant c13 (GPa).
T | temperature (K) |
Reimplemented in plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 255 of file material.cpp.
Get elastic constant c33 (GPa).
T | temperature (K) |
Reimplemented in plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 257 of file material.cpp.
Get elastic constant c44 (GPa).
T | temperature (K) |
Reimplemented in plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 207 of file material.cpp.
Get conduction band level CB (eV).
T | temperature (K) |
e | lateral strain (-) |
point | point in the Brillouin zone (-) |
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 158 of file material.cpp.
Get Auger recombination coefficient C for electrons (cm^6/s).
T | temperature (K) |
Reimplemented in plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 245 of file material.cpp.
Get Auger recombination coefficient C for holes (cm^6/s).
T | temperature (K) |
Reimplemented in plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 247 of file material.cpp.
Get electron affinity Chi(eV).
T | temperature (K) |
e | lateral strain (-) |
point | point in Brillouin zone (-) |
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 165 of file material.cpp.
|
static |
Change NaN-s in material composition to calculated amounts.
Throw exception if it is impossible to complete given composition.
composition | amounts of objects composition with NaN on position for which amounts has not been taken |
Definition at line 274 of file material.cpp.
|
virtual |
If this material is alloy return its composition.
Definition at line 142 of file material.cpp.
Get electrical conductivity sigma in-plane (lateral) and cross-plane (vertical) direction [S/m].
T | temperature (K) |
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 167 of file material.cpp.
|
virtual |
Get electrical conductivity type.
In semiconductors this indicates what type of carriers Nf refers to.
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 169 of file material.cpp.
Get specific heat at constant pressure [J/(kg*K)].
T | temperature (K) |
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 230 of file material.cpp.
Get shear deformation potential d (eV).
T | temperature (K) |
Reimplemented in plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 204 of file material.cpp.
Get ambipolar diffusion coefficient D (cm^2/s).
T | temperature (K) |
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 171 of file material.cpp.
Get density (kg/m^3).
T | temperature (K) |
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 179 of file material.cpp.
std::string plask::Material::dopant | ( | ) | const |
Get dopant material name (part of name after ':', possibly empty).
Definition at line 413 of file material.cpp.
|
virtual |
Doping concentration.
Definition at line 146 of file material.cpp.
Get split-off energy Dso (eV).
T | temperature (K) |
e | lateral strain (-) |
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 181 of file material.cpp.
Get piezoelectric constant e13 (C/m^2)
T | temperature (K) |
Reimplemented in plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 249 of file material.cpp.
Get piezoelectric constant e13 (C/m^2)
T | temperature (K) |
Reimplemented in plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 251 of file material.cpp.
Get piezoelectric constant e33 (C/m^2)
T | temperature (K) |
Reimplemented in plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 253 of file material.cpp.
Get acceptor ionisation energy EactA (eV).
T | temperature (K) |
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 183 of file material.cpp.
Get donor ionisation energy EactD (eV).
T | temperature (K) |
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 184 of file material.cpp.
Get energy gap Eg (eV)
T | temperature (K) |
e | lateral strain (-) |
point | point in the Brillouin zone (-) |
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 186 of file material.cpp.
Get Hermitian permittivity tensor ε (-).
lam | Wavelength (nm) |
T | temperature (K) |
n | injected carriers concentration (1/cm) |
Reimplemented in plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 221 of file material.cpp.
Get dielectric constant EpsR (-).
T | temperature (K) |
Reimplemented in plask::materials::Air, plask::ConstMaterial, plask::Metal, and plask::MixedMaterial.
Definition at line 188 of file material.cpp.
|
static |
Parse composition object from [begin, end) string.
begin | begin of string, will be increased to point to potential next composition object or end (if parsed composition object was last one) |
end | points just after last charcter of string, must be: begin < end |
fullname | full name of material, used for error messages |
Definition at line 325 of file material.cpp.
bool plask::Material::isAlloy | ( | ) | const |
Check if this
material is alloy.
true
only if this
material is alloy Definition at line 138 of file material.cpp.
Check if this material is equal to other.
Default implementation compares string representation of this and other. For simple materials (without parameters) this should just returns true.
other | other material witch has the same type as this (in implementation you can safty static_cast it to type of this) |
true
only if this is equal to other
Reimplemented in plask::GenericMaterial, plask::materials::Air, and plask::ConstMaterial.
Check if dopant is included in material_name
.
material_name | full material name |
true
only if dopant is included in material_name
. Definition at line 116 of file material.hpp.
Check if material_name
is name of simple material.
material_name | full material name or name without dopant (only part before ':') |
true
only if material_name
is name of simple material (does not have composition). Definition at line 125 of file material.hpp.
Implemented in plask::materials::Air, plask::ConstMaterial, plask::DummyMaterial, plask::Semiconductor, plask::Metal, plask::Oxide, plask::Dielectric, plask::LiquidCrystal, plask::GenericMaterial, and plask::MixedMaterial.
Get lattice constant (Å).
T | temperature (K) |
x | lattice parameter (-) |
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 190 of file material.cpp.
|
inlinevirtual |
Create OpenMP lock guard.
Definition at line 378 of file material.hpp.
Get electron effective mass Me in in-plane (lateral) and cross-plane (vertical) direction [ ].
T | temperature (K) |
e | lateral strain (-) |
point | point in Brillouin zone (-) |
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 192 of file material.cpp.
Get hole effective mass Mh in in-plane (lateral) and cross-plane (vertical) direction [ ].
T | temperature (K) |
e | lateral strain (-) |
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 193 of file material.cpp.
Get heavy hole effective mass Mhh in in-plane (lateral) and cross-plane (vertical) direction [ ].
T | temperature (K) |
e | lateral strain (-) |
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 194 of file material.cpp.
|
static |
Change material composition to minimal set.
Throw exception if it is impossible to complete given composition.
composition | amounts of objects composition with NaN on position for which amounts has not been taken |
Definition at line 289 of file material.cpp.
Get light hole effective mass Mlh in in-plane (lateral) and cross-plane (vertical) direction [ ].
T | temperature (K) |
e | lateral strain (-) |
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 195 of file material.cpp.
Get mobility in-plane (lateral) and cross-plane (vertical) direction [cm^2/(V*s)].
T | temperature (K) |
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 209 of file material.cpp.
Get electron mobility in-plane (lateral) and cross-plane (vertical) direction [cm^2/(V*s)].
T | temperature (K) |
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 237 of file material.cpp.
Get hole mobility in-plane (lateral) and cross-plane (vertical) direction [cm^2/(V*s)].
T | temperature (K) |
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 239 of file material.cpp.
Get split-off mass Mso [ ].
T | temperature (K) |
e | lateral strain (-) |
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 211 of file material.cpp.
|
virtual |
Get acceptor concentration Na [cm^(-3)].
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 261 of file material.cpp.
|
pure virtual |
Get short (without composition and doping amounts) name of material.
Implemented in plask::materials::Air, plask::ConstMaterial, plask::DummyMaterial, plask::Semiconductor, plask::Metal, plask::Oxide, plask::Dielectric, plask::LiquidCrystal, plask::GenericMaterial, and plask::MixedMaterial.
std::string plask::Material::nameWithoutDopant | ( | ) | const |
Get material name without dopant (without ':' and part of name after it).
Definition at line 418 of file material.cpp.
|
virtual |
Get donor concentration Nd [cm^(-3)].
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 263 of file material.cpp.
Get free carrier concentration N [cm^(-3)].
T | temperature (K) |
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 213 of file material.cpp.
Get intrinsic carrier concentration Ni [cm^(-3)].
T | temperature (K) |
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 215 of file material.cpp.
Get refractive index Nr (-).
lam | Wavelength (nm) |
T | temperature (K) |
n | injected carriers concentration (1/cm) |
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 217 of file material.cpp.
Get refractive index Nr (-).
lam | Wavelength (nm) |
T | temperature (K) |
Reimplemented in plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 219 of file material.cpp.
Check if this material is different from other (checks type and uses isEqual).
other | other material |
true
only if this is not equal to other
Definition at line 852 of file material.hpp.
Check if this material is different from other (checks type and uses isEqual).
other | other material |
true
only if this is not equal to other
, true
in case of other is nullptr Definition at line 859 of file material.hpp.
Check if this material is equal to other (checks type and uses isEqual).
other | other material |
true
only if this is equal to other
Definition at line 226 of file material.cpp.
Check if this material is equal to other (checks type and uses isEqual).
other | other material |
true
only if this is equal to other
, false
in case of other is nullptr Definition at line 843 of file material.hpp.
|
static |
Parse composition from string, or string fragment.
Throws exception in case of parsing errors.
begin,end | [begin, end) string or range in string, for example "Al(0.7)GaN" |
Definition at line 345 of file material.cpp.
|
static |
Parse composition from string.
Throws exception in case of parsing errors.
composition_str | composition string, objects and amounts, for example "Al(0.7)GaN" |
Definition at line 363 of file material.cpp.
|
static |
Parse information about dopant from string.
Throws exception in case of parsing errors.
[in] | begin,end | [begin, end) string or range in string |
[out] | dopant_elem_name,doping | parsed values |
[in] | allow_dopant_without_amount | if true, dopant without ammount is allowed (in such case, dopant_elem_name is filled, but doping_type is set to NO_DOPING and doping to 0.0) |
[in] | fullname | full name of material, used for error messages |
Definition at line 371 of file material.cpp.
|
static |
Parse information about dopant from string.
Throws exception in case of parsing errors.
[in] | dopant | string to parse |
[out] | dopant_elem_name,doping | parsed values |
[in] | allow_dopant_without_amount | if true, dopant without ammount is allowed (in such case, dopant_elem_name is filled, but doping_type is set to NO_DOPING and doping to 0.0) |
[in] | fullname | full name of material, used for error messages |
Definition at line 391 of file material.cpp.
|
static |
Split object name to objects.
begin,end | [begin, end) string or range in string, for example "AlGaN" |
MaterialParseException | when name is ill-formatted |
Definition at line 396 of file material.cpp.
|
static |
Split object name to objects.
allNames | all objects names, for example "AlGaN" |
MaterialParseException | when name is ill-formated |
Definition at line 408 of file material.cpp.
Get spontaneous polarization (C/m^2)
T | temperature (K) |
Reimplemented in plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 259 of file material.cpp.
|
virtual |
Get full (with composition and doping amounts) name of material.
Default implementation returns name, which is fine only for simple materials.
Reimplemented in plask::ConstMaterial.
Definition at line 134 of file material.cpp.
Get monomolecular electrons lifetime (ns).
T | temperature (K) |
Reimplemented in plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 241 of file material.cpp.
Get monomolecular holes lifetime (ns).
T | temperature (K) |
Reimplemented in plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 243 of file material.cpp.
Get thermal conductivity in in-plane (lateral) and cross-plane (vertical) direction k [W/(m*K)].
T | temperature (K) |
h | layer thickness (µm) |
Reimplemented in plask::materials::Air, plask::MixedMaterial, and plask::ConstMaterial.
Definition at line 232 of file material.cpp.
Throw exception with information that method with name method_name
is not implemented for this material.
method_name | name of method which is not implemented |
Definition at line 270 of file material.cpp.
|
virtual |
Get valence band level VB(eV).
T | temperature (K) |
e | lateral strain (-) |
point | point in Brillouin zone (-) |
hole | hole type ('H'eavy or 'L'ight) (-) |
Reimplemented in plask::materials::Air, plask::ConstMaterial, and plask::MixedMaterial.
Definition at line 234 of file material.cpp.
|
virtual |
Get Luttinger parameter γ1 (-).
Reimplemented in plask::ConstMaterial.
Definition at line 197 of file material.cpp.
|
virtual |
Get Luttinger parameter γ2 (-).
Reimplemented in plask::ConstMaterial.
Definition at line 198 of file material.cpp.
|
virtual |
Get Luttinger parameter γ3 (-).
Reimplemented in plask::ConstMaterial.
Definition at line 199 of file material.cpp.
|
friend |
Definition at line 107 of file material.hpp.