PLaSK library

Loading...
Searching...
No Matches
Classes | Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType > Struct Template Reference

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

`#include <solvers/electrical/diffusion/diffusion2d.hpp>`

Inheritance diagram for plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >:
[legend]
Collaboration diagram for plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >:
[legend]

## Classes
struct | ConcentrationDataImpl
struct | From1DGenerator

## Public Member Functions
std::string | getClassName () const override
| Get name of solver.
double | compute (unsigned loops, bool shb, size_t act)
| Run calculations for specified active region.
double | compute (unsigned loops=0, bool shb=false)
| Run calculations for all active regions.
void | loadConfiguration (XMLReader &source, Manager &manager) override
| Load configuration from given `source`.
void | parseConfiguration (XMLReader &source, Manager &manager)
| Diffusion2DSolver (const std::string &name="")
| ~Diffusion2DSolver ()
void | setMesh (shared_ptr< MeshD< 1 > > mesh)
void | setMesh (shared_ptr< MeshGeneratorD< 1 > > generator)
size_t | activeRegionsCount () const
double | get_burning_integral_for_mode (size_t mode) const
double | get_burning_integral () const
std::string | getClassName () const
| Get name of solver.
std::string | getClassName () const
| Get name of solver.
Public Member Functions inherited from plask::FemSolverWithMesh< Geometry2DType, RectangularMesh< 2 > >
| FemSolverWithMesh (const std::string &name="")
bool | parseFemConfiguration (XMLReader &reader, Manager &manager)
FemMatrix * | getMatrix ()
FemMatrix * | getMatrix ()
Public Member Functions inherited from plask::SolverWithMesh< SpaceT, MeshT >
| SolverWithMesh (const std::string &name="")
| ~SolverWithMesh ()
void | loadConfiguration (XMLReader &source, Manager &manager) override
| Load configuration from given `source`.
void | parseStandardConfiguration (XMLReader &source, Manager &manager, const std::string &expected_msg="solver configuration element")
virtual void | onMeshChange (const typename MeshT::Event &PLASK_UNUSED(evt))
| This method is called just after the mesh has been changed.
void | onGeometryChange (const Geometry::Event &PLASK_UNUSED(evt)) override
| This method is called when the geometry is changed.
MeshT & | meshRef () const
| Get current module mesh.
shared_ptr< MeshT > | getMesh () const
| Get current solver mesh.
void | setMesh (const shared_ptr< MeshT > &mesh)
| Set new mesh for the solver.
void | setMesh (shared_ptr< MeshGeneratorD< MeshT::DIM > > generator)
| Set new mesh got from generator.
Public Member Functions inherited from plask::SolverOver< SpaceT >
| SolverOver (const std::string &name="")
| ~SolverOver ()
void | parseStandardConfiguration (XMLReader &source, Manager &manager, const std::string &expected_msg="solver configuration element")
virtual void | onGeometryChange (const Geometry::Event &)
| This method is called when the geometry is changed.
shared_ptr< SpaceT > | getGeometry () const
| Get current solver geometry space.
void | setGeometry (const shared_ptr< SpaceT > &geometry)
| Set new geometry for the solver.
Public Member Functions inherited from plask::Solver
bool | initCalculation ()
| This should be called on beginning of each calculation method to ensure that solver will be initialized.
| Solver (const std::string &name="")
| Construct uninitialized solver.
virtual | ~Solver ()
| Virtual destructor (for subclassing). Do nothing.
void | parseStandardConfiguration (XMLReader &source, Manager &manager, const std::string &expected_msg="solver configuration element")
| Load standard configuration (geometry, mesh) tags from `source`.
bool | isInitialized ()
| Check if solver is already initialized.
void | invalidate ()
| This method should be and is called if something important was changed: calculation space, mesh, etc.
std::string | getId () const
| Get solver id.
std::string | getName () const
virtual std::string | getClassDescription () const
| Get a description of this solver.
template<typename ArgT = double, typename ValT = double>
DataLog< ArgT, ValT > | dataLog (const std::string &chart_name, const std::string &axis_arg_name, const std::string &axis_val_name)
template<typename ArgT = double, typename ValT = double>
DataLog< ArgT, ValT > | dataLog (const std::string &axis_arg_name, const std::string &axis_val_name)
template<typename ... Args>
void | writelog (LogLevel level, std::string msg, Args &&... params) const
| Log a message for this solver.

