|
PLaSK library
|
Represent air, its physical properties. More...
#include <plask/material/air.hpp>
Public Member Functions | |
| std::string | name () const override |
| Get short (without composition and doping amounts) name of material. | |
| 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 [ ]. | |
| Tensor2< double > | Me (double T, double e, char point) const override |
Get electron effective mass Me in in-plane (lateral) and cross-plane (vertical) direction [ ]. | |
| Tensor2< double > | Mhh (double T, double e) const override |
Get heavy hole effective mass Mhh in in-plane (lateral) and cross-plane (vertical) direction [ ]. | |
| Tensor2< double > | Mlh (double T, double e) const override |
Get light hole effective mass Mlh in in-plane (lateral) and cross-plane (vertical) direction [ ]. | |
| Tensor2< double > | Mh (double T, double e) const override |
Get hole effective mass Mh in in-plane (lateral) and cross-plane (vertical) direction [ ]. | |
| 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 | 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< double > | mob (double T) const override |
| Get mobility in-plane (lateral) and cross-plane (vertical) direction [cm^2/(V*s)]. | |
| Tensor2< double > | cond (double T) const override |
| Get electrical conductivity sigma in-plane (lateral) and cross-plane (vertical) direction [S/m]. | |
| ConductivityType | condtype () const override |
| Get electrical conductivity type. | |
| 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< double > | thermk (double T, double h) 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=.0) const override |
| Get refractive index Nr (-). | |
| double | absp (double lam, double T) const override |
| Get absorption coefficient alpha [cm^(-1)]. | |
| Tensor2< double > | mobe (double T) const override |
| Get electron mobility in-plane (lateral) and cross-plane (vertical) direction [cm^2/(V*s)]. | |
| Tensor2< double > | mobh (double T) const override |
| Get hole mobility in-plane (lateral) and cross-plane (vertical) direction [cm^2/(V*s)]. | |
| double | Na () const override |
| Get acceptor concentration Na [cm^(-3)]. | |
| double | Nd () const override |
| Get donor concentration Nd [cm^(-3)]. | |
Public Member Functions inherited from plask::Material | |
| virtual OmpLockGuard | lock () const |
| Create OpenMP lock guard. | |
| virtual | ~Material () |
| Do nothing. | |
| 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 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 Tensor3< dcomplex > | Eps (double lam, double T, double n=0) const |
| Get Hermitian permittivity tensor ε (-). | |
| virtual dcomplex | Nr (double lam, double T, double n=0) const |
| Get refractive index Nr (-). | |
| 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) | |
| 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 Attributes | |
| static constexpr const char * | NAME = "air" |
Protected Member Functions | |
| bool | isEqual (const Material &other) const override |
| Check if this material is equal to other. | |
Protected Member Functions inherited from plask::Material | |
| void | throwNotImplemented (const std::string &method_name) const |
Throw exception with information that method with name method_name is not implemented for this material. | |
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, double > | Composition |
| 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, 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. | |
Get monomolecular recombination coefficient A (1/s).
| T | temperature (K) |
Reimplemented from plask::Material.
Get absorption coefficient alpha [cm^(-1)].
| lam | Wavelength (nm) |
| T | temperature (K) |
| n | injected carriers concentration (1/cm) |
Reimplemented from plask::Material.
Get radiative recombination coefficient B (cm^3/s).
| T | temperature (K) |
Reimplemented from plask::Material.
Get Auger recombination coefficient C (cm^6/s).
| T | temperature (K) |
Reimplemented from plask::Material.
Get conduction band level CB (eV).
| T | temperature (K) |
| e | lateral strain (-) |
| point | point in the Brillouin zone (-) |
Reimplemented from plask::Material.
Get electron affinity Chi(eV).
| T | temperature (K) |
| e | lateral strain (-) |
| point | point in Brillouin zone (-) |
Reimplemented from plask::Material.
Get electrical conductivity sigma in-plane (lateral) and cross-plane (vertical) direction [S/m].
| T | temperature (K) |
Reimplemented from plask::Material.
|
overridevirtual |
Get electrical conductivity type.
In semiconductors this indicates what type of carriers Nf refers to.
Reimplemented from plask::Material.
Get specific heat at constant pressure [J/(kg*K)].
| T | temperature (K) |
Reimplemented from plask::Material.
Get ambipolar diffusion coefficient D (cm^2/s).
| T | temperature (K) |
Reimplemented from plask::Material.
Get density (kg/m^3).
| T | temperature (K) |
Reimplemented from plask::Material.
Get split-off energy Dso (eV).
| T | temperature (K) |
| e | lateral strain (-) |
Reimplemented from plask::Material.
Get acceptor ionisation energy EactA (eV).
| T | temperature (K) |
Reimplemented from plask::Material.
Get donor ionisation energy EactD (eV).
| T | temperature (K) |
Reimplemented from plask::Material.
Get energy gap Eg (eV)
| T | temperature (K) |
| e | lateral strain (-) |
| point | point in the Brillouin zone (-) |
Reimplemented from plask::Material.
Get dielectric constant EpsR (-).
| T | temperature (K) |
Reimplemented from plask::Material.
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 from plask::Material.
|
overridevirtual |
Get lattice constant (Å).
| T | temperature (K) |
| x | lattice parameter (-) |
Reimplemented from plask::Material.
|
overridevirtual |
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 from plask::Material.
Get hole effective mass Mh in in-plane (lateral) and cross-plane (vertical) direction [
].
| T | temperature (K) |
| e | lateral strain (-) |
] Reimplemented from plask::Material.
Get heavy hole effective mass Mhh in in-plane (lateral) and cross-plane (vertical) direction [
].
| T | temperature (K) |
| e | lateral strain (-) |
] Reimplemented from plask::Material.
Get light hole effective mass Mlh in in-plane (lateral) and cross-plane (vertical) direction [
].
| T | temperature (K) |
| e | lateral strain (-) |
] Reimplemented from plask::Material.
Get mobility in-plane (lateral) and cross-plane (vertical) direction [cm^2/(V*s)].
| T | temperature (K) |
Reimplemented from plask::Material.
Get electron mobility in-plane (lateral) and cross-plane (vertical) direction [cm^2/(V*s)].
| T | temperature (K) |
Reimplemented from plask::Material.
Get hole mobility in-plane (lateral) and cross-plane (vertical) direction [cm^2/(V*s)].
| T | temperature (K) |
Reimplemented from plask::Material.
Get split-off mass Mso [
].
| T | temperature (K) |
| e | lateral strain (-) |
] Reimplemented from plask::Material.
|
overridevirtual |
Get acceptor concentration Na [cm^(-3)].
Reimplemented from plask::Material.
|
overridevirtual |
Get short (without composition and doping amounts) name of material.
Implements plask::Material.
|
overridevirtual |
Get donor concentration Nd [cm^(-3)].
Reimplemented from plask::Material.
Get free carrier concentration N [cm^(-3)].
| T | temperature (K) |
Reimplemented from plask::Material.
Get intrinsic carrier concentration Ni [cm^(-3)].
| T | temperature (K) |
Reimplemented from plask::Material.
Get refractive index Nr (-).
| lam | Wavelength (nm) |
| T | temperature (K) |
| n | injected carriers concentration (1/cm) |
Reimplemented from plask::Material.
Get thermal conductivity in in-plane (lateral) and cross-plane (vertical) direction k [W/(m*K)].
| T | temperature (K) |
| h | layer thickness (µm) |
Reimplemented from plask::Material.
|
overridevirtual |
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 from plask::Material.