PLaSK library
|
Public Member Functions | |
size_t | size () const override |
Get the number of elements in this vector. | |
FieldDataEfficient (EffectiveIndex2D *solver, std::size_t num, const shared_ptr< const RectangularMesh< 2 > > &rect_mesh) | |
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::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< FieldT > | claim () const |
Public Attributes | |
shared_ptr< const RectangularMesh< 2 > > | rect_mesh |
std::vector< dcomplex, aligned_allocator< dcomplex > > | valx |
std::vector< dcomplex, aligned_allocator< dcomplex > > | valy |
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 |
|
inline |
|
inlineoverride |
|
inlineoverridevirtual |
Get all values as non-lazy vector.
Reimplemented from plask::LazyDataImpl< FieldT >.
|
inlineoverridevirtual |
Get the number of elements in this vector.
Implements plask::LazyDataImpl< FieldT >.
shared_ptr<const RectangularMesh<2> > optical::effective::EffectiveIndex2D::FieldDataEfficient< FieldT >::rect_mesh |
std::vector<dcomplex, aligned_allocator<dcomplex> > optical::effective::EffectiveIndex2D::FieldDataEfficient< FieldT >::valx |
std::vector<dcomplex, aligned_allocator<dcomplex> > optical::effective::EffectiveIndex2D::FieldDataEfficient< FieldT >::valy |