## Public Attributes
double | maxerr
| Maximum relative current density correction accepted as convergence.
BoundaryConditions< RectangularMesh< 2 >::Boundary, double > | voltage_boundary
| Boundary condition.
ReceiverFor< CurrentDensity, Geometry2DType > | inCurrentDensity
ReceiverFor< Temperature, Geometry2DType > | inTemperature
ReceiverFor< Gain, Geometry2DType > | inGain
ReceiverFor< ModeWavelength > | inWavelength
ReceiverFor< ModeLightE, Geometry2DType > | inLightE
ProviderFor< CarriersConcentration, Geometry2DType >::Delegate | outCarriersConcentration
Public Attributes inherited from plask::FemSolverWithMesh< Geometry2DType, RectangularMesh< 2 > >
FemMatrixAlgorithm | algorithm
| Factorization algorithm to use.
IterativeMatrixParams | iter_params
| Parameters of iterative solver.

## Protected Member Functions
void | setLocalMatrix (const double R, const double L, const double L2, const double L3, const double L4, const double L5, const double L6, const double A, const double B, const double C, const double D, const double *U, const double *J, double &K00, double &K01, double &K02, double &K03, double &K11, double &K12, double &K13, double &K22, double &K23, double &K33, double &F0, double &F1, double &F2, double &F3)
| Make local stiffness matrix and load vector.
void | addLocalBurningMatrix (const double R, const double L, const double L2, const double L3, const double *P, const double *g, const double *dg, const double ug, double &K00, double &K01, double &K02, double &K03, double &K11, double &K12, double &K13, double &K22, double &K23, double &K33, double &F0, double &F1, double &F2, double &F3)
| Add local stiffness matrix and load vector for SHB.
template<typename T >
T | integrateLinear (const double R, const double L, const T *P)
| Integrate linearly changing function over an element.
void | onInitialize () override
| Initialize the solver.
void | onInvalidate () override
| Invalidate the data.
void | setupActiveRegion2Ds ()
| Get info on active region.
size_t | isActive (const Vec< 2 > &point) const
| Return `true` if the specified point is at junction.
size_t | isActive (const RectangularMesh2D::Element &element) const
| Return `true` if the specified element is a junction.
const LazyData< double > | getConcentration (CarriersConcentration::EnumType what, shared_ptr< const MeshD< 2 > > dest_mesh, InterpolationMethod interpolation=INTERPOLATION_DEFAULT) const
void | setLocalMatrix (const double, const double L, const double L2, const double L3, const double L4, const double L5, const double L6, const double A, const double B, const double C, const double D, const double *U, const double *J, double &K00, double &K01, double &K02, double &K03, double &K11, double &K12, double &K13, double &K22, double &K23, double &K33, double &F0, double &F1, double &F2, double &F3)
void | setLocalMatrix (const double R, const double L, const double L2, const double L3, const double L4, const double L5, const double L6, const double A, const double B, const double C, const double D, const double *U, const double *J, double &K00, double &K01, double &K02, double &K03, double &K11, double &K12, double &K13, double &K22, double &K23, double &K33, double &F0, double &F1, double &F2, double &F3)
void | addLocalBurningMatrix (const double, const double L, const double L2, const double L3, const double *P, const double *g, const double *dg, const double ug, double &K00, double &K01, double &K02, double &K03, double &K11, double &K12, double &K13, double &K22, double &K23, double &K33, double &F0, double &F1, double &F2, double &F3)
void | addLocalBurningMatrix (const double R, const double L, const double L2, const double L3, const double *P, const double *g, const double *dg, const double ug, double &K00, double &K01, double &K02, double &K03, double &K11, double &K12, double &K13, double &K22, double &K23, double &K33, double &F0, double &F1, double &F2, double &F3)
T | integrateLinear (const double R, const double L, const T *P)
T | integrateLinear (const double R, const double L, const T *P)
Protected Member Functions inherited from plask::SolverOver< SpaceT >
template<typename Boundary , typename ConditionT >
void | readBoundaryConditions (Manager &manager, XMLReader &reader, BoundaryConditions< Boundary, ConditionT > &dest)
| Read boundary conditions using information about the geometry of this solver.

