As you know, three-phase two-winding transformers can produce a phase-shift between the line-to-line or line-to-neutral phasor voltages of one side and the respective line-to-line or line-to-neutral phasor voltages of the other side. This is taken into account as explained in the standard IEC 60076-1 by indicating the vector groups of the transformer.

As may also know, we can analyze balanced three-phase circuits using single-phase (or per-phase) equivalent circuits, whether using per-unit values or real values. In such single-phase circuits, we substitute the three-phase transformer with a single-phase transformer. How is the phase-shift taken into account? At least on the popular textbooks by Grainger & Stevenson and by Glover & Sarma, the authors use a "complex turns ratio". For example, using per-unit values, below are shown per-phase circuits:

enter image description here

Figure 1. Taken from Glover & Sarma's textbook.

enter image description here

Figure 2. Taken from Grainger & Stevenson's textbook.

This is fine, I understand it. But suppose I want to simulate a per-phase circuit (using real values) in a simulator such as Multisim, PSpice, LTspice, etc. and use the AC Analysis mode (which solves for phasor voltages and currents). Is there a way to model the single-phase transformer to include the phase shift (e.g. with a complex turns ratio)?

First attempt

I read the Supported Mathematical Functions, Operators and Constants in Multisim but it looks like there's no support for the imaginary unit, which I'd use to model the complex turns ratio.

I also read the Available Complex Functions in Multisim, but it says the imaginary unit is available only in the Postprocessor. Now, according to this page the postprocessor (and thus the imaginary unt) can be used only after a simulation is run, which is useless in my case.

Second attempt

As you may know, it is possible to model an ideal single-phase transformer using dependent sources. But in such case, to include the phase shift of the three-phase transformer (i.e. the complex turns ratio), I'd need a "complex gain" for the dependent sources. Since Multisim doesn't support the imaginary unit, I can't use a complex gain.

Of course, if it's not possible to model the phase shift of the three-phase transformer in the single-phase transformer, instead of simulating the equivalent single-phase circuit I could simply simulate the actual three-phase circuit. The downside is it'd take more time for me to set up the whole power system.

  • \$\begingroup\$ Single phase transformers are tapped at centre to make split phase outputs. Delta Y 3 phase create 3 single phases by mutual coupling of 2 phases with a neutral reference 120 deg apart \$\endgroup\$ Jan 15, 2021 at 14:10
  • \$\begingroup\$ For models of phase shifting transformers you can google for 'ltspice loadflow' \$\endgroup\$
    – Friedrich
    Dec 10, 2022 at 12:55

3 Answers 3


Is there a way to model the single-phase transformer to include the phase shift (e.g. with a complex turns ratio)?


But suppose I want to simulate a per-phase circuit (using real values) in a simulator such as Multisim, PSpice, LTspice, etc. and use the AC Analysis mode

The easiest way (in AC analysis) is to set the applied voltage at the primary to have the appropriate phase shift. I don't use any of the aforementioned simulators so here's how microcap would do it: -

enter image description here

I expect that all Spice simulators will have a similar feature in their voltage sources. See also the numerical shorthand of a voltage source - I've set the phase to be \$\color{red}{30}\$ degrees: -

DC 1 AC 0 \$\color{red}{30}\$ Sin 0 2.5 1meg 0 0 0

Or just use a time delay sub-circuit (if working in transient analysis): -

enter image description here

I can't imagine that LTSpice doesn't have this.

  • \$\begingroup\$ He is needing the actual single-phase turns ratio to be complex. Just setting the primary to some phase angle does not accommodate the phase shift across the transformer he is seeking. \$\endgroup\$ Jan 15, 2021 at 14:21
  • \$\begingroup\$ @relayman357 no he isn't - the OP has already realized this: but it looks like there's no support for the imaginary unit, which I'd use to model the complex turns ratio. hence, he's looking for a work around. \$\endgroup\$
    – Andy aka
    Jan 15, 2021 at 14:22
  • \$\begingroup\$ The first method (phase-shifting the voltage source) doesn't seem feasible when you have a big power system with meshes. I mean, I think it wouldn't be possible to phase-shift the sources so that all transformer adapt to the phase shift. \$\endgroup\$
    – alejnavab
    Jan 15, 2021 at 21:19
  • \$\begingroup\$ Regarding the second method (using a delay device), Multisim does have it. The only problem is I have to simulate in Transient mode, so I have to manually measure the phase angle (comparing with with a sine wave with no phase shift) and the amplitude of every voltage and current. I think this would take quite some time. Anyways, thanks! \$\endgroup\$
    – alejnavab
    Jan 15, 2021 at 21:22

