|
| | ExpansionBesselInfini (BesselSolverCyl *solver) |
| | Create new expansion.
|
| |
| void | init2 () override |
| | Perform m-specific initialization.
|
| |
| void | getMatrices (size_t layer, cmatrix &RE, cmatrix &RH) override |
| | Get RE anf RH matrices.
|
| |
| | ExpansionBessel (BesselSolverCyl *solver) |
| | Create new expansion.
|
| |
| virtual | ~ExpansionBessel () |
| |
| void | init1 () |
| | Init expansion.
|
| |
| void | init3 () |
| | Estimate required integration order.
|
| |
| virtual void | reset () |
| | Free allocated memory.
|
| |
| bool | diagonalQE (size_t l) const override |
| |
| size_t | matrixSize () const override |
| | Return size of the expansion matrix (equal to the number of expansion coefficients)
|
| |
| void | prepareField () override |
| | Prepare for computatiations of the fields.
|
| |
| void | cleanupField () override |
| | Cleanup after computatiations of the fields.
|
| |
| LazyData< Vec< 3, dcomplex > > | getField (size_t layer, const shared_ptr< const typename LevelsAdapter::Level > &level, const cvector &E, const cvector &H) override |
| | Compute electric or magnetic field on dst_mesh at certain level.
|
| |
| LazyData< Tensor3< dcomplex > > | getMaterialEps (size_t layer, const shared_ptr< const typename LevelsAdapter::Level > &level, InterpolationMethod interp=INTERPOLATION_DEFAULT) override |
| | Get epsilons index back from expansion.
|
| |
| double | integratePoyntingVert (const cvector &E, const cvector &H) override |
| | Compute vertical component of the Poynting vector for specified fields.
|
| |
| double | integrateField (WhichField field, size_t layer, const cmatrix &TE, const cmatrix &TH, const std::function< std::pair< dcomplex, dcomplex >(size_t, size_t)> &vertical) override |
| | Compute ½ En·conj(Em) or ½ Hn·conj(Hm)
|
| |
| void | beforeGetEpsilon () override |
| | Prepare retrieval of refractive index.
|
| |
| void | afterGetEpsilon () override |
| | Finish retrieval of refractive index.
|
| |
| unsigned | getM () const |
| |
| void | setM (unsigned n) |
| |
| size_t | idxs (size_t i) |
| | Get index.
|
| |
| size_t | idxp (size_t i) |
| | Get index.
|
| |
| cmatrix | epsV_k (size_t layer) |
| |
| cmatrix | epsTss (size_t layer) |
| |
| cmatrix | epsTsp (size_t layer) |
| |
| cmatrix | epsTps (size_t layer) |
| |
| cmatrix | epsTpp (size_t layer) |
| |
| virtual std::vector< double > | getKpts () |
| | Return expansion wavevectors.
|
| |
| | Expansion (ModalBase *solver) |
| |
| virtual | ~Expansion () |
| |
| TempMatrix | getTempMatrix () |
| |
| double | getLam0 () const |
| | Get lam0.
|
| |
| void | setLam0 (double lam) |
| | Set lam0.
|
| |
| void | clearLam0 () |
| | Clear lam0.
|
| |
| dcomplex | getK0 () const |
| | Get current k0.
|
| |
| void | setK0 (dcomplex k) |
| | Set current k0.
|
| |
| void | computeIntegrals () |
| | Compute all expansion coefficients.
|
| |
| virtual bool | diagonalQE (size_t PLASK_UNUSED(l)) const |
| | Tell if matrix for i-th layer is diagonal.
|
| |
| virtual void | getDiagonalEigenvectors (cmatrix &Te, cmatrix &Te1, const cmatrix &RE, const cdiagonal &gamma) |
| | Get eigenvectors with some physical meaning when the layer is diagonal.
|
| |
| void | initField (WhichField which, InterpolationMethod method) |
| | Prepare for computations of the fields.
|
| |
| double | getModeFlux (size_t n, const cmatrix &TE, const cmatrix &TH) |
| | Compute vertical component of the Poynting vector for fields specified as matrix column.
|
| |
|
| virtual void | integrateParams (Integrals &integrals, const dcomplex *datap, const dcomplex *datar, const dcomplex *dataz, dcomplex datap0, dcomplex datar0, dcomplex dataz0) override |
| |
| double | fieldFactor (size_t i) override |
| |
| cmatrix | getHzMatrix (const cmatrix &Bz, cmatrix &Hz) override |
| |
| void | beforeLayersIntegrals (dcomplex lam, dcomplex glam) override |
| |
| Tensor3< dcomplex > | getEps (size_t layer, size_t ri, double r, double matz, double lam, double glam) |
| |
| void | layerIntegrals (size_t layer, double lam, double glam) override |
| | Compute integrals for RE and RH matrices.
|
| |
| virtual void | beforeLayersIntegrals (dcomplex PLASK_UNUSED(lam), dcomplex PLASK_UNUSED(glam)) |
| | Method called before layer integrals are computed.
|
| |
| virtual void | afterLayersIntegrals () |
| | Method called after layer integrals are computed.
|
| |
Definition at line 26 of file expansioncyl-infini.hpp.