Auf dieser Seite werden die möglichen Einstellungen für den Löser Elmer beschrieben.
Allgemein
Elmer ist ein multiphysikalischer Löser. Daher können mehrere Hauptgleichungen zur Lösung von Problemen verwendet werden. Die verschiedenen Gleichungen sind hier aufgelistet.
Es gibt Löser-Einstellungen, die für alle Gleichungen verfügbar sind. Diese werden hier beschrieben. Einstellungen, die nur für eine bestimmte Gleichung verfügbar sind, werden auf den Seiten der entsprechenden Gleichung beschrieben.
Elmer bietet die Lösungstypen stationärer Zustand und vorrübergehend und zwei weitere Lösungssysteme, lineares System und nichtlineares System. Das nichtlineare System wird verwendet für die
Strömungsgleichung and
Wärmegleichung.
Einstellungen bearbeiten
Die Löser-Einstellungen findet man in dem Eigenschaften-Editor nachdem man auf eine Gleichung in der Baumansicht geklickt hat. Dort können sie wie jede andere Eigenschaft direkt bearbeitet werden.
Löser
Koordinatensystem
Das Standardkoordinatensystem ist „Kartesisch 3D“. Bei einigen Gleichungen können nicht alle Koordinatensysteme verwendet werden. Dies ist auf den Wiki-Seiten der entsprechenden Gleichungen vermerkt.
Zeitschritte (Transienten-Analysen)
Hinweis: FreeCAD 0.20.x bietet bereits die folgenden Einstellungen, aber es wird nur das letzte Zeit-Ergebnis ausgegeben. Ab FreeCAD 0.21 erhält man eine Ausgabe für die verschiedenen Zeiten.
Für transiente Analysen müssen die Zeitschritte definiert werden. Dies erfolgt über die folgenden Einstellungen:
- Daten-EigenschaftBDFOrder: Reihenfolge der Methode BDF (BDF-Verfahren (Backward Differentiation Formula)). Es wird empfohlen, die Standardeinstellung von 2 zu verwenden.
- Daten-EigenschaftOutput Intervals: Eine Anordnung von Intervallen. Bei jedem Intervall-Zeitschritt wird eine Löser-Ergebnisdatei ausgegeben. Wenn beispielsweise bei jedem dritten Zeitschritt eine Ergebnisdatei ausgegeben werden soll, den Wert auf 3 setzen. Die Anordnung entspricht den Daten-EigenschaftTimestep Intervals. Um beispielsweise Ergebnisse nach 25 % der Gesamtzeit zu erhalten und wenn das letzte Ergebnis die Endzeit sein soll, setzen man Daten-EigenschaftOutput Intervals auf 5 und Daten-EigenschaftTimestep Intervals auf 21. eingeführt in 0.21
- Daten-EigenschaftTimestep Intervals: Eine Anordnung von Zeitintervallen (Anzahl der Zeitschritte). Der Löser führt die Zeitintervalle nacheinander aus. Wenn der Löser beispielsweise die ersten 10 Sekunden in Schritten von 0,1 Sekunden berechnen soll, dann 50 Sekunden in Schritten von 1 Sekunde und dann anhalten soll, müssen man die Zeitschrittintervalle [100, 50] und die Zeitschrittgrößenintervalle [0,1, 1,0] einstellen.
- Daten-EigenschaftTimestep Sizes: Eine Anordnung von Zeitschrittgrößen. Die Zeiteinheit ist die Sekunde. Die Anordnung entspricht den Daten-EigenschaftTimestep Intervals.
Hinweis:
- Um die gewünschte Gesamtzeit einer Transientenanalyse zu erreichen, legt man die richtige Anzahl und Größe der Zeitschritte fest. Um beispielsweise 50 Sekunden eines Prozesses in Schritten von 10 Sekunden zu simulieren, benötigt man 5 solcher Zeitschritte. Man setzt daher die Zeitschrittintervalle auf [5] und die Zeitschrittgrößen auf [10].
- Obwohl die Begriffe "Zeiten" und "Sekunden" verwendet werden, handelt es sich bei den Zeiten tatsächlich um Löser-Fortschritte, wenn die Analyse nicht zeitabhängig ist.
Informationen zur Visualisierung der Ergebnisse findet man unter Elmer-Visualisierung.
Typ
- Daten-EigenschaftSimulation type: Wenn die Simulation „Steady state” (stationär), „Transient” (transient) oder einfach „Scanning” (Scannen) ist. Transient bedeutet, dass die Entwicklung über die Solver-Zeit berechnet wird. Die erforderlichen Einstellungen findet man im Abschnitt Timestepping (Zeitschritte).
- Daten-EigenschaftSteady State Max Iterations: Die maximale Anzahl von Löser-Läufen im stationären Zustand.
- Daten-EigenschaftSteady State Min Iterations: Die Mindestanzahl der Steady-State-Solver-Durchläufe.
Gleichung
Basis
Alle Gleichungen haben diese Eigenschaften:
- DatenBezeichnung: Name der Gleichung in der Baumansicht.
- DatenPriorität: Zahl, die die Priorität dieser Gleichung gegenüber den anderen Gleichungen in der Analyse bestimmt. Die Gleichung mit der höchsten Zahl in der Analyse wird zuerst gelöst. Wenn zwei Gleichungen dieselbe Prioritätszahl haben, wird diejenige zuerst gelöst, die in der Baumansicht an erster Stelle steht.
- DatenStabilisieren: Wenn auf "true" gesetzt, verwendet der Solver die stabilisierte Finite-Elemente-Methode zur Lösung der Wärmeleitungsgleichung mit einem Konvektionsterm. Wenn auf "false" gesetzt, wird stattdessen die Residual Free Bubble (RFB)-Stabilisierung verwendet. Wenn die Konvektion dominiert, muss die Stabilisierung verwendet werden, um die Gleichung erfolgreich zu lösen.
Lineares System
Dieses System hat folgende Eigenschaften:
- Daten-EigenschaftBiCGstabl Degree: Polynomialgrad für die iterative Lösungsmethode BiCGStabl. Dies hat nur dann Auswirkungen, wenn Daten-EigenschaftLinear Solver Type auf Iterative und Daten-EigenschaftLinear Iterative Method auf BiCGStabl gesetzt ist. Es wird empfohlen, mit dem Standardwert 2 zu beginnen.
- Daten-EigenschaftIdrs Parameter: Parameter für die iterative Lösungsmethode Idrs. Dies hat nur dann eine Auswirkung, wenn Daten-EigenschaftLinear Solver Type auf Iterative und Daten-EigenschaftLinear Iterative Method auf Idrs gesetzt ist. Es wird empfohlen, mit dem Standardwert 2 zu beginnen. Durch Setzen des Parameters auf 3 kann die Lösungsgeschwindigkeit etwas erhöht werden. Bei Strömungsanalysen ist die Methode Idrs bis zu 30 % schneller als die Standardmethode BiCGStab.
- Daten-EigenschaftLinear Direct Method: Verfahren zur direkten Lösung. Dies hat nur dann eine Auswirkung, wenn Daten-EigenschaftLinear Solver Type auf Direct gesetzt ist.
Die möglichen Verfahren sind Banded, MUMPS und Umpfpack. Es muss beachtet werden, dass MUMPS in der Regel installiert sein muss, bevor es verwendet werden kann.
Hinweis: Wenn mehr als einen CPU-Kern für den Löser verwendet werden soll (eingeführt in 0.21), kann nur MUMPS verwendet werden. MUMPS muss manuell in Elmer installiert werden. Es ist nur als Download auf Anfrage per E-Mail erhältlich.
- Daten-EigenschaftLinear Iterations: Maximale Anzahl von Iterationen für einen iterativen Solver-Lauf. Dies hat nur dann eine Auswirkung, wenn Daten-EigenschaftLinear Solver Type auf Iterative gesetzt ist.
- Daten-EigenschaftLinear Iterative Method: Verfahren für die iterative Lösung. Dies hat nur dann eine Auswirkung, wenn Daten-EigenschaftLinear Solver Type auf Iterative gesetzt ist.
- Daten-EigenschaftLinear Preconditioning: Verfahren zur Vorkonditionierung. Informationen zur Vorkonditionierung findet man in dieser Präsentation (Seite 8) von Elmer.
- Daten-EigenschaftLinear Solver Type: Ob die Lösung Direct oder Iterative erfolgt.
- Daten-EigenschaftLinear System Solver Disabled: Deaktiviert den linearen Löser. Diese Option nur in besonderen Fällen verwenden. Damit kann eine Gleichung vorübergehend deaktiviert werden, da sie dann nicht gelöst wird. Es gibt jedoch Fälle, in denen der Löser stattdessen in eine Endlosschleife gerät.
- Daten-EigenschaftLinear Tolerance: Die Toleranz, bei der der Löser stoppt. Wenn der Fehler kleiner als die Toleranz ist, wird der Löser-Lauf beendet. Andernfalls wird die volle Anzahl von Daten-EigenschaftLinear Iterations durchgeführt. Im Elmer-Löser-Protokoll sieht man, wie der Fehler während des Löser-Laufs minimiert wird. (Sehen Sie sich im Protokoll am Ende jeder Löser-Iteration den Wert hinter Relative Change an). Wenn der Wert nicht unter einen bestimmten Wert sinkt, aber einen Wert über der aktuellen Toleranz erreicht, der für einen akzeptabel ist, kann die Toleranz erhöht werden.
Nichtlineares System
Dieses System ist iterativ und hat die folgenden Eigenschaften:
- Daten-EigenschaftNonlinear Iterations: Maximal Anzahl von Iterationen.
- Daten-EigenschaftNonlinear Newton After Iterations: Der nichtlineare Löser beginnt mit dem robusten Picard-Algorithmus. Nach einigen Iterationen wird der Algorithmus zum Newton-Algorithmus gewechselt, der schneller konvergiert, aber weniger robust ist, wenn die Ergebnisse vorübergehend divergieren (es können Schwankungen auftreten). Diese Einstellung legt die Anzahl der Iterationen fest, nach denen vom Picard- zum Newton-Algorithmus gewechselt wird.
Hinweis: Der Wechsel erfolgt, sobald entweder Daten-EigenschaftNonlinear Newton After Iterations oder Daten-EigenschaftNonlinear Newton After Tolerance erreicht ist.
- Daten-EigenschaftNonlinear Newton After Tolerance: Entspricht Daten-EigenschaftNonlinear Newton After Iterations, jedoch wird hier eine Toleranz festgelegt. Die Toleranz ist die Norm des nichtlinearen Residuals. Wird diese erreicht, erfolgt der Wechsel vom Picard- zum Newton-Algorithmus.
- Daten-EigenschaftNonlinear Tolerance: Die Toleranz, bei der der Löser stoppt. Ist der Fehler kleiner als die Toleranz, wird der Löser-Lauf beendet. Andernfalls wird die volle Anzahl an Daten-EigenschaftNonlinear Iterations durchgeführt. In der Elmer-Ausgabe sieht man, wie der Fehler während des Löser-Laufs minimiert wird. Wenn er nicht unter einen bestimmten Wert sinkt, der akzeptabel ist, aber über der aktuellen Toleranz liegt, kann man die Toleranz erhöhen.
- Daten-EigenschaftRelaxation Factor: Dies ist DIE wichtigste Einstellung für den Fall, dass der Löser nicht konvergiert:
Entspannungsfaktor
Wenn die Ergebnisse der Löser-Iteration numerisch oszillieren, können die Löser-Ergebnisse nicht zu einem endgültigen, stabilen Wert konvergieren. Um dies zu vermeiden, wird die berechnete Variable der i-ten Iteration/Löser-Durchlauf nicht als Eingabe für die nächste Iteration verwendet, sondern , ein Wert, der mit dem Ergebnis der vorherigen Iteration "gedämpft" wird. Der Relaxationsfaktor ist dabei definiert als
Bei dem Standardwert von 1,0 wird also keine Dämpfung verwendet. Je kleiner ist, desto größer ist die Dämpfung und desto länger ist die Konvergenzzeit. Wenn der Löser also nicht konvergiert, ändert man den Relaxationsfaktor zunächst auf 0,9, dann auf 0,8 und so weiter. Werte unter 0,3 sind ungewöhnlich. Wenn man solche Werte benötigt, sollte man sich die Mathematik der Analyse genauer ansehen.
In Fällen, in denen man eine ordnungsgemäße Konvergenz erhält, kann man auf einen Wert über 1,0 setzen, um die Konvergenz zu beschleunigen.
Stationärer Zustand
Dieser Teil der Einstellungen hat nur eine Eigenschaft:
- Daten-EigenschaftSteady State Tolerance: Die spezifische Konvergenztoleranz für den stationären Zustand oder das gekoppelte System. Alle Gleichungslöser müssen ihre eigenen Toleranzen für die Variable erfüllen, die sie berechnen, bevor das gesamte System als konvergiert gilt. Das Toleranzkriterium lautet:
wobei die Toleranz im stationären Zustand und die berechnete Variable in der i-ten Iteration/Lauflänge des Lösers ist.
FEM
- Solve: Solver CalculiX, Solver Elmer, Solver Mystran, Solver Z88; Mechanical Equations: Elasticity Equation, Deformation Equation; Electromagnetic Equations: Electrostatic Equation, Electricforce Equation, Magnetodynamic Equation, Magnetodynamic 2D Equation, Static Current Equation; Flow Equation, Flux Equation, Heat Equation, Solver Job Control, Run Solver
- Results: Purge Results, Show Result, Apply Changes to Pipeline, Post Pipeline From Result, Pipeline Branch, Warp Filter, Scalar Clip Filter, Function Cut Filter, Region Clip Filter, Contours Filter, Glyph Filter, Line Clip Filter, Stress Linearization Plot, Data at Point Clip Filter, Calculator Filter; Filter Functions: Plane, Sphere, Cylinder, Box; Data Visualizations: Create Lineplot, Create Histogram, Create Table
Anwenderdokumentation
- Erste Schritte
- Installation: Herunterladen, Windows, Linux, Mac, Zusätzliche Komponenten, Docker, AppImage, Ubuntu Snap
- Grundlagen: Über FreeCAD, Graphische Oberfläche, Mausbedienung, Auswahlmethoden, Objektname, Voreinstellungseditor, Arbeitsbereiche, Dokumentstruktur, Objekteigenschaften, FreeCAD unterstützen, Spenden
- Hilfe: Anleitungen, Videoanleitungen
- Arbeitsbereiche: Std Base, Arch, Assembly, BIM, CAM, Draft, FEM, Inspection, Material, Mesh, OpenSCAD, Part, PartDesign, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Surface, TechDraw, Test Framework