Is there a way to model the single-phase transformer to include the phase shift (e.g. with a complex turns ratio)?

The phase shift is an artifact of phasors (steady-state). The 30° phase shift you describe is only present under balanced conditions (e.g. balanced 3-phase, or in the positive/negative sequence phasors in symmetrical components).

The numerical solvers (transients programs like LTSpice) are not phasor based solvers. They cannot do what you are asking (complex turns ratio). Even if they could, it would only produce correct results for specific problems - it would be wrong for others.

Transients programs (like ATP or EMTP) that have "load flow" capabilities can be used. You need a phasor based tool like PSS/CAPE, MATPOWER etc. for studies of this nature. MATPOWER will do exactly what you want and is free and runs on top of MATLAB or Octave (free equivalent of MATLAB).

When we work short-circuit problems by hand with symmetrical components we accommodate this phase shift manually. You would only need to do this if you care about the phase angle relationship between quantities on opposite sides of the bank - which you rarely do. For example, if you are analyzing a protective relay operation you would only care about the phasor currents and voltages where the relay is connected.


Since, as you found out, SPICE simulators do not work with complex values in .TRAN, the only way to do that is to make your own concoction that adds a phase shift. Since it looks like you're interested in just about anything, I'll resort to the basic (so called) DC transformer, upon which you can build/modify/etc yourself, as needed:


I used only true primitives, and so they should be SPICE-agnostic. F1 and E1 form the transformer, G[2:4] & co form a SOGI (second order generalized integrator), which generate a quadrature based on a single input. G1 and G5 make use of the formula:


The SOGI and the rest of the circuit are isolated, so the functionality is not affected. As it is, E1 is the output, but you can get rid of it and use the output straight from R2, which would provide an output resistance; you'll have to modify the gains of G1 and G5 accordingly.

The simulation uses a .STEP for phi from -180o to 180o, and the output is not exactly instantaneous. That's to be expected, causality and all. You could try to tweak the value for R1, which would affect the transfer function of the SOGI (and, thus, the transient response), but as it is it should provide the best compromise. Unless you're interested in studying initial transients, you should be able to start saving the simulation from one or two periods after the beginning, to be in steady-state.

Don't forget that this "transfomer" will work from DC to light.

In case it's not immediately obvious, the above is not restricted to a .TRAN simulation, only. For example, this is the result of .ac list {f}:

V(in):  mag:          1 phase: 3.18055e-015°    voltage
V(out): mag:        0.5 phase:         45°  voltage
I(R3):  mag:       0.01 phase:         45°  device_current
I(V1):  mag:      0.005 phase:       -135°  device_current

Using a frequency sweep will show a non-flat response, but the frequency of interest is obeyed.

Also, if you need to use coupled inductors, you can add them just as easily between V1 and F1. Don't forget that adding coupling (a k statement) will make the default Rser=1m for inductors to become zero, which may issue an error about a "voltage loop". So be sure to add a series resistance, external or specifying Rser in either the voltage source or the primary inductor.

  • 1
    \$\begingroup\$ In the picture, F1 should have the value E1 {-1/N}. \$\endgroup\$ Jan 15, 2021 at 18:07
  • \$\begingroup\$ Very cool idea. \$\endgroup\$
    – Ste Kulov
    Jan 16, 2021 at 5:23
  • \$\begingroup\$ I've updated the answer with a bit more info, maybe it helps. \$\endgroup\$ Jan 16, 2021 at 9:14

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.