Technical Article

How to Design Magnetics Using the Complete Waveform

November 22, 2023 by Alfonso Martínez

Using the complete waveform to design magnetics is crucial for maximum optimization.

Designing a power supply can be daunting, so engineers break the problem into smaller parts that are easier to define and solve.


Image used courtesy of Adobe Stock


One of these parts is the magnetic component. From a whole system simulation, we can easily define the turns ratios, magnetizing and leakage inductance, isolation requirements, and, most importantly, voltage and current waveform for each and every one of the magnetic component ports.


Using the Complete Waveform

This last requirement might seem trivial, but many engineers obviate the waveforms when defining a transformer, for example, and just go with a few simple parameters—total power, RMS values, and switching frequency—they believe are enough to design a magnetic without realizing they are crippling any possible optimization.

This is partly because many engineers use models or methodologies for designing high-frequency magnetic components originally designed for low frequency and choosing the core with the area product method or limiting the current density using DC values only.

The complete waveform is the key to moving away from old methods toward maximum optimization.


Using Extra Information To Improve Magnetic Designs

The most common method to predict magnetic core losses is the Steinmetz equation. This exponential equation considers the switching frequency (f) and magnetic flux density (B). The coefficients k, ⍺, and ᵦ are different for each core material and are usually provided by the manufacturer (e.g., Ferroxcube Steinmetz coefficients).

\[P_{v}=k\cdot f^{\alpha}\cdot B^{\beta}\]

The problem is that the equation was created in the 19th century and assumes a sinusoidal waveform uncommon in the 21st century.

Many improvements to that equation have been made over the years, the most important being the improved generalized Steinmetz equation (iGSE).

\[P_{v}=\frac{1}{T}\int\limits^{T}_{0}k_{i}|\frac{dB}{dt}|^{\alpha}\Big(\Delta B^{\beta-\alpha}\Big)dt\]


The iGSE considers the complete shape of the magnetic flux density waveform to greatly improve core loss predictions for non-sinusoidal operation points. It divides the magnetic flux density waveform into smaller subloops, each with a potentially different period and frequency. It calculates each subloop's core losses, adding them at the end to obtain total core losses.

A more accurate loss estimation is reflected in higher confidence in our chosen core, so we can be less conservative in our decision and select a smaller core, knowing it will not burn up.

Implementing this equation is simple in any modern software, but it is always better to reuse verified code, as in Figure 1.


Figure 1. C++ code with iGSE implementation for any given magnetic flux density waveform. Image used courtesy of Alfonso Martinez


Once the waveform’s core losses are calculated, continue using them to optimize the design by applying the fast Fourier transform (FFT) and extracting the amplitude and frequency of each harmonic in our excitation to estimate the winding losses.

But before calculating them, determine which wire(s) to use in the windings. From the age of only low-frequency switching, the old school method was to limit the current density that goes through the wires to some conservative value (5-7 A/mm2, from my experience) and pick the smallest gauge that complied.

More modern methods consider the skin effect, calculating the skin depth for switching frequency and selecting a wire whose radius is just under this depth, and then adding as many parallels as needed to keep the DC density under similar values than in the previous case.

This method also includes selecting Litz wires, where the skin depth calculates the strand radius and the current density for the number of strands in the bundle. It is also possible to add parallels to the total bundle instead of using many strands, as thick wire bundles are difficult to wind in the bobbins, increasing manufacturing costs.

The problem with this method is it only considers the frequency of the main harmonics, ignoring any lower or higher frequencies, and can have two consequences:

If the DC content of the waveform is high, as can happen in an inductor, we might end up with a wire that cannot fit the winding window, as smaller strands imply a smaller filling factor value. In other words, the smaller the wire, the larger the space dedicated to isolating instead of conducting.

If the waveform contains many high-frequency harmonics with non-negligible amplitudes, the current of these harmonics will have its own smaller skin depth. They run at a much higher current density than the main harmonics, greatly increasing the winding losses.

In both cases, we end up with a non-optimal design, either due to using large cores because a large winding window is needed or because the design has high winding losses. This increases the magnetic component’s wire temperature, which increases the resistivity of the copper, producing even more heat. This second case usually ends up producing smoke.

Any method used for selecting the wire used in the component should consider not only the main harmonic of the current, its DC value, or the RMS of the waveform but all the harmonics in the current (up to a given proportion with the larger one as to make them negligible).

The easiest way to do this is by using the FFT and obtaining the effective frequency of the current waveform. This frequency is obtained using the following formula:

\(f_{eff}=\sqrt{\frac{\sum\limits^{\infty}_{j=0}I^{2}_{j}\cdot f^{2}_{j}}{\sum\limits^{\infty}_{j=0}I^{2}_{j}}}\) where Ij and fj are the amplitude and frequency of each harmonic.

This formula was introduced by Professor Charles Sullivan in his paper, “Optimal Choice for Number of Strands in a Litz-Wire Transformer Winding,” Appendix C, and offers a frequency that considers all the harmonics and their amplitudes.


Performing Harmonics Analysis and Calculating Effective Frequency

Let’s revisit two problematic cases: performing a harmonics analysis and calculating effective frequency.

For the first case, where we have a current waveform with a relatively small AC ripple compared to a large DC offset, observe how the effective frequency has a much lower value than the switching frequency.

If we use the case from Figure 2, using a switching frequency of 100 kHz, an effective frequency of 9.1 kHz, and its skin effect depth, it would be approximately 0.68 mm. This would result in a wire with a much better-filling factor than the one at the switching frequency (100 kHz). This wire will have higher skin effect losses for the high harmonics, but total copper losses will be diminished as the DC resistance decreases and most of the current is DC.


Figure 2. Current waveform with small AC ripple (top graph), and therefore composed of few harmonics in its Fourier transform and a large DC offset (bottom graph). Image used courtesy of Alfonso Martinez


On the other hand, the second case talked about a waveform with high-power, high-frequency harmonics. In this case, the effective frequency is higher than the switching frequency.

Using the example in Figure 3, using a switching frequency of 100 kHz, an effective frequency of 623.86 kHz, and its skin effect depth, it would be approximately 0.082 mm. This would mean we need a Litz wire, which is reasonable for such a high frequency.


Figure 3. Current waveform with large AC ripple (top graph) and, therefore, composed of many harmonics in its Fourier transform (bottom graph), both in pink, shown in the OpenMagnetics Waveform editor. Image used courtesy of Alfonso Martinez


This proposed wire will help reduce the skin losses due to the harmonic currents circulating at high frequencies, finding a compromise between the current density at low frequencies or DC and the current density at those higher frequencies, where the skin effect greatly reduces the useful conducting area in the copper.


Using the Complete Waveform in Magnetics Summary

Including complete waveforms in the specification of requirements for designing magnetic components has myriad benefits. We have seen how using them can lead to a better-informed selection of the magnetic core and wires rather than considering the full spectrum of harmonics, resulting in optimized magnetic designs.