|
Electromagnetic Template Library (EMTL)
|
Fix class for UPML. More...
#include <pml.h>


Classes | |
| struct | UPML_t |
| Structure used to find if data for medium was already recorded. More... | |
Public Member Functions | |
| template<class block_t > | |
| int | record (block_t *block, const typename block_t::contour_it &cnti, const Vector_3 sigma, const Vector_3 kappa, valtype eps, valtype mue, emtype &Ca, emtype &Cb) |
| Record data where UPML fix should be applied: contour iterator cnti (from the mesh block). | |
Protected Attributes | |
| emtype * | ptr |
| pointer at the array for the field E | |
| valtype | dt |
| time step | |
| refvector< pack_t< indtype, indtype >::data > | inds |
| elements of array for E which are inside UPML | |
| vector_indexed< UPML_t > | us |
| auxiliary vector used at the record stage (for medium data) | |
| std::vector< valtype > | Cas |
| auxiliary vectors used at the record stage (for coefficients in basic update procedure) | |
Fix class for UPML.
Work with this class assumes 3 stages:
Pointer at the object emFixUPML and mesh E is hold by bdescr (objects of bdescr are collected by emBlockContainer). This object is initialized and recorded at the stage of contours analysis performed by emBlockContainer.
| int emFixUPML::record | ( | block_t * | block, |
| const typename block_t::contour_it & | cnti, | ||
| const Vector_3 | sigma, | ||
| const Vector_3 | kappa, | ||
| valtype | eps, | ||
| valtype | mue, | ||
| emtype & | Ca, | ||
| emtype & | Cb | ||
| ) |
Record data where UPML fix should be applied: contour iterator cnti (from the mesh block).
sigma and kappa are PML parameters, eps are mue parameters of the adjacent medium