PLaSK library
Loading...
Searching...
No Matches
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
inlineoverride

Definition at line 790 of file eim.cpp.

◆ size()

template<typename FieldT >
size_t optical::effective::EffectiveIndex2D::FieldDataInefficient< FieldT >::size ( ) const
inlineoverridevirtual

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: