gradVecUpdaterCoordProd

gradVecUpdaterCoordProd

Works with VSimBase, VSimEM, VSimPD, VSimPA, and VSimVE 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 the cylindrical axis (\(r = 0\)) is included in this update. In 3D simulations, it is necessary to specify two separate updaters; one with just the axis and one without. In 2D simulations that will have divergence on the cylindrical axis it is also necessary to have this second updater for the cylindrical axis.

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>