Software: FEM - Tutorial - Magnetfeld - Kraft und Koppelfluss - Script: Unterschied zwischen den Versionen

Aus OptiYummy
Zur Navigation springenZur Suche springen
K (Die Seite wurde neu angelegt: <div align="center"> [[Software:_FEM_-_Tutoria...)
 
KKeine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
[[Software:_FEM_-_Tutorial_-_Magnetfeld|&uarr;]] <div align="center"> [[Software:_FEM_-_Tutorial_-_Magnetfeld_-_Kraft_und_Koppelfluss|&larr;]] [[Software:_FEM_-_Tutorial_-_Magnetfeld_-_Einbindung_in_OptiY-Workflow|&rarr;]] </div>
[[Software:_FEM_-_Tutorial_-_Magnetfeld|&uarr;]] <div align="center"> [[Software:_FEM_-_Tutorial_-_Magnetfeld_-_Kraft_und_Koppelfluss|&larr;]] [[Software:_FEM_-_Tutorial_-_Magnetfeld_-_Einbindung_in_OptiY-Workflow|&rarr;]] </div>
<div align="center">'''Kraft und Koppelfluss (LUA-Script)'''</div>
<div align="center">'''Kraft und Koppelfluss (LUA-Script)'''</div>
Nachdem wir nun das relativ einfache Verfahren (gewichtetes "Stress-Tensor-Volumenintegral") zur Ermittlung der Magnetkraft kennen gelernt haben, werden wir es in unser LUA-Script einfügen:
=== Magnetkraft ===
Wir öffnen zu Beginn des Postprozesses die LUA-Console mittels "showconsole();":
-------------------------------------------------------------------------------
-- Beginn des Postprozesses                                                  --
-------------------------------------------------------------------------------
-- Kontrollausgaben auf der LUA-Console:
    showconsole();                -- LUA-Console öffnen, falls nicht offen
    mo_zoom(0,-rKugel/3,rKugel/3,rKugel/3); -- Rechteck um Magnet in Kugelsphäre
    mo_showcontourplot (-1); -- Feldlinien normiert auf Bereich (lt.Preferences)
-- mo_showdensityplot(legend,gscale,upper_B,lower_B,type);
    mo_showdensityplot(  1  ,  0  ,  1  ,  0  ,"bmag");
    mo_seteditmode("areas");
    mo_groupselectblock(1);        -- Auswahl Anker-Block -> Group=1 bei Def.!
    Fz_Anker=mo_blockintegral(19); -- (19): z-Komponente der statischen Kraft
    print ("F=", Fz_Anker, "[N]")  -- Kraft in Outputfeld der LUA-Cosole
Die Berechnung des Blockintegrals bezieht sich immer auf den aktuell ausgewählten Block:
* Einen Block wählt man am einfachsten mit '''''groupselectblock(Gruppennummer)'''''.
* Bereiche des Modells, mit welchen später gemeinsame Operationen ausgeführt werden, sollten deshalb bereits bei der Definition einer gemeinsamen Gruppen-Nummer zugeordnet werden.
* Neben der Berechnung des Blockintegrals sind solche Operationen z.B. auch geometrische Transformation (Verschieben, Drehen).
* Im Beispiel muss deshalb im LUA-Script bei der Definition des Ankers in den Block-Properties statt der Gruppe '''0''' die Gruppe '''1''' verwendet werden:
-------------------------------------------------------------------------------
                                -- *********************************************
    mi_seteditmode ("nodes");  -- A=Eisenkreis (Anker) ************************
                                -- *********************************************
    :
    mi_setblockprop ("Stahl",1,0,"<None>",0,'''1''',0);            mi_clearselected;
Anscheinend gibt es kein LUA-Kommando, um die Linien der Stress-Tensor-Maske sichtbar zu machen. Man muss das Einblenden auf der grafischen Oberfläche veranlassen:
* In '''''Edit - Preferencen - Magnetics Output''''' aktiviert man unter den '''Contour Plot Defaults''' die Anzeige der '''Stress Tensor Mask'''.
* Zusätzlich muss man auch noch im '''Contour-Plot-Dialog''' die Anzeige der '''Stress Tensor Mask''' aktivieren!
* Das Einblenden des Integrationspfades erfolgt erst mit einiger Verzögerung bei einer Aktualisierung des Grafikfensters.
Zu Testzwecken sollte man das Ergebnis auf der LUA-Konsole darstellen.





Version vom 10. Juni 2009, 12:56 Uhr

Kraft und Koppelfluss (LUA-Script)


Nachdem wir nun das relativ einfache Verfahren (gewichtetes "Stress-Tensor-Volumenintegral") zur Ermittlung der Magnetkraft kennen gelernt haben, werden wir es in unser LUA-Script einfügen:


Magnetkraft

Wir öffnen zu Beginn des Postprozesses die LUA-Console mittels "showconsole();":

-------------------------------------------------------------------------------
-- Beginn des Postprozesses                                                  --
-------------------------------------------------------------------------------
-- Kontrollausgaben auf der LUA-Console:
   showconsole();                 -- LUA-Console öffnen, falls nicht offen
   mo_zoom(0,-rKugel/3,rKugel/3,rKugel/3); -- Rechteck um Magnet in Kugelsphäre
   mo_showcontourplot (-1); -- Feldlinien normiert auf Bereich (lt.Preferences)
-- mo_showdensityplot(legend,gscale,upper_B,lower_B,type);
   mo_showdensityplot(   1  ,   0  ,   1   ,   0   ,"bmag");
   mo_seteditmode("areas");
   mo_groupselectblock(1);        -- Auswahl Anker-Block -> Group=1 bei Def.!
   Fz_Anker=mo_blockintegral(19); -- (19): z-Komponente der statischen Kraft
   print ("F=", Fz_Anker, "[N]")  -- Kraft in Outputfeld der LUA-Cosole

Die Berechnung des Blockintegrals bezieht sich immer auf den aktuell ausgewählten Block:

  • Einen Block wählt man am einfachsten mit groupselectblock(Gruppennummer).
  • Bereiche des Modells, mit welchen später gemeinsame Operationen ausgeführt werden, sollten deshalb bereits bei der Definition einer gemeinsamen Gruppen-Nummer zugeordnet werden.
  • Neben der Berechnung des Blockintegrals sind solche Operationen z.B. auch geometrische Transformation (Verschieben, Drehen).
  • Im Beispiel muss deshalb im LUA-Script bei der Definition des Ankers in den Block-Properties statt der Gruppe 0 die Gruppe 1 verwendet werden:
-------------------------------------------------------------------------------
                               -- *********************************************
   mi_seteditmode ("nodes");   -- A=Eisenkreis (Anker) ************************
                               -- *********************************************
   :
   mi_setblockprop ("Stahl",1,0,"<None>",0,1,0);             mi_clearselected;

Anscheinend gibt es kein LUA-Kommando, um die Linien der Stress-Tensor-Maske sichtbar zu machen. Man muss das Einblenden auf der grafischen Oberfläche veranlassen:

  • In Edit - Preferencen - Magnetics Output aktiviert man unter den Contour Plot Defaults die Anzeige der Stress Tensor Mask.
  • Zusätzlich muss man auch noch im Contour-Plot-Dialog die Anzeige der Stress Tensor Mask aktivieren!
  • Das Einblenden des Integrationspfades erfolgt erst mit einiger Verzögerung bei einer Aktualisierung des Grafikfensters.

Zu Testzwecken sollte man das Ergebnis auf der LUA-Konsole darstellen.



===>>> Hier geht es bald weiter!

Script vom vorigen Jahr siehe: http://www.ifte.de/lehre/cae/fem/06_magnet/kraft_und_fluss_lua.html