## Protected Attributes
int | loopno
| Data for active region.
double | toterr
| Maximum estimated error during all iterations.
std::map< size_t, ActiveRegion2D > | active
| Active regions information.
Protected Attributes inherited from plask::SolverWithMesh< SpaceT, MeshT >
shared_ptr< MeshT > | mesh
| Mesh over which the calculations are performed.
boost::signals2::connection | mesh_signal_connection
| Connection of mesh to onMeshChange method, see http://www.boost.org/doc/libs/1_55_0/doc/html/signals2/tutorial.html#idp204830936.
Protected Attributes inherited from plask::SolverOver< SpaceT >
shared_ptr< SpaceT > | geometry
| Space in which the calculations are performed.
Protected Attributes inherited from plask::Solver
bool | initialized
| `true` only if solver is initialized

## Additional Inherited Members
Public Types inherited from plask::SolverWithMesh< SpaceT, MeshT >
typedef MeshT | MeshType
| Type of the mesh for this solver.
Public Types inherited from plask::SolverOver< SpaceT >
typedef SpaceT | SpaceType
| of the space for this solver

## Detailed Description

template<typename Geometry2DType>
struct plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >

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

Definition at line 111 of file diffusion2d.hpp.

## Constructor & Destructor Documentation

## ◆ Diffusion2DSolver()

template<typename Geometry2DType >

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

Definition at line 24 of file diffusion2d.cpp.

## ◆ ~Diffusion2DSolver()

template<typename Geometry2DType >

plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::~Diffusion2DSolver | ( |  | ) |

Definition at line 75 of file diffusion2d.cpp.

## Member Function Documentation

## ◆ activeRegionsCount()

template<typename Geometry2DType >

size_t plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::activeRegionsCount | ( |  | ) | const
| inline

Definition at line 305 of file diffusion2d.hpp.

## ◆ addLocalBurningMatrix() [1/3]

void plask::electrical::diffusion::Diffusion2DSolver< Geometry2DCylindrical >::addLocalBurningMatrix | ( | const double | R,
|  | const double | L,
|  | const double | L2,
|  | const double | L3,
|  | const double * | P,
|  | const double * | g,
|  | const double * | dg,
|  | const double | ug,
|  | double & | K00,
|  | double & | K01,
|  | double & | K02,
|  | double & | K03,
|  | double & | K11,
|  | double & | K12,
|  | double & | K13,
|  | double & | K22,
|  | double & | K23,
|  | double & | K33,
|  | double & | F0,
|  | double & | F1,
|  | double & | F2,
|  | double & | F3
| ) |  |
| inline protected

Definition at line 268 of file diffusion2d.cpp.

## ◆ addLocalBurningMatrix() [2/3]

template<typename Geometry2DType >

void plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::addLocalBurningMatrix | ( | const double | R,
|  | const double | L,
|  | const double | L2,
|  | const double | L3,
|  | const double * | P,
|  | const double * | g,
|  | const double * | dg,
|  | const double | ug,
|  | double & | K00,
|  | double & | K01,
|  | double & | K02,
|  | double & | K03,
|  | double & | K11,
|  | double & | K12,
|  | double & | K13,
|  | double & | K22,
|  | double & | K23,
|  | double & | K33,
|  | double & | F0,
|  | double & | F1,
|  | double & | F2,
|  | double & | F3
| ) |  |
| inline protected

