Excitation Voltage¶
The CoilExcitationVoltage excitation option applies a voltage across the
coil. The voltage can be a constant value, a time-dependent function (for
transient simulation), or a complex amplitude (for time-harmonic
simulation).
The current flowing through the coil is determined by the coil's resistance, the back electromotive force, and the applied voltage according to Ohm's law:
\[
I = \frac{1}{R} \left( V - \mathcal{EMF} \right)
\]
where \(I\) [A] is the current through the coil, \(V\) [V] is the applied voltage, \(R\) [\(\Omega\)] is the series resistance, and \(\mathcal{EMF}\) [V] is the back-EMF induced in the coil by the time-varying field:
\[
\mathcal{EMF} = -\frac{\mathrm{d} \Psi}{\mathrm{d}t},
\]
with \(\Psi\) the magnetic flux linkage.
When to use this¶
- Realistic transformer and inductor analysis driven by the mains or by a known voltage source — the current is the unknown response.
- Voltage-fed motor drives where the inverter is modelled as a voltage source with known waveform.
- Inrush / fault studies where the coil draws a transient current through its impedance.
- Self-consistent eddy-current loops — voltage excitation closes the circuit equation, so induced currents back-react on the applied current.
Examples¶
DC voltage with series resistance¶
from mufem.electromagnetics.coil import CoilExcitationVoltage
coil_excitation = CoilExcitationVoltage(voltage=12.0, resistance=3.09)
Time-dependent voltage from tabulated data¶
import mufem
voltage_signal = mufem.CffInterpolatedScalar(
times=time_array,
values=voltage_array,
)
coil_excitation = CoilExcitationVoltage(
voltage=voltage_signal,
resistance=3.09,
)
Harmonic voltage¶
Pass a complex amplitude or a (magnitude, phase_in_degrees) tuple: