Magnetostriction
2D model of inductor with magnetostriction.

Download model archive (magnetostriction.zip) 
Contents
Introduction
To run the model, open choke.pro with Gmsh.
This 2D model computes the mechanical deflections of a twocolumn inductor (choke) with distributed air gaps along the limbs. It takes into account:
 the magnetostriction effect in magnetic sheets
 the Maxwell stress tensor into the whole domain (airgaps and magnetic core)
Magnetostatics and structural mechanics are weakly coupled, assuming that mechanical deflections do not modify the magnetic field distribution. The magnetic field distribution is first computed, and the resulting Maxwell stress tensor and magnetostriction strain tensor are then calculated. The mechanical model also allows to estimate the different resonant frequencies or the inductor.
File details:
 choke.geo: parametrized geometry of the twolimb inductor
 choke.pro: .pro file associated to choke.geo
 Magsta2D.pro: the magnetostatics physics
 Elasticity_2D.pro: the structural mechanics
 jacobian.pro: the integration and Jacobian methods
 magnetostriction.txt: the magnetostriction curve \(\Lambda(B)\)
Assumptions
Geometry
A two columns inductor is modelled and the geometry can be modified using parameters:
 column height
 column width
 number of airgap
 airgap thichness
 yoke length
 winding thickness
Boundaries
Magnetic
The magnectic vector potential a is fixed to 0 on the external boundaries of the system. The current density is imposed into the winding and deduced thanks to the nominal current, the number of turns and the cross section of the winding.
Mechanical
The inferior yoke is assumed fixed (displacement u=0).
Magnetics
A 2D Magnetostatic solver is used for this study. The model computes the magnectic vector potential a. Materials are considered linear and sources of currents are directly imposed. The solver is coded in the file MagSta_2D.pro
\( \begin{eqnarray} \nabla^2 \mathbf{A} + \mu_0 \mu_r \mathbf{j_z} = \mathbf{0} \label{eq:vector_potential} \end{eqnarray} \)
Different postproccessing are predefined:
 The flux density B
 The magnetic field H
 The energy per length unit (J/m)
Maxwell Stress Tensor
The Maxwell Stress Tensor is deduced directly from the magnetic field and is injected into the mechanical solver.
\(\begin{eqnarray} \sigma_{mst}= \frac{1}{\mu_0\mu_r}\begin{bmatrix} B_x^2 \frac{1}{2}B^2 & B_xB_y\\ B_xB_y & B_y^2 \frac{1}{2}B^2 \end{bmatrix} \label{eq:stress} \end{eqnarray}\)
The following code in used :
sig_maxwell[]=Vector[ CompX[\$1]*CompX[\$1]Norm[\$1]*Norm[\$1]/2, CompY[\$1]*CompY[\$1]Norm[\$1]*Norm[\$1]/2, CompX[\$1]*CompY[\$1]];
Magnetostriction strain tensor
The magnetostriction tensor is obtained using the flux density map and with the magnetostriction curve of the material witch links the strain with the flux density. This kind of curve is presented on the following figure:
The curve permits to determine the strain tensor in the referential (Bt,Bn) presented below:
The strain tensor is decomposed into two phenomenas: the normal and tangential magnetostriction, called respectively \(\lambda_N\) and \(\lambda_T\). \(\lambda_T\) could be obtained using experimental data, or by asuming that magnetostriction doesn't modify the volume, a simple relation is obtained\[\lambda_N=\lambda_N/2\]
\( \begin{eqnarray} \epsilon_{(B_t,B_n)}=\begin{bmatrix} \lambda_T & 0 \\ 0 & \lambda_N \end{bmatrix} \label{eq:strain_tensor1} \end{eqnarray} \)
In order to be injected into the mechanical model, the strain tensor needs to be converted into the (x,y) basis. This is done by computing the change of basis matrix P. In this way the strain tensor in the basis (x,y) is determined\[ \begin{eqnarray} P=\begin{bmatrix} \frac{B_x}{B} & \frac{B_y}{B} \\ \frac{B_y}{B} & \frac{B_x}{B} \\ \end{bmatrix} \label{eq:P} \end{eqnarray} \]
\( \begin{eqnarray} \epsilon_{(x,y)}=P \epsilon_{(B_t,B_n)}\ P^t \label{eq:PPT} \end{eqnarray} \)
\( \begin{eqnarray} \epsilon_{(x,y)}=\begin{bmatrix} \frac{1}{B^2}(\lambda_T B_x^2+\lambda_N B_y^2) & \frac{B_xB_y}{B^2}(\lambda_T\lambda_N) \\ \frac{B_xB_y}{B^2}(\lambda_T\lambda_N) & \frac{1}{B^2}(\lambda_T B_y^2+\lambda_N B_x^2) \\ \end{bmatrix} \label{eq:strain_xyz} \end{eqnarray} \)
The following code in used :
lamb[]=Vector[lambdap[Norm[\$1]],lambdaper[Norm[\$1]],0]; sig_vect[]=C_m[]*lamb[\$1]; sig_mat[]=Tensor[CompX[sig_vect[\$1]], CompZ[sig_vect[\$1]] , 0, CompZ[sig_vect[\$1]], CompY[sig_vect[\$1]] , 0, 0 , 0 , 0 ]; // Change of basis P[]=Tensor[ CompX[\$1]/Norm[\$1] , CompY[\$1]/Norm[\$1] , 0, CompY[\$1]/Norm[\$1] , CompX[\$1]/Norm[\$1] , 0, 0 , 0 , 1 ]; PP[]=Transpose[P[\$1]]; sig_PPP[]=P[\$1]*sig_mat[\$1]*PP[\$1]; sig_magnetostriction[]=Vector[CompXX[sig_PPP[\$1]],CompYY[sig_PPP[\$1]],CompXY[sig_PPP[\$1]]];
Mechanical
A 2D mechanical solver is added to the model. This harmonic solver permits to compute the deflection of the inductor due to the magnetostriction and the Maxwell stress tensor. It also permits to obtain the eigen modes of the magnetic core. No damping is currently added so the resonance magnitude is only limited by numerical damping effect.
Resolution
3 resolution methods are provided:
 A pure magnetostatic study
 A magnetomechanical study with allows to estimate the complete deflection of the magnetic core due to magnetic effects (combined effect of magnetostrictive and reluctant forces)
 A mechanical study to obtain the eigenmodes of the inductor.
Models developed by Mathieu Rossi, Jean Le Besnerais and Christophe Geuzaine. Copyright (c) 2015 EOMYS
