gradVecUpdaterCoordProd

gradVecUpdaterCoordProd

Works with VSimBase, VSimEM, VSimPD, VSimPA, and VSimMD licenses.

Multifield updater that computes the gradient of a scalar field given by the readFields parameter and writes the resulting vector field to writeFields, on a non-uniform or non-Cartesian grid.

gradVecUpdaterCoordProd Parameters

The gradVecUpdaterCoordProd takes the lowerBounds and upperBounds parameters of FieldUpdater, as well as the following parameters:

readFields (required, string, vector)

A single element, the name of the scalar field for which to compute the gradient.

writeFields (required, string, vector)

A single element, the vector field to update with the computed gradient.

factor (optional float, default = 1)

Factor by which to multiply the field.

includeCylAxis (optional integer, default = 0 (false))

Set this to true (1) if \(r = 0\) is included in the simulation. To obtain the correct behavior at the axis, specify two separate gradVecUpdaterCoordProd updaters; one with the axis and one without.

Example gradVecUpdaterCoordProd Block

<FieldUpdater gradPhi>
    kind=gradVecUpdaterCoordProd
    lowerBounds=[0 1]
    upperBounds=[NZ NR]
    readFields=[phi]
    writeFields=[edgeE]
    factor = 1.0
</FieldUpdater>
<FieldUpdater gradPhi_axis>
    kind=gradVecUpdaterCoordProd
    includeCylAxis=1
    lowerBounds=[0 0]
    upperBounds=[NZ 1]
    readFields=[phi]
    writeFields=[edgeE]
    factor = 1.0
 </FieldUpdater>