SFEMaNS  version 4.1 (work in progress)
Reference documentation for SFEMaNS
 All Classes Files Functions Variables Groups Pages
The function mu_bar_in_fourier_space

It is used to define either a magnetic permeability \(\mu(r,z)\) or a stabilization term \(\overline{\mu}(r,z)\) when the magnetic permeability depends of the time or the azimuthal direction \(\theta\). We refer to the section Extension to magnetic permeability variable in time and azimuthal direction for more information on the formulation of the Maxwell equations in SFEMaNS.

This function defines a scalar function depending only of the radial and vertical coordinates. The function is either defined on a number of nodes or one gauss points of the finite element mesh.

Inputs and outputs

The inputs of this function are the following:

  1. H_mesh is the mesh where the magnetic field is approximated.
  2. nb is the label of the first node or gauss point considered. It is an integer.
  3. ne is the label of the last node or gauss point considered. It is an integer.
  4. pts is a real valued tabular that contains two columns with dimensions (2,ne-nb+1). The tabular pts(1,:) contains the radial cylindrical coordinate of each nodes considered. Respectively, pts(2,:) contains the vertical coordinates of these nodes.
  5. pts_id is the label of the domain that contains the gauss points considered. This input is optional, it is only used when doing the computation on gauss points.

The output of this function is a real valued tabular vv of dimension ne-nb+1.

Remark: The input pts_id is only used when the magnetic permeability presents a discontinuity. Such discontinuities occur on an interface between two domains where the magnetic field is approximated. The presence of a jump is set in the data file with the following lines:

===Number of interfaces in H mesh
??
===List of interfaces in H mesh
??

The jump is treated with a penalty method.

Exemple

Here is an exemple where we consider the magnetic permeability \(\mu(r,z)=1 + r z^2\).

The corresponding code lines are written as follows.

IF (PRESENT(pts)) THEN
DO n = 1, SIZE(rr,2)
vv(n)=1.d0+pts(1,n)*pts(2,n)**2
END DO
ELSE
DO n = 1, SIZE(rr,2)
r=H_mesh%rr(1,nb+n-1)
z=H_mesh%rr(2,nb+n-1)
vv(n)=1.d0 + r*z**2
END DO
END IF
RETURN

We refer to the sections Examples with manufactured solutions (see tests 17, 18, 22, 23 or 29) and Examples on physical problems for more examples.