I have already found some useful information about how to calculate the magnetic dipole moment vector $\vec m$ of a solenoid with ferromagnetic core.

By adding the moment vector of the core and the moment vector of the solenoid the result is $$\vec m_{total} = \vec m_{core} + \vec m_{solenoid}=NI \left( \frac{\mu}{\mu_0}-1\right)A+NIA$$ with $N$ being the number of turns of the solenoid, $I$ the current flowing through the solenoid, $A$ the cross sectional area of the solenoid, $\mu$ the permeability of the ferromagnetic material of the core and $\mu_0$ the permeability constant.

This equation completely neglects the hysteresis of the core. If the current of the solenoid is shut down ($I = 0$) the magnetic moment vector is 0.0. The remanent B field inside the core might be very small, but it is still $> 0$ and therefore the magnetic moment vector should also be $>0$.

I think the moment vector of the core can be rewritten to $$\vec m_{core} = \frac{2 \pi r^3 B}{\mu_0}$$ with $B$ being the magnetic flux density of the core.

By using a hysteresis model (preisach model; already implemented) an algorithm for computing the magnetic moment vector could be:

At each time point calculate:

  1. magnetic field strength of the solenoid $$H=I \frac{N}{l}$$ with $l$ being the length of the solenoid
  2. Use this calculated $H$ as external field input into the hysteresis model and get the resulting internal $B$
  3. Using the second equation for the moment vector of the core, applying the result of the hysteresis model ($B$ inside the core) and putting $r=l_{core}$ as the length of the core obtain the moment vector $\vec m_{core}$
  4. add the moment vector of the core and the moment vector of the solenoid to get the $\vec m_{total}$

My questions are:

  1. Can the magnetized state of the core be represented as $\vec m_{core} = \frac{2 \pi r^3 B}{\mu_0}$?
  2. Can someone verify that the algorithm stated above would give a more realistic representation of a solenoid with ferromagnetic core compared to assumptions that the core behaves linearly with the current?

1 Answer 1


I can only provide a partial answer.

When the current in the solenoid is zero then the H-field is zero. As $$\vec{B} = \mu_0 (\vec{H} + \vec{M}),$$ where $\vec{M}$ is the magnetisation, then $\vec{M} = \vec{B}/\mu_0$.

As magnetisation is dipole moment per unit volume, then the total magnetic moment of the core would be $m_{\rm core}=(l_{\rm core} A/\mu_0)\vec{B}$.

As for the algorithm, I don't follow step 3. In general, the dipole moment of the core will be $m_{\rm core}=l_{\rm core} A \vec{M}$, where $\vec{M}$ is a function of the applied H-field and its history. i.e. $\vec{M} = \vec{B}/\mu_0 - \vec{H}$, where I guess your B-field comes from the Preisach model.

  • $\begingroup$ The input into the preisach model ist the external field strength $H$ and the result is the internal flux density $B$. With $\mu_r = \frac{\vec B} {\vec H}$ we have a division by zero if the external H is zero. $\endgroup$
    – alaeX
    Commented Dec 29, 2016 at 15:06
  • $\begingroup$ @alaeX Yes, bad choice for my last sentence. $\mu_r \mu_0 \neq B/H$ if the material has a permanent or even temporary magnetisation when there is no H-field. $\endgroup$
    – ProfRob
    Commented Dec 29, 2016 at 16:58

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.