PLaSK library

Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
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`.
PropertyInfo & | operator() (PROPERTY_NAME property)
| Get property info object (add new, empty one if there is no information about property).
plask::optional< PropertyInfo > | getPropertyInfo (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 char * | PROPERTY_NAME_STRING [55]
| Names of the properties.
static const char * | ARGUMENT_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

typedef std::map<PROPERTY_NAME,PropertyInfo>::const_iterator plask::MaterialInfo::const_iterator

Const iterator over properties.

Definition at line 297 of file info.hpp.

## ◆ iterator

typedef std::map<PROPERTY_NAME,PropertyInfo>::iterator plask::MaterialInfo::iterator

Iterator over properties.

Definition at line 294 of file info.hpp.

## Member Enumeration Documentation

## ◆ ARGUMENT_NAME

enum plask::MaterialInfo::ARGUMENT_NAME

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

Enumerator
T | temperature
e | strain
lam | wavelength
n | carriers concentration
h | thickness
doping | doping
point | point

Definition at line 105 of file info.hpp.

## ◆ PROPERTY_NAME

enum plask::MaterialInfo::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
b | shear deformation potential
d | 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
A | monomolecular recombination coefficient
B | radiative recombination coefficient
C | Auger recombination coefficient.
D | 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:

- plask/material/info.hpp
- plask/material/info.cpp