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

Collect meta-information about material. More...

#include <plask/material/info.hpp>

Collaboration diagram for plask::MaterialInfo:
[legend]

Classes

class  DB
 Material info database. More...
 
struct  Link
 Represent link ("see also") to property in class. More...
 
class  PropertyInfo
 Collect information about material property. More...
 
class  Register
 Helper which allow to add (do this in constructor) information about material to default material meta-info database. More...
 

Public Types

enum  PROPERTY_NAME {
  kind , lattC , Eg , CB ,
  VB , Dso , Mso , Me ,
  Mhh , Mlh , Mh , ac ,
  av , b , d , c11 ,
  c12 , c44 , eps , Eps ,
  chi , Na , Nd , Ni ,
  Nf , EactD , EactA , mob ,
  cond , condtype , A , B ,
  C , D , thermk , dens ,
  cp , nr , absp , Nr ,
  mobe , mobh , taue , tauh ,
  Ce , Ch , e13 , e15 ,
  e33 , c13 , c33 , Psp ,
  y1 , y2 , y3
}
 
enum  ARGUMENT_NAME {
  T , e , lam , n ,
  h , doping , point
}
 Names of arguments for which we need to give the ranges. More...
 
typedef std::map< PROPERTY_NAME, PropertyInfo >::iterator iterator
 Iterator over properties.
 
typedef std::map< PROPERTY_NAME, PropertyInfo >::const_iterator const_iterator
 Const iterator over properties.
 

Public Member Functions

void override (const MaterialInfo &to_override)
 Override all information about this by information from to_override.
 
PropertyInfooperator() (PROPERTY_NAME property)
 Get property info object (add new, empty one if there is no information about property).
 
plask::optional< PropertyInfogetPropertyInfo (PROPERTY_NAME property) const
 Get info about the property of this.
 
iterator begin ()
 Get begin iterator over properties.
 
const_iterator begin () const
 Get const begin iterator over properties.
 
iterator end ()
 Get end iterator over properties.
 
const_iterator end () const
 Get const end iterator over properties.
 

Static Public Member Functions

static PROPERTY_NAME parsePropertyName (const std::string &name)
 
static ARGUMENT_NAME parseArgumentName (const std::string &name)
 

Public Attributes

std::string parent
 Name of parent class.
 

Static Public Attributes

static const charPROPERTY_NAME_STRING [55]
 Names of the properties.
 
static const charARGUMENT_NAME_STRING [7]
 Names of the arguments.
 

Detailed Description

Collect meta-information about material.

It also namespace for all class connected with collecting meta-information about materials, like material information database, etc.

Definition at line 39 of file info.hpp.

Member Typedef Documentation

◆ const_iterator

Const iterator over properties.

Definition at line 297 of file info.hpp.

◆ iterator

Iterator over properties.

Definition at line 294 of file info.hpp.

Member Enumeration Documentation

◆ ARGUMENT_NAME

Names of arguments for which we need to give the ranges.

Enumerator

temperature

strain

lam 

wavelength

carriers concentration

thickness

doping 

doping

point 

point

Definition at line 105 of file info.hpp.

◆ PROPERTY_NAME

Enumerator
kind 

material kind

lattC 

lattice constant

Eg 

energy gap

CB 

conduction band offset

VB 

valence band offset

Dso 

split-off energy

Mso 

split-off mass

Me 

electron effective mass

Mhh 

heavy-hole effective mass

Mlh 

light-hole effective mass

Mh 

hole effective mass

ac 

hydrostatic deformation potential for the conduction band

av 

hydrostatic deformation potential for the valence band

shear deformation potential

shear deformation potential

c11 

elastic constant

c12 

elastic constant

c44 

elastic constant

eps 

dielectric constant

Eps 

complex permittivity index tensor

chi 

electron affinity

Na 

acceptor concentration

Nd 

donor concentration

Ni 

intrinsic carrier concentration

Nf 

free carrier concentration

EactD 

donor ionisation energy

EactA 

acceptor ionisation energy

mob 

mobility

cond 

electrical conductivity

condtype 

conductivity type

monomolecular recombination coefficient

radiative recombination coefficient

Auger recombination coefficient.

ambipolar diffusion coefficient

thermk 

thermal conductivity

dens 

density

cp 

specific heat at constant pressure

nr 

refractive index

absp 

absorption coefficient alpha

Nr 

complex refractive index

mobe 

electron mobility

mobh 

hole mobility

taue 

monomolecular electrons lifetime (ns)

tauh 

monomolecular holes lifetime (ns)

Ce 

Auger recombination coefficient for electrons.

Ch 

Auger recombination coefficient for holes.

e13 

piezoelectric constant

e15 

piezoelectric constant

e33 

piezoelectric constant

c13 

elastic constant

c33 

elastic constant

Psp 

spontaneous polarization

y1 

Luttinger parameter 1.

y2 

Luttinger parameter 2.

y3 

Luttinger parameter 3.

Definition at line 41 of file info.hpp.

Member Function Documentation

◆ begin() [1/2]

iterator plask::MaterialInfo::begin ( )
inline

Get begin iterator over properties.

Returns
begin iterator over properties

Definition at line 303 of file info.hpp.

◆ begin() [2/2]

const_iterator plask::MaterialInfo::begin ( ) const
inline

Get const begin iterator over properties.

Returns
const begin iterator over properties

Definition at line 309 of file info.hpp.

◆ end() [1/2]

iterator plask::MaterialInfo::end ( )
inline

Get end iterator over properties.

Returns
end iterator over properties

Definition at line 315 of file info.hpp.

◆ end() [2/2]

const_iterator plask::MaterialInfo::end ( ) const
inline

Get const end iterator over properties.

Returns
const end iterator over properties

Definition at line 321 of file info.hpp.

◆ getPropertyInfo()

plask::optional< MaterialInfo::PropertyInfo > plask::MaterialInfo::getPropertyInfo ( MaterialInfo::PROPERTY_NAME  property) const

Get info about the property of this.

Parameters
property
Returns
info about the property of this

Definition at line 130 of file info.cpp.

◆ operator()()

MaterialInfo::PropertyInfo & plask::MaterialInfo::operator() ( PROPERTY_NAME  property)

Get property info object (add new, empty one if there is no information about property).

Parameters
property

Definition at line 126 of file info.cpp.

◆ override()

void plask::MaterialInfo::override ( const MaterialInfo to_override)

Override all information about this by information from to_override.

It can be used to override the information in this by its subclass information.

Parameters
to_override

Definition at line 120 of file info.cpp.

◆ parseArgumentName()

MaterialInfo::ARGUMENT_NAME plask::MaterialInfo::parseArgumentName ( const std::string &  name)
static

Definition at line 98 of file info.cpp.

◆ parsePropertyName()

MaterialInfo::PROPERTY_NAME plask::MaterialInfo::parsePropertyName ( const std::string &  name)
static

Definition at line 91 of file info.cpp.

Member Data Documentation

◆ ARGUMENT_NAME_STRING

const char * plask::MaterialInfo::ARGUMENT_NAME_STRING
static
Initial value:
= {
"T",
"e",
"lam",
"n",
"h",
"doping",
"point"
}

Names of the arguments.

Names of arguments for which we need to give the ranges.

Definition at line 116 of file info.hpp.

◆ parent

std::string plask::MaterialInfo::parent

Name of parent class.

Definition at line 264 of file info.hpp.

◆ PROPERTY_NAME_STRING

const char * plask::MaterialInfo::PROPERTY_NAME_STRING
static

Names of the properties.

Definition at line 100 of file info.hpp.


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