FEM EquationMagnetodynamic

From FreeCAD Documentation
Other languages:

FEM EquationMagnetodynamic

Menu location
Solve → Electromagnetic Equations → Magnetodynamic equation
Default shortcut
Introduced in version
See also
Magnetodynamic 2D equation

This equation perform analyses using the Maxwell's equations.

For info about the math of the equation, see the Elmer models manual, section Computation of Magnetic Fields in 3D.

If it is possible to calculate in 2D, simpler math can be used resulting in faster solving times. For 2D, FreeCAD supports therefore Elmer's Magnetodynamic 2D equation.


  1. After adding an Elmer solver as described here, select it in the tree view.
  2. Now either use the toolbar button or the menu Solve → Electromagnetic Equations → Magnetodynamic equation.
  3. Change the equation's solver settings or the general solver settings if necessary.
  4. It is recommend to set in the Linear System solver settings the DataLinear Iterative Method to BiCGStabl , the DataBiCGstabl Degree to 4 and DataLinear Preconditioning to None. This assures the equation can be solved in most cases. If so, these parameters can be changed if necessary.

Solver Settings

For the general solver settings, see the Elmer solver settings.

The magnetodynamic equation provides these special settings:

Linear System

  • DataLinear System Refactorize: Refactorizes the system matrix.


  • DataAngular Frequency: The harmonic actuation frequency. It is only used if DataIs Harmonic is set to true.
  • DataAutomated Source Projection BCs: See Elmer Elmer models manual, section Computation of Magnetic Fields in 3D for info.
  • DataFixInput Current Density: Ensures divergence-freeness of current density.
  • DataIs Harmonic: If the driving force is harmonically actuated (AC current). If set to true, DataAngular Frequency must have a value > 0.
  • DataLagrange Gauge Penalization Coefficient: See Elmer Elmer models manual, section Computation of Magnetic Fields in 3D for info.
  • DataQuadratic Approximation: Enables second-order approximation of driving current.
    Note: The default order of Gmsh meshes in FreeCAD is 2nd order. When using 2nd order meshes, it is mandatory to set this option to true. Otherwise you will get this error: ERROR:: GetEdgeBasis: Can't handle but linear elements, sorry.
    However, for most applications, a 1st order mesh is sufficient. An exception is the case when an Isocontour filter should be applied to visualize the results. In this case using a 2nd order mesh and thus setting DataQuadratic Approximation to true is recommended.
  • DataStatic Conductivity: See Elmer Elmer models manual, section Computation of Magnetic Fields in 3D for info.
  • DataUse Lagrange Gauge: See Elmer Elmer models manual, section Computation of Magnetic Fields in 3D for info.
  • DataUse Piola Transform: Must be true if basis functions for edge element interpolation are selected to be members of optimal edge element family or if second-order approximation is used.
  • DataUse Tree Gauge: See Elmer Elmer models manual, section Computation of Magnetic Fields in 3D for info. Will be ignored if DataUse Piola Transform is true.


  • DataCalculate Current Density: Calculates the current density.
  • DataCalculate Electric Field: Calculates the Electric vector field.
  • DataCalculate Elemental Fields: Calculates the electromagnetic fields for every mesh element. This is useful to see discontinuities in meshes.
    Note: at the moment FreeCAD cannot display these results properly. Therefore it is at the moment of no practical use.
  • DataCalculate Harmonic Loss: Calculates the linear and quadratic harmonic power loss. See the Elmer models manual, section Loss Estimation Using the Fourier Series for details
  • DataCalculate Joule Heating: Calculates the Joule heating.
  • DataCalculate Magnetic Strength: Calculates the Magnetic field strength.
  • DataCalculate Maxwell Stress: Calculates the Maxwell stress tensor field.
  • DataCalculate Nodal Fields: Calculates the fields for every mesh node. The default is true. If no other DataCalculate * is set to true, it only calculates the magnetic flux density.
  • DataCalculate Nodal Forces: Calculates the forces for every mesh node. The results can be used for further mechanical analysis.
  • DataCalculate Nodal Heating: Calculates the Joule heating scalar field for every mesh node.

Analysis Feature Information

The magnetodynamic equation takes the following analysis features into account if they are set:


The available results depend on the solver settings. If none of the DataCalculate * settings was set to true, only the electric (called av in the results) potential is calculated. Otherwise also the corresponding results will be available.

The possible results are:

  • Current density in
  • Electric field vector values in
  • Harmonic power loss in
  • Magnetic flux density in
  • Maxwell stress tensor values in
  • Magnetic field strength in
  • Nodal force in
  • Joule heating in
  • Potential in