PLaSK library

Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
optical::effective::EffectiveIndex2D::FieldDataInefficient< FieldT > Struct Template Reference
Inheritance diagram for optical::effective::EffectiveIndex2D::FieldDataInefficient< FieldT >:
[legend]
Collaboration diagram for optical::effective::EffectiveIndex2D::FieldDataInefficient< FieldT >:
[legend]

## Public Member Functions
| FieldDataInefficient (EffectiveIndex2D *solver, std::size_t num, const shared_ptr< const MeshD< 2 > > &dst_mesh)
size_t | size () const override
| Get the number of elements in this vector.
FieldT | at (size_t idx) const override
Public Member Functions inherited from optical::effective::EffectiveIndex2D::FieldDataBase< FieldT >
| FieldDataBase (EffectiveIndex2D *solver, std::size_t num)
Public Member Functions inherited from plask::LazyDataImpl< FieldT >
virtual | ~LazyDataImpl ()
virtual FieldT | at (std::size_t index) const=0
| Get index-th value from vector.
virtual DataVector< const FieldT > | getAll () const
| Get all values as non-lazy vector.
virtual DataVector< FieldT > | claim () const

## Public Attributes
shared_ptr< const MeshD< 2 > > | dst_mesh
Public Attributes inherited from optical::effective::EffectiveIndex2D::FieldDataBase< FieldT >
EffectiveIndex2D * | solver
std::size_t | num
std::vector< dcomplex, aligned_allocator< dcomplex > > | kx
std::vector< dcomplex, aligned_allocator< dcomplex > > | ky
std::size_t | stripe

## Additional Inherited Members
Public Types inherited from plask::LazyDataImpl< FieldT >
typedef FieldT | CellType
Protected Member Functions inherited from optical::effective::EffectiveIndex2D::FieldDataBase< FieldT >
FieldT | value (dcomplex val) const
void | setScale ()
void | setScale ()
double | value (dcomplex val) const
void | setScale ()
Vec< 3, dcomplex > | value (dcomplex val) const
Protected Attributes inherited from optical::effective::EffectiveIndex2D::FieldDataBase< FieldT >
double | scale

## Detailed Description

template<typename FieldT>
struct optical::effective::EffectiveIndex2D::FieldDataInefficient< FieldT >

Definition at line 782 of file eim.cpp.

## Constructor & Destructor Documentation

## ◆ FieldDataInefficient()

template<typename FieldT >

optical::effective::EffectiveIndex2D::FieldDataInefficient< FieldT >::FieldDataInefficient | ( | EffectiveIndex2D * | solver,
|  | std::size_t | num,
|  | const shared_ptr< const MeshD< 2 > > & | dst_mesh
| ) |  |
| inline

Definition at line 785 of file eim.cpp.

## Member Function Documentation

## ◆ at()

template<typename FieldT >

FieldT optical::effective::EffectiveIndex2D::FieldDataInefficient< FieldT >::at | ( | size_t | idx | ) | const
| inline override

Definition at line 790 of file eim.cpp.

## ◆ size()

template<typename FieldT >

size_t optical::effective::EffectiveIndex2D::FieldDataInefficient< FieldT >::size | ( |  | ) | const
| inline override virtual

Get the number of elements in this vector.

Returns
  the number of elements in this vector

Implements plask::LazyDataImpl< FieldT >.

Definition at line 788 of file eim.cpp.

## Member Data Documentation

## ◆ dst_mesh

template<typename FieldT >

shared_ptr<const MeshD<2> > optical::effective::EffectiveIndex2D::FieldDataInefficient< FieldT >::dst_mesh

Definition at line 783 of file eim.cpp.

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

- solvers/optical/effective/eim.cpp