Add local stiffness matrix and load vector for SHB.

## ◆ addLocalBurningMatrix() [3/3]

void plask::electrical::diffusion::Diffusion2DSolver< Geometry2DCartesian >::addLocalBurningMatrix | ( | const double | ,
|  | const double | L,
|  | const double | L2,
|  | const double | L3,
|  | const double * | P,
|  | const double * | g,
|  | const double * | dg,
|  | const double | ug,
|  | double & | K00,
|  | double & | K01,
|  | double & | K02,
|  | double & | K03,
|  | double & | K11,
|  | double & | K12,
|  | double & | K13,
|  | double & | K22,
|  | double & | K23,
|  | double & | K33,
|  | double & | F0,
|  | double & | F1,
|  | double & | F2,
|  | double & | F3
| ) |  |
| inline protected

Definition at line 244 of file diffusion2d.cpp.

## ◆ compute() [1/2]

template<typename Geometry2DType >

double plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::compute | ( | unsigned | loops,
|  | bool | shb,
|  | size_t | act
| ) |  |

Run calculations for specified active region.

Parameters

  loops | maximum number of loops to run
  act | active region number to calculate
  shb | `true` if spatial hole burning should be taken into account

Returns
  max correction of potential against the last call

Definition at line 306 of file diffusion2d.cpp.

## ◆ compute() [2/2]

template<typename Geometry2DType >

double plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::compute | ( | unsigned | loops = `0`,
|  | bool | shb = `false`
| ) |  |
| inline

Run calculations for all active regions.

Parameters

  loops | maximum number of loops to run
  shb | `true` if spatial hole burning should be taken into account

Returns
  max correction of potential against the last call

Definition at line 277 of file diffusion2d.hpp.

## ◆ get_burning_integral()

template<typename Geometry2DType >

double plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::get_burning_integral | ( |  | ) | const

Definition at line 510 of file diffusion2d.cpp.

## ◆ get_burning_integral_for_mode()

template<typename Geometry2DType >

double plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::get_burning_integral_for_mode | ( | size_t | mode | ) | const

Definition at line 498 of file diffusion2d.cpp.

## ◆ getClassName() [1/3]

std::string plask::electrical::diffusion::Diffusion2DSolver< Geometry2DCartesian >::getClassName | ( |  | ) | const
| virtual

Get name of solver.

Returns
  name of this solver

Implements plask::Solver.

Definition at line 599 of file diffusion2d.cpp.

## ◆ getClassName() [2/3]

std::string plask::electrical::diffusion::Diffusion2DSolver< Geometry2DCylindrical >::getClassName | ( |  | ) | const
| virtual

Get name of solver.

Returns
  name of this solver

Implements plask::Solver.

Definition at line 600 of file diffusion2d.cpp.

## ◆ getClassName() [3/3]

template<typename Geometry2DType >

std::string plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::getClassName | ( |  | ) | const
| override virtual

Get name of solver.

Returns
  name of this solver

Implements plask::Solver.

## ◆ getConcentration()

template<typename Geometry2DType >

const LazyData< double > plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::getConcentration | ( | CarriersConcentration::EnumType | what,
|  | shared_ptr< const MeshD< 2 > > | dest_mesh,
|  | InterpolationMethod | interpolation = `INTERPOLATION_DEFAULT`
| ) |  | const
| protected

Definition at line 590 of file diffusion2d.cpp.

## ◆ integrateLinear() [1/3]

T plask::electrical::diffusion::Diffusion2DSolver< Geometry2DCartesian >::integrateLinear | ( | const double | R,
|  | const double | L,
|  | const T * | P
| ) |  |
| inline protected

Definition at line 294 of file diffusion2d.cpp.

## ◆ integrateLinear() [2/3]

T plask::electrical::diffusion::Diffusion2DSolver< Geometry2DCylindrical >::integrateLinear | ( | const double | R,
|  | const double | L,
|  | const T * | P
| ) |  |
| inline protected

Definition at line 302 of file diffusion2d.cpp.

