<html>
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252">
</head>
<body>
<p><font size="+1" face="Times New Roman, Times, serif">Hello
Théodore,</font><font size="+1" face="Times New Roman, Times,
serif"><br>
</font></p>
<p><font size="+1" face="Times New Roman, Times, serif">I started to
collect information on the moving band I found in the electric
machine examples and the getDp/gmsh archives (sometimes it's
just a copy of a forum contribution or of a comment in the
examples). Maybe this is helpful. Comments are welcome.<br>
</font></p>
<p><font size="+1" face="Times New Roman, Times, serif">Regards,</font><font
size="+1" face="Times New Roman, Times, serif"> <br>
Alexander </font><br>
</p>
<font face="Times New Roman, Times, serif"><br>
<font size="+1">/* Creates Moving Band geometry for models
containing a single pole<br>
*<br>
* The following variables must exist in the workspace:<br>
* lineMBstator ... line between stator airgap and moving band<br>
* lineMBrotor ... line between rotor airgap and moving band<br>
* p ... total number of pole pairs<br>
* lineMBstatorAux[] ... moving band lines<br>
* 2019/07/24 A. Kreim */<br>
<br>
//------------------------------------------------------------------------------<br>
// Moving Band (information)<br>
/*<f1>-----------------------------------------------------------------------*/<br>
/* The explanations are limited to rotating electric machines.<br>
* The moving band is the interface between stator (fixed) and
rotor (moving).<br>
* In theory a layer of elements are placed in the middle of the
airgap<br>
* (moving band) [1]. Due to the rotation of the rotor the
elements are distorted.<br>
* If the distortion is large enough the moving band will be
remeshed.<br>
*<br>
* The definition of the moving band requires several steps in
the geo (gmsh)<br>
* and pro (getDp) files.<br>
*<br>
* The airgap is split into three parts:<br>
* - stator airgap<br>
* - rotor airgap<br>
* - moving band between stator and rotor airgap<br>
*<br>
* The following information are collected from example files
(machine models [2])<br>
* and the getDp archive:<br>
*<br>
* It is assumed that gmsh and getDp are used.<br>
*<br>
* The explanations are based on a four pole machine with one
pole in the model<br>
* (which is only an example, other configurations are possible)<br>
*<br>
* -----------------*<br>
* | stator |<br>
* -----------------*<br>
* | stator airgap |<br>
* -----------------* <= stator
moving band lines (one pole)<br>
* moving band region (no mesh)<br>
*
-----------------*-----------------*-----------------*-----------------*
<= rotor moving band lines (all poles)<br>
* aux 3 | rotor airgap | aux 1 aux
2<br>
* -----------------*<br>
* | rotor |<br>
* -----------------*<br>
*<br>
* The moving band is defined in the getDp group object:<br>
* MB = MovingBand2D[MovingBand_PhysicalNb, Stator_Bnd_MB,
Rotor_Bnd_MB, SymmetryFactor] ;<br>
*<br>
* MovingBand_PhysicalNb (defined in getDp Group object):<br>
* 'MovingBand_PhysicalNb' needs to contain exactly one
region.<br>
* This region is assigned to the moving band.<br>
* The region is a dummy region since it is not defined in the
mesh<br>
* created by gmsh.<br>
* Typically: MovingBand_PhysicalNb = Region[0] ;<br>
*<br>
* Stator_Bnd_MB (defined in getDp Group object)<br>
* is a Region defined by physical lines.<br>
* The Region contains all lines in the model which are at the
interface of the<br>
* stator airgap and the moving band. If for example one pole
is modelled the<br>
* Region Stator_Bnd_MB typically consists of one line.<br>
*<br>
* Rotor_Bnd_MB (defined in getDp Group object)<br>
* Similar to Stator_Bnd_MB is Rotor_Bnd_MB a region defined
by physical lines.<br>
* Even if not all poles are modelled, the lines must define
the<br>
* boundary between the rotor airgap and the moving band for
the<br>
* complete electric machine (all poles). The corresponding
lines are created<br>
* in gmsh and are for example called rotor_moving_band (line
inside the<br>
* one pole modell) and rotor_moving_band_aux_x (lines outside
the one pole model,<br>
* x is a number e.g. x= 1..3).<br>
* All lines are collected in the Rotor_Bnd_MB region.<br>
* To apply periodic constraints on the moving band there must
be also a Region<br>
* for each line (e.g. rotor_moving_band => Region
Rotor_Bnd_MB_1,<br>
* rotor_moving_band_aux_1 => Region
Rotor_Bnd_MB_AUX_1,<br>
* rotor_moving_band_aux_2 => Region
Rotor_Bnd_MB_AUX_2,<br>
* rotor_moving_band_aux_3 => Region
Rotor_Bnd_MB_AUX_3)<br>
*<br>
* SymmetryFactor (could for example be defined by a onelab
parameter)<br>
* SymmetryFactor is the number of poles of the complete
machine divided by<br>
* the number of poles in the model<br>
* SymmetryFactor = NbrPolesTot/NbrPolesInModel ;<br>
* For a four pole machine:<br>
* SymmetryFactor = 1 -> the complete machine is modeled<br>
* SymmetryFactor = 2 -> half of the machine is modeled<br>
* SymmetryFactor = 4 -> one pole is modeled<br>
*<br>
* Meshing:<br>
* The user has to define the number of elements on the
interface lines<br>
* rotor_moving_band, stator_moving_band and
rotor_moving_band_aux.<br>
* This number must be the same for all lines. This can be
achieved by<br>
* using the transfinite line command in gmsh.<br>
*<br>
* Constraints:<br>
* The following has to be done in the getDp constraints
object:<br>
* ? The degrees of freedom of the moving band line elements
outside the<br>
* model area has to be linked to the degrees of freedom
inside the one pole<br>
* rotor model. ? TODO<br>
*<br>
* The following commands has to be inserted in the getDp object
Resolution<br>
* InitMovingBand2D[MB]<br>
* No explanation - TODO<br>
* MeshMovingBand2D[MB]<br>
* Mesh operation. the moving band itself is not meshed by
the user. This is<br>
* done during the getDp resolution process.<br>
*<br>
* from getDp archieve ("Torque and force calculation based on
Virtual Work prinzip")<br>
* InitMovingBand2D [MB], initialises the structures of the
Moving Band.<br>
* MeshMovingBand2D[MB], does the actual mesh between the
indicated limiting lines<br>
*<br>
* Change of Coordinates - TODO<br>
* ChangeOfCoordinates[NodesOf[Region to rotate],
transformation]<br>
*<br>
* Limitations:<br>
* - The moving band tool in GetDP works with first-order
triangular elements only<br>
* - limited to 2D<br>
*<br>
* References<br>
* [1] N.Sadowski: FINITE ELEMENT TORQUE CALCULATION IN
ELECTRICAL MACHINES WHILE<br>
* CONSIDERING THE MOWEMENT, IEEE TRANSACTIONS ON
MAGNETICS,<br>
* VOL. 28, N0.2, MARCH 1992, p. 1410 - p. 1413<br>
* [2] Onelab: Machine modells pmsm_data.geo pmsm.geo
pmsm_rotor.geo<br>
* pmsm_stator.geo pmsm.pro, available on
<a class="moz-txt-link-abbreviated" href="http://www.onelab.info">www.onelab.info</a> */<br>
</font></font>
<p><font face="Times New Roman, Times, serif"><font size="+1">/*</f1>*/</font></font></p>
<p><font face="Times New Roman, Times, serif"><font size="+1"><br>
</font></font></p>
<div class="moz-cite-prefix">Am 27.11.20 um 18:44 schrieb Théodore
CHERRIÈRE:<br>
</div>
<blockquote type="cite"
cite="mid:20201127184426.Horde.mHtazpzB9DgcOi1aqRoe2w6@webmail.ens-paris-saclay.fr">
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252">
<title></title>
<div>Dear GetDP users,</div>
<div> </div>
<div>I'm new to OneLab, and I'm trying to calculate the average
torque of electric machines. I wrote my own .pro file for this
after following the tutorials, it works but it is quite slow.
For example I couldn't reuse the last iteration solution to
initialize the Newton-Raphson solver ; and I simulate the motion
with hand-made periodic boundary conditions while there are far
better existing implementations like the moving band.</div>
<div><br>
I took a look at the dedicated template, but I didn't find any
documentation to run it from scratch. I especially want to
understand how to use the moving band implementation. Can
someone help me please?</div>
<div> </div>
<div>Best regards,</div>
<div><span style="color: rgb(0, 119, 139); font-family: Helvetica,
Arial; background-color: rgb(255, 255, 255); font-size: 12pt;">Théodore
CHERRIÈRE</span><span style="color: rgb(0, 119, 139);
font-family: Helvetica, Arial; font-size: 12px;
background-color: rgb(255, 255, 255);"> </span><span
class="nd" style="color: rgb(0, 119, 139); font-family:
Helvetica, Arial; background-color: rgb(255, 255, 255);
font-size: 17px;"> |<i><font size="2"> Doctorant </font></i></span><br
class="nd" style="color: rgb(0, 119, 139); font-family:
Helvetica, Arial; font-size: 12px; background-color: rgb(255,
255, 255);">
<span style="color: rgb(0, 119, 139); font-family: Helvetica,
Arial; font-size: 12px; background-color: rgb(255, 255, 255);">Département
EEA - </span><span style="color: rgb(0, 119, 139);
font-family: Helvetica, Arial; font-size: 12px;
background-color: rgb(255, 255, 255);">Laboratoire SATIE,
UMR8029</span><br>
<span style="color: rgb(0, 119, 139); font-family: Helvetica,
Arial; font-size: 12px; background-color: rgb(255, 255, 255);">Pôle
CSEE - groupe de recherche SETE</span><br style="color: rgb(0,
119, 139); font-family: Helvetica, Arial; font-size: 12px;
background-color: rgb(255, 255, 255);">
<a href="tel:+33642398382" style="font-family: Helvetica, Arial;
font-size: 12px; background-color: rgb(255, 255, 255); color:
rgb(0, 119, 139); text-decoration-line: none;"
moz-do-not-send="true"><span class="nl">+33(0)6 42 39 83 82 </span></a><br
class="nd" style="color: rgb(0, 119, 139); font-family:
Helvetica, Arial; font-size: 12px; background-color: rgb(255,
255, 255);">
<span class="nl" style="color: rgb(0, 119, 139); font-family:
Helvetica, Arial; font-size: 9pt; background-color: rgb(255,
255, 255);"><a
href="geo:///?q=%204%20Avenue%20des%20Sciences%20Gif-sur-Yvette%20France"
style="color: rgb(0, 119, 139); text-decoration-line: none;"
target="_blank" moz-do-not-send="true"><span class="nl">ENS
Paris-Saclay</span><span class="nd"> - </span><span
class="nl">4 avenue des sciences 91190 Gif-sur-Yvette</span></a><br
class="nd">
<span style="font-size: 12pt; line-height: 24px;"><a
href="http://www.ens-paris-saclay.fr/" style="color:
rgb(0, 119, 139); text-decoration-line: none;"
target="_blank" moz-do-not-send="true">www.ens-paris-saclay.fr</a></span></span></div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<pre class="moz-quote-pre" wrap="">_______________________________________________
getdp mailing list
<a class="moz-txt-link-abbreviated" href="mailto:getdp@onelab.info">getdp@onelab.info</a>
<a class="moz-txt-link-freetext" href="http://onelab.info/mailman/listinfo/getdp">http://onelab.info/mailman/listinfo/getdp</a>
</pre>
</blockquote>
</body>
</html>