PLaSK library

Loading...
Searching...
No Matches
Public Types | Public Member Functions | Public Attributes | List of all members
plask::gain::freecarrier::FreeCarrierGainSolver< BaseT >::ActiveRegionInfo Struct Reference

Structure containing information about each active region. More...

`#include <solvers/gain/freecarrier/freecarrier.hpp>`

Collaboration diagram for plask::gain::freecarrier::FreeCarrierGainSolver< BaseT >::ActiveRegionInfo:
[legend]

## Public Types
enum | ConsideredHoles : unsigned { NO_HOLES = 0 , HEAVY_HOLES = 1 , LIGHT_HOLES = 2 , BOTH_HOLES = 3 }

## Public Member Functions
| ActiveRegionInfo (Vec< DIM > origin)
size_t | size () const
| Return number of layers in the active region with surrounding barriers.
shared_ptr< Material > | getLayerMaterial (size_t n) const
| Return material of `n-th` layer.
Primitive< DIM >::Box | getLayerBox (size_t n) const
| Return translated bounding box of `n-th` layer.
bool | isQW (size_t n) const
| Return `true` if given layer is quantum well.
Primitive< DIM >::Box | getBoundingBox () const
| Return bounding box of the whole active region.
bool | contains (const Vec< DIM > &point) const
| Return vertical position of the center of the active region.
bool | inQW (const Vec< DIM > &point) const
| Return `true` if given point is inside quantum well.
double | averageNr (double lam, double T, double conc=0.) const
void | summarize (const FreeCarrierGainSolver< BaseT > *solver)
| Summarize active region, check for appropriateness and compute some values.

## Public Attributes
shared_ptr< StackContainer< DIM > > | layers
| Stack containing all layers in the active region.
Vec< DIM > | origin
| Location of the active region stack origin.
std::vector< shared_ptr< Material > > | materials
| All materials in the active region.
std::vector< double > | thicknesses
| Thicknesses of the layers in the active region.
std::vector< size_t > | wells
| Division of the active region into separate quantum wells.
double | total
| Total active region thickness (µm)
double | totalqw
| Total accepted quantum wells thickness (µm)
double | bottom
| Bottom spacer thickness (µm)
double | top
| Top spacer thickness (µm)
enum plask::gain::freecarrier::FreeCarrierGainSolver::ActiveRegionInfo::ConsideredHoles | holes
| Type of holes existing in the active region.

## Detailed Description

template<typename BaseT>
struct plask::gain::freecarrier::FreeCarrierGainSolver< BaseT >::ActiveRegionInfo

Structure containing information about each active region.

Definition at line 56 of file freecarrier.hpp.

## Member Enumeration Documentation

## ◆ ConsideredHoles

template<typename BaseT >

enum plask::gain::freecarrier::FreeCarrierGainSolver::ActiveRegionInfo::ConsideredHoles : unsigned

Enumerator
NO_HOLES |
HEAVY_HOLES |
LIGHT_HOLES |
BOTH_HOLES |

Definition at line 111 of file freecarrier.hpp.

## Constructor & Destructor Documentation

## ◆ ActiveRegionInfo()

template<typename BaseT >

plask::gain::freecarrier::FreeCarrierGainSolver< BaseT >::ActiveRegionInfo::ActiveRegionInfo | ( | Vec< DIM > | origin | ) |
| inline

Definition at line 60 of file freecarrier.hpp.

## Member Function Documentation

## ◆ averageNr()

template<typename BaseT >

double plask::gain::freecarrier::FreeCarrierGainSolver< BaseT >::ActiveRegionInfo::averageNr | ( | double | lam,
|  | double | T,
|  | double | conc = `0.`
| ) |  | const
| inline

Definition at line 95 of file freecarrier.hpp.

## ◆ contains()

template<typename BaseT >

bool plask::gain::freecarrier::FreeCarrierGainSolver< BaseT >::ActiveRegionInfo::contains | ( | const Vec< DIM > & | point | ) | const
| inline

Return vertical position of the center of the active region.

Return `true` if the point is in the active region

Definition at line 86 of file freecarrier.hpp.

## ◆ getBoundingBox()

template<typename BaseT >

Primitive< DIM >::Box plask::gain::freecarrier::FreeCarrierGainSolver< BaseT >::ActiveRegionInfo::getBoundingBox | ( |  | ) | const
| inline

Return bounding box of the whole active region.

Definition at line 81 of file freecarrier.hpp.

## ◆ getLayerBox()

template<typename BaseT >

Primitive< DIM >::Box plask::gain::freecarrier::FreeCarrierGainSolver< BaseT >::ActiveRegionInfo::getLayerBox | ( | size_t | n | ) | const
| inline

