Electromagnetic Template Library (EMTL)
Loading...
Searching...
No Matches
emUPMLSolver Class Reference

Fix class for UPML. More...

#include <pml.h>

Inheritance diagram for emUPMLSolver:
Collaboration diagram for emUPMLSolver:

Classes

class  iterator
 iterator for sequence of recorded data More...
 

Public Member Functions

void allocate (int N_)
 allocate memory array for field D
 
void ClearMesh ()
 fill memory array for D with zero
 
int step_before (const iterator &data, emtype *out)
 UPML algorithm applied before basic update procedure (see description in fix.h)
 
int step_after (const iterator &data, emtype *out)
 UPML algorithm applied after basic update procedure (see description in fix.h)
 

Protected Attributes

valtype CDn
 coefficients in discretized equation for UPML
 
emtype * D
 memory array for field D
 
size_t N
 size of memory array for D (number of UPML mesh points)
 

Detailed Description

Fix class for UPML.

Work with this class assumes 3 stages:

  1. Initialization with direction of PML dir, field type (0 for E and 1 for H), PML parameters sigma and kappa, and parameters of adjacent medium eps and mue (constructor). Coefficients Ca and Cb in basic update equation E=Ca*E+Cb*rotH are calculated using values of given above parameters.
  2. Allocation memory array for field D, function allocate.
  3. Function step_before and step_after for iterators on elements of array for D.

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