Skip to content

Current Source ​

Single-phase ideal current source. Drives a configurable DC or sinusoidal current out of the p terminal, through the external circuit, and back in at n, whatever voltage that takes, optionally with a shunt resistance across its terminals (0 = ideal). Supports a soft-start amplitude ramp and monitoring of the delivered terminal current (A / kA) and the terminal voltage (V / kV). Use it as a stiff DC load on a rectifier, a harmonic or test-current injection, or a Norton source. An ideal source with no shunt needs a current path in the external circuit; in series with an open switch or with only an inductor it is ill-posed. Takes no part in the load flow.

Category: Single-Phase / Sources

Overview ​

The Current Source drives a prescribed current through whatever is connected to it, taking on whatever terminal voltage that requires. It is the dual of the voltage source: where a voltage source fixes V(p)−V(n), the current source fixes the current I(t) that leaves the p terminal, flows through the external circuit, and returns at n.

I(t)={IDC2Isin⁡(2πft+φ)AC (I entered as RMS)

Typical uses:

  • a stiff DC load on a rectifier (a large smoothing inductor makes the DC current nearly constant, which is exactly a current source);
  • a harmonic or test-current injection into a network to measure its impedance;
  • a Norton source, by giving it a shunt resistance.

Shunt resistance ​

With R_shunt = 0 the source is ideal: it has no internal path, and the whole source current flows in the external circuit. A non-zero R_shunt places a resistance across the terminals, turning the source into a Norton equivalent. The current delivered to the circuit is then

Iout=I(t)−V(p)−V(n)Rshunt.

Ill-posed circuits ​

An ideal current source forces its current to flow somewhere. The circuit around it has to provide a path, otherwise the problem has no solution:

  • Open circuit. A current source in series with an open breaker or an off switch has nowhere to send its current. Add a shunt resistance, or a large resistor across the switch.
  • Inductor-only path. In series with an inductor only, the source sets the inductor current directly, and the inductor voltage Ldi/dt jumps whenever the source current does (at t=0 in particular). Use the soft-start ramp, or add a shunt resistance.
  • Two current sources in series with different currents contradict each other.

The soft-start ramp (t_ramp) raises the amplitude linearly from zero over t_ramp, which avoids the t=0 step into inductive loads.

Monitoring ​

Enable Measure current to record the delivered terminal current Iout (equal to I(t) for an ideal source) and Measure voltage to record V(p)−V(n). With the current leaving p into a load the terminal voltage is positive and the source delivers V⋅I.

Load flow ​

The current source takes no part in the load flow. Circuits that rely on the load flow to initialize machines and controllers treat it as absent; it acts from the start of the simulation.

Ports ​

PortKindSignalNotes
pElectrical terminal—
nElectrical terminal—

Parameters ​

Config ​

ParameterTypeDefaultUnitsDescriptionID
ModeChoice: DC / ACDC—0=DC, 1=AC. In DC mode the source holds a constant current; the frequency and phase fields are hidden.mode
INumber1A (also kA)Source current (RMS for AC, magnitude for DC). In AC mode the peak is sqrt(2) times this value, matching the voltage source. Positive current leaves the p terminal.current
fNumber60Hz (also kHz)Frequency of the AC current (Hz).frequency
φNumber0rad (also deg)Phase angle of the AC current, I(t) = sqrt(2) I sin(2 pi f t + phi). Radians or degrees via the unit dropdown.phase
t_rampNumber0s (also ms)Current ramp-up time. The amplitude scales linearly from 0 to full over t_ramp, then holds. Use it to start an inductive circuit without an inrush. 0 disables.ramp_time
R_shuntNumber0Ω (also kΩ)Resistance across the source terminals (a Norton source). 0 = ideal current source with no internal path.shunt_resistance
Measure currentChoice: Off / OnOff—Emit the current delivered out of the p terminal (the source current less the shunt current) as an observable. Name and unit live on the Signal Names tab.measure_current
Measure voltageChoice: Off / OnOff—Emit the terminal voltage V(p) - V(n) as an observable. Name and unit live on the Signal Names tab.measure_voltage

Signal Names ​

ParameterTypeDefaultUnitsDescriptionID
Current nameTextIA (also kA)Signal name for the delivered terminal current. Blank = skip. Pick the unit from the dropdown; the published value is scaled to it.current_name
Voltage nameTextVV (also kV)Signal name for the terminal voltage V(p) - V(n). Blank = skip. Pick the unit from the dropdown; the published value is scaled to it.voltage_name

Observables ​

Default nameKindRecorded whenDescriptionID
set by Current nameSignalMeasure current is onCurrent delivered out of the p terminal (and back in at n), scaled to the chosen unit (A / kA): the source current less the current the shunt resistance takes. Equal to the source current for an ideal source.branchCurrent
set by Voltage nameSignalMeasure voltage is onTerminal voltage V(p) - V(n), scaled to the chosen unit (V / kV). With the current leaving p into a load, V(p) - V(n) is positive and the source delivers V * I.terminalVoltage