MalCrossDev

MalCrossDev

Works with XSimEM license.

The malUpdater is a MultiField updater that uses isotropic electric and magnetic damping profiles to absorb an incident wave in a slab. These Matched Absoring Layers (MALs) are more stable than Perfectly Matched Layers (PMLs), which use the same electric and magnetic damping profiles, but are anisotropic.

MalCrossDev Parameters

The malCrossDev updater takes the lowerBounds, upperBounds, and writeFields parameters of Field Slab updaters, as well as the following parameters:

upperOrLower (required string)

A string specifying whether the damping increases (upper) or decreases (lower) as the coordinate increases.

numOrDenom (required string)

A string, specifying whether this updater damps field by (1 - xi^pwr) (num) or 1/(1 + xi^pwr) (denom)

writeField (required string)

A string indicating field to damp. (E/D) or (B).

dir (required integer)

An integer, 0-ndim, in which damping coefficient should vary. (0), (1), or (2).

frac (optional float)

The peak damping amplitude: 0.5 is suggested, typical range is 0.125 to 2.0.

exponent (optional float)

The damping profile goes as frac*x^power: 3.0 is suggested, typical range is 1.0 to 4.0.

MalCrossDev Usage Notes

Example MalCrossDev block

<FieldUpdater malDDenomlowerX>
  kind = malCrossDev
  lowerBounds = [0 0 0]
  upperBounds = [124 144 132]
  upperOrLower = lower
  numOrDenom = denom
  writeFields = [D]
  dir = 0
  frac = 0.5
  exponent = 12.0
</FieldUpdater>

Notes

MalCrossDev

History

MalCrossDev was introduced in XSim 1.0