DeyMittraAmpereVecCrossDev

DeyMittraAmpereVecCrossDev

Works with XSimEM license.

MultiField updater that calculates the next value of the electric field based on the curl of the magnetic field and the current density. This is according to Ampere’s Law.

This computes all three components of the curl in a single updater/kernel.

This updater also accounts for cut-cells due to gridded metal shapes, which is included via the edgeFracs field.

DeyMittraAmpereVecCrossDev Parameters

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

incrementCoef (float, optional)

Multiplicative coefficient applied to the write field at the previous step and added to the new value. If not provided, incrementCoef = \(1.0\).

curlCoef (float, optional)

Multiplicative coefficient applied to the curl in addition to \(dt\). If not provided, curlCoef = \(c^2\).

sourceCoef (float, optional)

Multiplicative coefficient for the source field. If not provided, sourceCoef = \(-1.0/\epsilon_0\).

DeyMittraAmpereVecCrossDev Usage Notes

Example DeyMittraAmpereVecCrossDev block

<FieldUpdater ampere>
 kind = deyMittraAmpereVecCrossDev
 lowerBounds = [ 0   1   1]
 upperBounds = [NX  NY  NZ]
 readFields = [B edgeFracs]
 writeFields = [E]
</FieldUpdater>

Notes

DeyMittraAmpereVecCrossDev is available with ….

History

DeyMittraAmpereVecCrossDev was introduced in XSim 1.0.