Return translated bounding box of `n-th` layer.

Definition at line 73 of file freecarrier.hpp.

## ◆ getLayerMaterial()

template<typename BaseT >

shared_ptr< Material > plask::gain::freecarrier::FreeCarrierGainSolver< BaseT >::ActiveRegionInfo::getLayerMaterial | ( | size_t | n | ) | const
| inline

Return material of `n-th` layer.

Definition at line 66 of file freecarrier.hpp.

## ◆ inQW()

template<typename BaseT >

bool plask::gain::freecarrier::FreeCarrierGainSolver< BaseT >::ActiveRegionInfo::inQW | ( | const Vec< DIM > & | point | ) | const
| inline

Return `true` if given point is inside quantum well.

Definition at line 89 of file freecarrier.hpp.

## ◆ isQW()

template<typename BaseT >

bool plask::gain::freecarrier::FreeCarrierGainSolver< BaseT >::ActiveRegionInfo::isQW | ( | size_t | n | ) | const
| inline

Return `true` if given layer is quantum well.

Definition at line 78 of file freecarrier.hpp.

## ◆ size()

template<typename BaseT >

size_t plask::gain::freecarrier::FreeCarrierGainSolver< BaseT >::ActiveRegionInfo::size | ( |  | ) | const
| inline

Return number of layers in the active region with surrounding barriers.

Definition at line 63 of file freecarrier.hpp.

## ◆ summarize()

template<typename BaseT >

void plask::gain::freecarrier::FreeCarrierGainSolver< BaseT >::ActiveRegionInfo::summarize | ( | const FreeCarrierGainSolver< BaseT > * | solver | ) |

Summarize active region, check for appropriateness and compute some values.

Parameters

  solver | solver

Definition at line 98 of file freecarrier.cpp.

## Member Data Documentation

## ◆ bottom

template<typename BaseT >

double plask::gain::freecarrier::FreeCarrierGainSolver< BaseT >::ActiveRegionInfo::bottom

Bottom spacer thickness (µm)

Definition at line 108 of file freecarrier.hpp.

## ◆ holes

template<typename BaseT >

enum plask::gain::freecarrier::FreeCarrierGainSolver::ActiveRegionInfo::ConsideredHoles plask::gain::freecarrier::FreeCarrierGainSolver< BaseT >::ActiveRegionInfo::holes

Type of holes existing in the active region.

## ◆ layers

template<typename BaseT >

shared_ptr<StackContainer<DIM> > plask::gain::freecarrier::FreeCarrierGainSolver< BaseT >::ActiveRegionInfo::layers

Stack containing all layers in the active region.

Definition at line 57 of file freecarrier.hpp.

## ◆ materials

template<typename BaseT >

std::vector<shared_ptr<Material> > plask::gain::freecarrier::FreeCarrierGainSolver< BaseT >::ActiveRegionInfo::materials

All materials in the active region.

Definition at line 102 of file freecarrier.hpp.

## ◆ origin

template<typename BaseT >

Vec<DIM> plask::gain::freecarrier::FreeCarrierGainSolver< BaseT >::ActiveRegionInfo::origin

Location of the active region stack origin.

Definition at line 58 of file freecarrier.hpp.

## ◆ thicknesses

template<typename BaseT >

std::vector<double> plask::gain::freecarrier::FreeCarrierGainSolver< BaseT >::ActiveRegionInfo::thicknesses

Thicknesses of the layers in the active region.

Definition at line 103 of file freecarrier.hpp.

## ◆ top

template<typename BaseT >

double plask::gain::freecarrier::FreeCarrierGainSolver< BaseT >::ActiveRegionInfo::top

Top spacer thickness (µm)

Definition at line 109 of file freecarrier.hpp.

## ◆ total

template<typename BaseT >

double plask::gain::freecarrier::FreeCarrierGainSolver< BaseT >::ActiveRegionInfo::total

Total active region thickness (µm)

Definition at line 106 of file freecarrier.hpp.

## ◆ totalqw

template<typename BaseT >

double plask::gain::freecarrier::FreeCarrierGainSolver< BaseT >::ActiveRegionInfo::totalqw

Total accepted quantum wells thickness (µm)

Definition at line 107 of file freecarrier.hpp.

## ◆ wells

template<typename BaseT >

std::vector<size_t> plask::gain::freecarrier::FreeCarrierGainSolver< BaseT >::ActiveRegionInfo::wells

Division of the active region into separate quantum wells.

Definition at line 104 of file freecarrier.hpp.

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

- solvers/gain/freecarrier/freecarrier.hpp
- solvers/gain/freecarrier/freecarrier.cpp