- yeeAmpereDielVecUpdater
yeeAmpereDielVecUpdater
Works with VSimEM license.
Multifield updater that updates all three (3) components of the electric field according to Ampere’s Law, but takes into account the inverse dielectric tensor given by a 6-component inverse permittivity field. You can set this inverse permittivity field with a permittivityUpdater or setEpsilonUpdater.
yeeAmpereDielVecUpdater Parameters
The yeeAmpereDielVecUpdater
takes the lowerBounds
and upperBounds
parameters of FieldUpdater, as well
as the following parameters:
- readFields (required string vector)
The names of the three fields to use in the update. These are given, for instance, as
readFields = [yeeB source invEpsilon]
, where:yeeB
:Name of the Yee magnetic field.
source
:This is the name of a field containing the current source. This can either be a 3-component field contining just the current, or a 4-component field containing the current in its last three components.
invEpsilon
:6-component symmetric inverse permittivity field, with components.
\[\left((\epsilon^{-1})_{xx}, (\epsilon^{-1})_{yy}, (\epsilon^{-1})_{zz}, (\epsilon^{-1})_{yz}, (\epsilon^{-1})_{zx}, (\epsilon^{-1})_{xy}\right).\]This can be created with permittivityUpdater or setEpsilonUpdater.
- writeFields (required string vector)
A single element, the name of the electric field to update.
- dtCoefficients (optional float vector, default = [1. 0.])
Two components [\(c_{0}\) \(c_{1}\)] as defined in the equation above. The result of the updater will be multiplied by (\(c_{0}\) + \(c_{1} \Delta t\)), where \(\Delta t\) is the current time step.
yeeAmpereDielVecUpdater Example
<FieldUpdater yeeAmpere>
kind = yeeAmpereDielVecUpdater
lowerBounds = [NX_BEGIN NY_BEGIN NZ_BEGIN]
upperBounds = [NX_END NY_END NZ_END]
readFields = [magField J invEpsilon]
writeFields = [elecField]
</FieldUpdater>