3D torque computation issue
Hello,
I am implementing a 3D model of an axial flux machine with one rotor and two stators.
The example taken as reference is the static formulation in the machine_magstadyn_a.pro .
In the example, the Maxwell tensor is given by:
T_max[] = ( SquDyadicProduct[$1] - SquNorm[$1] * TensorDiag[0.5, 0.5, 0.5] ) / mu0 ;
This is equivalent to the definition \sigma _{ij}={\frac {1}{\mu _{0}}}B_{i}B_{j}-{\frac {1}{2\mu _{0}}}B^{2}\delta _{ij}
, and seems reusable for the 3D case.
(https://en.wikipedia.org/wiki/Maxwell_stress_tensor)
Then the torque is computed (see comments in code) with the following integral:
\int_S (\vec{r} \times (T_{max} \vec{n}) ) / ep
, with ep = |S| / (2\pi r_{avg})
, where I understand that the ep
term comes from the fact that the integration happens within the airgap volume (surface in 2D) instead of surface (Line in 2D).
With the folowing code implementation:
{ Name Torque_Maxwell ; Value { Integral { [ CompZ [ XYZ[] /\ (T_max[{d a}] * XYZ[]) ] * 2*Pi*AxialLength/SurfaceArea[] ] ; In Domain ; Jacobian Vol ; Integration I1; }}}
The torque is estimated over the rotor air gap and stator air gap surfaces (2D), called by Print[ Torque_Maxwell[Rotor_Airgap]...
during a PostOperation.
Trying to formulate the torque for the 3D case based on the stress tensor, I come up to the following solution:
[ CompZ [ XYZ[] /\ (T_max[{d a}] * XYZ[]) ] * 2*Pi / GetVolume[] ]
The group I pass during the function call is both air discs at the airgap between the rotor and stator.
However the results seem quite wrong. Do you have any suggestion on what to change in this line?
Update -
Giving another try at following the given formula and replacing the surface by the volume, I would write:
[ CompZ [ XYZ[] /\ (T_max[{d a}] * Unit[Vector[0, 0, Z[]]]) ] * Norm[Vector[X[], Y[], 0]] * 2 * Pi / GetVolume[] ]
which I assume corresponding to \int_S (\vec{r} \times (T_{max} \vec{n}) ) / ep
, with ep = |V| / (2\pi r_{avg})
or
[ CompZ [ XYZ[] /\ (T_max[{d a}] * Unit[Vector[0, 0, Z[]]]) ] / HeightDisc ]
which I assume corresponding to \int_S (\vec{r} \times (T_{max} \vec{n}) ) / HeightDisc
, with HeightDisc = |V| / |S|
As the integration is happening in the (surrounding) volume but the surface integral is required.
Knowing that both air discs are above and below the Z=0 plane, simplifying the normal to Unit[Vector[0, 0, Z[]]]