## ◆ integrateLinear() [3/3]

template<typename Geometry2DType >
template<typename T >

T plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::integrateLinear | ( | const double | R,
|  | const double | L,
|  | const T * | P
| ) |  |
| inline protected

Integrate linearly changing function over an element.

## ◆ isActive() [1/2]

template<typename Geometry2DType >

size_t plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::isActive | ( | const RectangularMesh2D::Element & | element | ) | const
| inline protected

Return `true` if the specified element is a junction.

Definition at line 226 of file diffusion2d.hpp.

## ◆ isActive() [2/2]

template<typename Geometry2DType >

size_t plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::isActive | ( | const Vec< 2 > & | point | ) | const
| inline protected

Return `true` if the specified point is at junction.

Parameters

  point | point to test

Returns
  number of active region + 1 (0 for none)

Definition at line 200 of file diffusion2d.hpp.

## ◆ loadConfiguration()

template<typename Geometry2DType >

void plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::loadConfiguration | ( | XMLReader & | source,
|  | Manager & | manager
| ) |  |
| override virtual

Load configuration from given `source`.

XML reader (`source`) point to opening of `this` solver tag and after return from this method should point to this solver closing tag.

Parameters

  source | source of configuration
  manager | manager from which information about geometry, meshes, materials, and so on can be get if needed

Reimplemented from plask::Solver.

Definition at line 32 of file diffusion2d.cpp.

## ◆ onInitialize()

template<typename Geometry2DType >

void plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::onInitialize | ( |  | ) |
| override protected virtual

Initialize the solver.

Reimplemented from plask::Solver.

Definition at line 179 of file diffusion2d.cpp.

## ◆ onInvalidate()

template<typename Geometry2DType >

void plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::onInvalidate | ( |  | ) |
| override protected virtual

Invalidate the data.

Reimplemented from plask::Solver.

Definition at line 190 of file diffusion2d.cpp.

## ◆ parseConfiguration()

template<typename Geometry2DType >

void plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::parseConfiguration | ( | XMLReader & | source,
|  | Manager & | manager
| ) |  |

Definition at line 36 of file diffusion2d.cpp.

## ◆ setLocalMatrix() [1/3]

void plask::electrical::diffusion::Diffusion2DSolver< Geometry2DCylindrical >::setLocalMatrix | ( | const double | R,
|  | const double | L,
|  | const double | L2,
|  | const double | L3,
|  | const double | L4,
|  | const double | L5,
|  | const double | L6,
|  | const double | A,
|  | const double | B,
|  | const double | C,
|  | const double | D,
|  | const double * | U,
|  | const double * | J,
|  | double & | K00,
|  | double & | K01,
|  | double & | K02,
|  | double & | K03,
|  | double & | K11,
|  | double & | K12,
|  | double & | K13,
|  | double & | K22,
|  | double & | K23,
|  | double & | K33,
|  | double & | F0,
|  | double & | F1,
|  | double & | F2,
|  | double & | F3
| ) |  |
| inline protected

Definition at line 219 of file diffusion2d.cpp.

## ◆ setLocalMatrix() [2/3]

template<typename Geometry2DType >

void plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::setLocalMatrix | ( | const double | R,
|  | const double | L,
|  | const double | L2,
|  | const double | L3,
|  | const double | L4,
|  | const double | L5,
|  | const double | L6,
|  | const double | A,
|  | const double | B,
|  | const double | C,
|  | const double | D,
|  | const double * | U,
|  | const double * | J,
|  | double & | K00,
|  | double & | K01,
|  | double & | K02,
|  | double & | K03,
|  | double & | K11,
|  | double & | K12,
|  | double & | K13,
|  | double & | K22,
|  | double & | K23,
|  | double & | K33,
|  | double & | F0,
|  | double & | F1,
|  | double & | F2,
|  | double & | F3
| ) |  |
| inline protected

Make local stiffness matrix and load vector.

## ◆ setLocalMatrix() [3/3]

