PLaSK library
Loading...
Searching...
No Matches
optical::effective::EffectiveFrequencyCyl::FieldDataEfficient< FieldT > Struct Template Reference
Inheritance diagram for optical::effective::EffectiveFrequencyCyl::FieldDataEfficient< FieldT >:
[legend]
Collaboration diagram for optical::effective::EffectiveFrequencyCyl::FieldDataEfficient< FieldT >:
[legend]

Public Member Functions

 FieldDataEfficient (EffectiveFrequencyCyl *solver, std::size_t num, const shared_ptr< const RectangularMesh< 2 > > &rect_mesh, size_t stripe)
 
size_t size () const override
 Get the number of elements in this vector.
 
FieldT at (size_t idx) const override
 
DataVector< const FieldT > getAll () const override
 Get all values as non-lazy vector.
 
- Public Member Functions inherited from optical::effective::EffectiveFrequencyCyl::FieldDataBase< FieldT >
 FieldDataBase (EffectiveFrequencyCyl *solver, std::size_t num)
 
 FieldDataBase (EffectiveFrequencyCyl *solver, std::size_t num)
 
 FieldDataBase (EffectiveFrequencyCyl *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< FieldT > claim () const
 

Public Attributes

shared_ptr< const RectangularMesh< 2 > > rect_mesh
 
std::vector< dcomplex > valr
 
std::vector< dcomplex > valz
 
- Public Attributes inherited from optical::effective::EffectiveFrequencyCyl::FieldDataBase< FieldT >
EffectiveFrequencyCyl * solver
 
std::size_t num
 

Additional Inherited Members

- Public Types inherited from plask::LazyDataImpl< FieldT >
typedef FieldT CellType
 
- Protected Member Functions inherited from optical::effective::EffectiveFrequencyCyl::FieldDataBase< FieldT >
FieldT value (dcomplex val) const
 
double value (dcomplex val) const
 
Vec< 3, dcomplex > value (dcomplex val) const
 
- Protected Attributes inherited from optical::effective::EffectiveFrequencyCyl::FieldDataBase< FieldT >
double scale
 

Detailed Description

template<typename FieldT>
struct optical::effective::EffectiveFrequencyCyl::FieldDataEfficient< FieldT >

Definition at line 936 of file efm.cpp.

Constructor & Destructor Documentation

◆ FieldDataEfficient()

template<typename FieldT >
optical::effective::EffectiveFrequencyCyl::FieldDataEfficient< FieldT >::FieldDataEfficient ( EffectiveFrequencyCyl *  solver,
std::size_t  num,
const shared_ptr< const RectangularMesh< 2 > > &  rect_mesh,
size_t  stripe 
)
inline

Definition at line 940 of file efm.cpp.

Member Function Documentation

◆ at()

template<typename FieldT >
FieldT optical::effective::EffectiveFrequencyCyl::FieldDataEfficient< FieldT >::at ( size_t  idx) const
inlineoverride

Definition at line 991 of file efm.cpp.

◆ getAll()

template<typename FieldT >
DataVector< const FieldT > optical::effective::EffectiveFrequencyCyl::FieldDataEfficient< FieldT >::getAll ( ) const
inlineoverridevirtual

Get all values as non-lazy vector.

Returns
non-lazy representation of this

Reimplemented from plask::LazyDataImpl< FieldT >.

Definition at line 997 of file efm.cpp.

◆ size()

template<typename FieldT >
size_t optical::effective::EffectiveFrequencyCyl::FieldDataEfficient< 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 989 of file efm.cpp.

Member Data Documentation

◆ rect_mesh

template<typename FieldT >
shared_ptr<const RectangularMesh<2> > optical::effective::EffectiveFrequencyCyl::FieldDataEfficient< FieldT >::rect_mesh

Definition at line 937 of file efm.cpp.

◆ valr

template<typename FieldT >
std::vector<dcomplex> optical::effective::EffectiveFrequencyCyl::FieldDataEfficient< FieldT >::valr

Definition at line 938 of file efm.cpp.

◆ valz

template<typename FieldT >
std::vector<dcomplex> optical::effective::EffectiveFrequencyCyl::FieldDataEfficient< FieldT >::valz

Definition at line 938 of file efm.cpp.


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