compCurlCylCrossDev

compCurlCylCrossDev

Works with XSimBase license.

MultiField updater for Cross Devices that computes the curl in cylindrical coordinates of a regularCrossDev field for the specified components. This has a source term and optional incrementing built in (see parameters).

compCurlCylCrossDev Parameters

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

forwardDifferencing (required Boolean)

Whether or not to use forward differencing when computing the component of the curl; true indicates an upward curl.

incrementCoef (optional float, default = 1.0)

Multiplicative coefficient applied to the write field.

curlCoef (required float)

Multiplicative coefficient applied to the curl in addition to \(dt\). Namely, for Faraday updates curlCoef = 1.0

sourceCoef (required float)

Multiplicative coefficient for the source field. Namely, for Ampere updates sourceCoef = \(1.0/\epsilon_0\).

writeComponents (required int vector)

The components of the writeField that the curl is calculated and written.

Examples compCurlCylCrossDev block

<FieldUpdater faradayY>
 kind = compCurlCylCrossDev
 writeComponents = [1]
 lowerBounds = [ 0   1   0]
 upperBounds = [NZ  NRP1  NZ]
 readFields = [eXd jXd]
 writeFields = [bXd]
 curlCoef = -1.0
 sourceCoef = 0.0
 forwardDifferencing = true
</FieldUpdater>

Notes

compCurlCylCrossDev is available with

History

compCurlCylCrossDev was introduced in XSim 1.0.