PLaSK library

Loading...
Searching...
No Matches
Classes | Public Member Functions | Public Attributes | List of all members
plask::solvers::FermiNew::DataBase< GeometryT, T > Struct Template Referenceabstract

Base for lazy data implementation. More...

Inheritance diagram for plask::solvers::FermiNew::DataBase< GeometryT, T >:
[legend]
Collaboration diagram for plask::solvers::FermiNew::DataBase< GeometryT, T >:
[legend]

## Classes
struct | AveragedData

## Public Member Functions
void | setupFromAxis (const shared_ptr< MeshAxis > &axis)
| DataBase (FermiNewGainSolver< GeometryT > *solver, const shared_ptr< const MeshD< 2 > > &dst_mesh)
void | compute (double wavelength, InterpolationMethod interp)
virtual T | getValue (double wavelength, double temp, double conc, const typename FermiNewGainSolver< GeometryT >::ActiveRegionInfo &region, const Levels &levels)=0
size_t | size () const override
| Get the number of elements in this vector.
T | at (size_t i) const override
Public Member Functions inherited from plask::LazyDataImpl< T >
virtual | ~LazyDataImpl ()
virtual T | at (std::size_t index) const =0
| Get index-th value from vector.
virtual DataVector< const T > | getAll () const
| Get all values as non-lazy vector.
virtual DataVector< T > | claim () const

## Public Attributes
FermiNewGainSolver< GeometryT > * | solver
| Solver.
std::vector< shared_ptr< MeshAxis > > | regpoints
| Points in each active region.
std::vector< LazyData< T > > | data
| Computed interpolations in each active region.
shared_ptr< const MeshD< 2 > > | dest_mesh
| Destination mesh.

## Additional Inherited Members
Public Types inherited from plask::LazyDataImpl< T >
typedef T | CellType

## Detailed Description

template<typename GeometryT, typename T>
struct plask::solvers::FermiNew::DataBase< GeometryT, T >

Base for lazy data implementation.

Definition at line 688 of file ferminew.cpp.

## Constructor & Destructor Documentation

## ◆ DataBase()

template<typename GeometryT , typename T >

plask::solvers::FermiNew::DataBase< GeometryT, T >::DataBase | ( | FermiNewGainSolver< GeometryT > * | solver,
|  | const shared_ptr< const MeshD< 2 > > & | dst_mesh
| ) |  |
| inline

Definition at line 746 of file ferminew.cpp.

## Member Function Documentation

## ◆ at()

template<typename GeometryT , typename T >

T plask::solvers::FermiNew::DataBase< GeometryT, T >::at | ( | size_t | i | ) | const
| inline override

Definition at line 819 of file ferminew.cpp.

## ◆ compute()

template<typename GeometryT , typename T >

void plask::solvers::FermiNew::DataBase< GeometryT, T >::compute | ( | double | wavelength,
|  | InterpolationMethod | interp
| ) |  |
| inline

Definition at line 769 of file ferminew.cpp.

## ◆ getValue()

template<typename GeometryT , typename T >

virtual T plask::solvers::FermiNew::DataBase< GeometryT, T >::getValue | ( | double | wavelength,
|  | double | temp,
|  | double | conc,
|  | const typename FermiNewGainSolver< GeometryT >::ActiveRegionInfo & | region,
|  | const Levels & | levels
| ) |  |
| pure virtual

Implemented in plask::solvers::FermiNew::GainData< GeometryT >, plask::solvers::FermiNew::DgDnData< GeometryT >, and plask::solvers::FermiNew::LuminescenceData< GeometryT >.

## ◆ setupFromAxis()

template<typename GeometryT , typename T >

void plask::solvers::FermiNew::DataBase< GeometryT, T >::setupFromAxis | ( | const shared_ptr< MeshAxis > & | axis | ) |
| inline

Definition at line 729 of file ferminew.cpp.

## ◆ size()

template<typename GeometryT , typename T >

size_t plask::solvers::FermiNew::DataBase< GeometryT, T >::size | ( |  | ) | const
| inline override virtual

Get the number of elements in this vector.

Returns
  the number of elements in this vector

Implements plask::LazyDataImpl< T >.

Definition at line 817 of file ferminew.cpp.

## Member Data Documentation

## ◆ data

template<typename GeometryT , typename T >

std::vector<LazyData<T> > plask::solvers::FermiNew::DataBase< GeometryT, T >::data

Computed interpolations in each active region.

Definition at line 726 of file ferminew.cpp.

## ◆ dest_mesh

template<typename GeometryT , typename T >

shared_ptr<const MeshD<2> > plask::solvers::FermiNew::DataBase< GeometryT, T >::dest_mesh

Destination mesh.

Definition at line 727 of file ferminew.cpp.

## ◆ regpoints

template<typename GeometryT , typename T >

std::vector<shared_ptr<MeshAxis> > plask::solvers::FermiNew::DataBase< GeometryT, T >::regpoints

Points in each active region.

Definition at line 725 of file ferminew.cpp.

## ◆ solver

template<typename GeometryT , typename T >

FermiNewGainSolver<GeometryT>* plask::solvers::FermiNew::DataBase< GeometryT, T >::solver

Solver.

Definition at line 724 of file ferminew.cpp.

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

- solvers/gain/wasiak/ferminew.cpp