# Simulating a variable mutual inductance model

Can we simulate a time varying mutual inductance in Matlab Simulink (or any other simulation tool).

Matlab Simulink has a variable inductor, but I could not find not mutual inductor.

• Well I’m sure you could model one in simulink with the correct parameters using math blocks Sep 1 '18 at 21:44
• A mutual inductor is another name for a transformer. Check out the transformer block. au.mathworks.com/help/physmod/sps/powersys/ref/… Sep 2 '18 at 0:52

(or any other simulation tool)

In LTspice you have the behavioural inductor. The expression is a function of x, Flux=f(x), where x has a special significance denoting the derivative of the current through the inductor. See more about it in the manual. Don't forget that the expression needs integrating beforehand. For example, say you need the inductance to vary as $-2x^3+3x^2+1$. After integration you get $-\frac{x^4}{2}+x^3+x$, and that's what you need to use. Also don't forget that, in LTspice, ** is used to mean exponentiation, instead of ^:

The test setup has a current source with a unit current ramp, which translates into the voltage across the inductor being the actual inductance -- V(n001) in the picture (the only node, actually). You should take care that, due to the derivative, sharp discontinuities may appear (see the sharp rise at time t=0), it's up to you to handle those, LTspice will gladly calculate anything you throw at it.

• Thanks, However, LTSpice says "mutual inductance aren't supported between arbitrary inductors"!
– Pojj
Sep 11 '18 at 19:13
• @Pojj You can use behavioural inductors, or even the Chan core, to make a transformer. See the Examples folder under your LTspice installation -- NonLinearTransformer.asc, and this ltwiki page on tips how to build one. Sep 12 '18 at 6:05
• Perfect! let me digest it slowly...
– Pojj
Sep 12 '18 at 15:57