Tutoriels de prise en main

Nous allons commencer tranquillement en suivant un petit tutoriel fortement inspiré par celui du site officiel : Magnetics Tutorials.

Remarque : Je vous encourage d'ailleurs à suivre ce dernier en guise de préparation aux TP afin de vous approprier l'interface graphique.

Explications rapides

Nous nous intéresserons dans les premières séances à des problèmes de magnétostatique. Ainsi, en utilisant le potentiel vecteur magnétique \( {\bf a} \), la formulation forte du problème est l'équation de Maxwell-Ampère : $$ {\bf rot}\left( \nu~{\bf rot}\,{\bf a} - {\bf h_c}\right) = {\bf j} $$ Où :

  • \( \nu ~(= \mu^{-1}) \) est la réluctivité magnétique (inverse ou réciproque de la perméabilité) ;
  • \({\bf h_c}\) est le champ coercitif du milieu (si c'est un aimant permanent) ;
  • \({\bf j}\) est la densité de courant.

Les problèmes considérés seront tous 2D, et l'équation vectorielle ci-dessus se ramènera à une équation scalaire. Deux types de géométries seront étudiés :

  • 2D plan, où : \({\bf a} = \begin{pmatrix} 0 \\ 0 \\ a_z(x,y) \end{pmatrix}\)

  • 2D axisymétrique, où : \({\bf a} = \begin{pmatrix} 0 \\ a_\theta(r,z) \\ 0 \end{pmatrix}\)

Dans les deux cas, les invariants (en \(z\) ou en \(\theta\) ) permettent :

  1. d'assurer implicitement la jauge de Coulomb : $$ \text{div}\,{\bf a} = 0 $$
  2. d'obtenir la formulation forte scalaire équivalente du problème. Elle doit ressembler à quelque chose comme ci-dessous avant développement (donnée à titre purement illustratif) :
    • en 2D plan :
      $$ \text{div}\,\left(\nu~{\bf grad}\,a_z - {\bf u_z}\wedge{\bf h_c}\right) + j_z = 0 $$
    • en 2D axisymétrique :
      $$\text{div}\,\left(\nu~{\bf grad}\,w - {\bf u_\theta}\wedge{\bf h_c}\right) + j_\theta = 0 $$ Avec le potentiel vecteur modifié : \(w\,(R = r^2, z) = r\,a_\theta\,(r,z)\)

Compte-tenu de ce qui précède, le problème peut être résolu en utilisant des éléments finis triangulaires nodaux du premier ordre, où les degrés de liberté (inconnues) seront les valeurs aux nœuds des composantes \(a_z\) ou \(a_\theta\) du potentiel vecteur.

Ainsi, la condition aux limites par défaut (implicite) sur une frontière du domaine sera une condition de Neumann homogène : \[ \frac{\partial\,a_z}{\partial n} = 0, ~ ~ \text{ou} ~ ~ \frac{\partial\,(r\,a_\theta)}{\partial n} = 0\] Celle-ci est équivalente à une induction tangentielle nulle. Par conséquent, sauf imposition par l'utilisateur d'une condition particulière sur un des bords, le champ sera orthogonal à cette frontière par défaut (ce qui n'est généralement pas voulu).

Vous trouverez tous les compléments théoriques dans l'EC A4-EC1 « Électromagnétisme BF analytique et numérique ».

Après résolution, on déduit les valeurs des champs en appliquant l'opérateur rotationnel au potentiel vecteur et en utilisant la loi de comportement magnétique.

Étapes de résolution

Le fonctionnement du logiciel suit donc les étapes classiques d'un logiciel de calcul par éléments finis :

  1. Preprocessing (prétraitement) : Définition de toutes les données du problème, soit :

    • Définition du type de problème : magnétique 2D ou axisymétrique / statique ou harmonique / profondeur...
    • Définition de la géométrie : Points / Lignes / Surfaces ;
    • Définition de la physique : Matériaux / Conditions aux limites (CL) / Termes sources (courants) / Régions extérieures.
    • Affectation de la physique : Définitions des régions physiques (block label), affectation des CL.
    • Définition du maillage : discrétisation des lignes / tailles d'éléments dans les régions.
    • Maillage : création des triangles découpant notre géométrie (éléments) et de leurs sommets (nœuds).
  2. Solver (résolution) : calcul des valeurs de \(a_z\) ou \(a_\theta\) aux nœuds.

  3. Postprocessing (post-traitement) : calculs des grandeurs annexes à partir du potentiel vecteur :

    • Champ d'induction : \({\bf b} = {\bf rot\,a}\) ;
    • Champ magnétique : \({\bf h} = \nu~{\bf b}\) ;
    • Énergie et coénergie magnétiques ;
    • Pertes Joule ;
    • Flux ;
    • Forces et couple.

Remarque : Les étapes de preprocessing et postprocessing sont très clairement dissociées dans FEMM et apparaissent chacune dans deux onglets différents :

  • le premier lié au fichier de description du problème en *.FEM.
    En mode "script", toutes les instructions s'y rapportant commenceront par le préfixe mi_.

  • le second lié au fichier résultat en *.ans.
    Et en mode "script", toutes les instructions s'y rapportant commenceront par le préfixe mo_.

Nous disposons maintenant de toutes les informations pour commencer, alors allons-y !