void plask::electrical::diffusion::Diffusion2DSolver< Geometry2DCartesian >::setLocalMatrix | ( | const double | ,
|  | const double | L,
|  | const double | L2,
|  | const double | L3,
|  | const double | L4,
|  | const double | L5,
|  | const double | L6,
|  | const double | A,
|  | const double | B,
|  | const double | C,
|  | const double | D,
|  | const double * | U,
|  | const double * | J,
|  | double & | K00,
|  | double & | K01,
|  | double & | K02,
|  | double & | K03,
|  | double & | K11,
|  | double & | K12,
|  | double & | K13,
|  | double & | K22,
|  | double & | K23,
|  | double & | K33,
|  | double & | F0,
|  | double & | F1,
|  | double & | F2,
|  | double & | F3
| ) |  |
| inline protected

Definition at line 194 of file diffusion2d.cpp.

## ◆ setMesh() [1/2]

template<typename Geometry2DType >

void plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::setMesh | ( | shared_ptr< MeshD< 1 > > | mesh | ) |
| inline

Definition at line 294 of file diffusion2d.hpp.

## ◆ setMesh() [2/2]

template<typename Geometry2DType >

void plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::setMesh | ( | shared_ptr< MeshGeneratorD< 1 > > | generator | ) |
| inline

Definition at line 303 of file diffusion2d.hpp.

## ◆ setupActiveRegion2Ds()

template<typename Geometry2DType >

void plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::setupActiveRegion2Ds | ( |  | ) |
| protected

Get info on active region.

Definition at line 77 of file diffusion2d.cpp.

## Member Data Documentation

## ◆ active

template<typename Geometry2DType >

std::map<size_t, ActiveRegion2D> plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::active
| protected

Active regions information.

Definition at line 127 of file diffusion2d.hpp.

## ◆ inCurrentDensity

template<typename Geometry2DType >

ReceiverFor<CurrentDensity, Geometry2DType> plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::inCurrentDensity

Definition at line 248 of file diffusion2d.hpp.

## ◆ inGain

template<typename Geometry2DType >

ReceiverFor<Gain, Geometry2DType> plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::inGain

Definition at line 252 of file diffusion2d.hpp.

## ◆ inLightE

template<typename Geometry2DType >

ReceiverFor<ModeLightE, Geometry2DType> plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::inLightE

Definition at line 256 of file diffusion2d.hpp.

## ◆ inTemperature

template<typename Geometry2DType >

ReceiverFor<Temperature, Geometry2DType> plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::inTemperature

Definition at line 250 of file diffusion2d.hpp.

## ◆ inWavelength

template<typename Geometry2DType >

ReceiverFor<ModeWavelength> plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::inWavelength

Definition at line 254 of file diffusion2d.hpp.

## ◆ loopno

template<typename Geometry2DType >

int plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::loopno
| protected

Data for active region.

Number of completed loops

Definition at line 114 of file diffusion2d.hpp.

## ◆ maxerr

template<typename Geometry2DType >

double plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::maxerr

Maximum relative current density correction accepted as convergence.

Definition at line 243 of file diffusion2d.hpp.

## ◆ outCarriersConcentration

template<typename Geometry2DType >

ProviderFor<CarriersConcentration,Geometry2DType>::Delegate plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::outCarriersConcentration

Definition at line 258 of file diffusion2d.hpp.

## ◆ toterr

template<typename Geometry2DType >

double plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::toterr
| protected

Maximum estimated error during all iterations.

Definition at line 115 of file diffusion2d.hpp.

## ◆ voltage_boundary

template<typename Geometry2DType >

BoundaryConditions<RectangularMesh<2>::Boundary, double> plask::electrical::diffusion::Diffusion2DSolver< Geometry2DType >::voltage_boundary

Boundary condition.

Definition at line 246 of file diffusion2d.hpp.

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

- solvers/electrical/diffusion/diffusion2d.hpp
- solvers/electrical/diffusion/diffusion2d.cpp