PLaSK library

Loading...
Searching...
No Matches
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
plask::electrical::shockley::BetaSolver< GeometryT > Struct Template Reference

Solver performing calculations in 2D Cartesian or Cylindrical space using finite element method. More...

`#include <solvers/electrical/shockley/beta.hpp>`

Inheritance diagram for plask::electrical::shockley::BetaSolver< GeometryT >:
[legend]
Collaboration diagram for plask::electrical::shockley::BetaSolver< GeometryT >:
[legend]

## Public Types
typedef std::conditional< std::is_same< GeometryT, Geometry3D >::value, ElectricalFem3DSolver, ElectricalFem2DSolver< GeometryT > >::type | BaseClass

## Public Member Functions
double | getBeta (size_t n) const
| Return beta.
void | setBeta (size_t n, double beta)
| Set new beta and invalidate the solver.
double | getJs (size_t n) const
| Return js.
void | setJs (size_t n, double js)
| Set new js and invalidate the solver.
void | loadConfiguration (XMLReader &source, Manager &manager) override
| BetaSolver (const std::string &name="")
std::string | getClassName () const override
| ~BetaSolver ()
std::string | getClassName () const
std::string | getClassName () const
std::string | getClassName () const

## Protected Member Functions
Tensor2< double > | activeCond (size_t n, double PLASK_UNUSED(U), double jy, double PLASK_UNUSED(T)) override
| Compute voltage drop of the active region.

## Protected Attributes
std::vector< double > | js
| p-n junction parameter (A/m^2)
std::vector< double > | beta
| p-n junction parameter (1/V)

## Detailed Description

template<typename GeometryT>
struct plask::electrical::shockley::BetaSolver< GeometryT >

Solver performing calculations in 2D Cartesian or Cylindrical space using finite element method.

Definition at line 26 of file beta.hpp.

## Member Typedef Documentation

## ◆ BaseClass

template<typename GeometryT >

typedef std::conditional<std::is_same<GeometryT,Geometry3D>::value,ElectricalFem3DSolver,ElectricalFem2DSolver<GeometryT>>::type plask::electrical::shockley::BetaSolver< GeometryT >::BaseClass

Definition at line 31 of file beta.hpp.

## Constructor & Destructor Documentation

## ◆ BetaSolver()

template<typename Geometry2DType >

plask::electrical::shockley::BetaSolver< Geometry2DType >::BetaSolver | ( | const std::string & | name = `""` | ) |

Definition at line 19 of file beta.cpp.

## ◆ ~BetaSolver()

template<typename Geometry2DType >

plask::electrical::shockley::BetaSolver< Geometry2DType >::~BetaSolver | ( |  | ) |

Definition at line 67 of file beta.cpp.

## Member Function Documentation

## ◆ activeCond()

template<typename GeometryT >

Tensor2< double > plask::electrical::shockley::BetaSolver< GeometryT >::activeCond | ( | size_t | n,
|  | double | PLASK_UNUSEDU,
|  | double | jy,
|  | double | PLASK_UNUSEDT
| ) |  |
| inline override protected

Compute voltage drop of the active region.

Parameters

  n | active region number
  U | junction voltage
  jy | vertical current (kA/cm²)
  T | temperature (K)

Definition at line 43 of file beta.hpp.

## ◆ getBeta()

template<typename GeometryT >

double plask::electrical::shockley::BetaSolver< GeometryT >::getBeta | ( | size_t | n | ) | const
| inline

Return beta.

Definition at line 50 of file beta.hpp.

## ◆ getClassName() [1/4]

std::string plask::electrical::shockley::BetaSolver< Geometry2DCartesian >::getClassName | ( |  | ) | const

Definition at line 70 of file beta.cpp.

## ◆ getClassName() [2/4]

std::string plask::electrical::shockley::BetaSolver< Geometry2DCylindrical >::getClassName | ( |  | ) | const

Definition at line 71 of file beta.cpp.

## ◆ getClassName() [3/4]

std::string plask::electrical::shockley::BetaSolver< Geometry3D >::getClassName | ( |  | ) | const

Definition at line 72 of file beta.cpp.

## ◆ getClassName() [4/4]

template<typename GeometryT >

std::string plask::electrical::shockley::BetaSolver< GeometryT >::getClassName | ( |  | ) | const
| override

## ◆ getJs()

template<typename GeometryT >

double plask::electrical::shockley::BetaSolver< GeometryT >::getJs | ( | size_t | n | ) | const
| inline

Return js.

Definition at line 65 of file beta.hpp.

## ◆ loadConfiguration()

template<typename Geometry2DType >

void plask::electrical::shockley::BetaSolver< Geometry2DType >::loadConfiguration | ( | XMLReader & | source,
|  | Manager & | manager
| ) |  |
| override

Definition at line 26 of file beta.cpp.

## ◆ setBeta()

template<typename GeometryT >

void plask::electrical::shockley::BetaSolver< GeometryT >::setBeta | ( | size_t | n,
|  | double | beta
| ) |  |
| inline

Set new beta and invalidate the solver.

Definition at line 55 of file beta.hpp.

## ◆ setJs()

template<typename GeometryT >

void plask::electrical::shockley::BetaSolver< GeometryT >::setJs | ( | size_t | n,
|  | double | js
| ) |  |
| inline

Set new js and invalidate the solver.

Definition at line 70 of file beta.hpp.

## Member Data Documentation

## ◆ beta

template<typename GeometryT >

std::vector<double> plask::electrical::shockley::BetaSolver< GeometryT >::beta
| protected

p-n junction parameter (1/V)

Definition at line 35 of file beta.hpp.

## ◆ js

template<typename GeometryT >

std::vector<double> plask::electrical::shockley::BetaSolver< GeometryT >::js
| protected

p-n junction parameter (A/m^2)

Definition at line 34 of file beta.hpp.

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

- solvers/electrical/shockley/beta.hpp
- solvers/electrical/shockley/beta.cpp