Was ist ein Solver bei SOLIDWORKS Simulation?
Ziel einer FEM Berechnung ist es im Allgemeinen, die Belastung eines Bauteils und die daraus resultierenden Verformungen und Spannungen zu berechnen.
Stellt man sich eine belastete Feder vor, so wird die Verformung folgendermassen berechnet:
k * u = F
Dabei ist
- F die auf die Feder wirkende Kraft
- k die Federsteifigkeit
- u der Weg, um den die Feder verlängert bzw. eingedrückt wird
Die reale Belastung eines Bauteils ist jedoch dreidimensional, wirkt in verschiedene Richtungen und die Steifigkeit des Bauteils ist an jedem Punkt unterschiedlich. Daher muss das Problem in Matrixschreibweise formuliert werden. Die Matrixschreibweise stellt ein Gleichungssystem dar, das die Beziehung zwischen Lasten und Verschiebungen für jeden Knoten enthält:
Dabei ist
- K die Steifigkeitsmatrix
- u die Unbekannte (Verschiebung)
- F die äussere Last
Hier kommt der Solver ins Spiel. Der Solver ist das Programm, das dieses Gleichungssystem löst und damit die Knotenverschiebungen im FEM-Modell berechnet.
Welche Solvertypen gibt es in SOLIDWORKS Simulation?
SOLIDWORKS Simulation stellt zwei direkte und einen iterativen Solver zur Verfügung.
Die Auswahl des Solvers erfolgt durch Rechtsklick auf den Studiennamen in den Eigenschaften:
In den Eigenschaften kann der Solver manuell geändert werden:
Hier finden Sie die direkten Solver „Intel direct sparse“, „Direct sparse für grosse Modelle“ und den iterativen Solver FFEPlus.
Was sind die Unterschiede zwischen den Solvern?
Direkte Solver verwenden für das oben beschriebene Gleichungssystem eine andere Lösungsstrategie als iterative Solver. Sie lösen das Problem in einem einzigen Schritt.
Ein iterativer Solver hingegen löst das Gleichungssystem, indem er eine Lösung für das Problem annimmt und dann die notwendigen Kräfte für diese Lösung berechnet. Diese werden dann mit den tatsächlichen Kräften verglichen. Je nach Abweichung wird eine neue Lösung für das Problem angenommen und die Kräfte werden erneut berechnet. Dieser Prozess wird so lange fortgesetzt, bis sich die Kräfte für die angenommene Lösung und die tatsächlichen Kräfte ausreichend angenähert haben.
Für kleine Modelle (bis ca. 25.000 Freiheitsgrade, d.h. Möglichkeiten, in die sich die Knoten bewegen können) arbeiten alle Solver effizient.
Je grösser das Modell wird, desto geeigneter ist im Allgemeinen der iterative Solver.
Direkte Solver benötigen mit zunehmender Modellgrösse tendenziell mehr Arbeitsspeicher.
Ist dieser erschöpft, muss ausgelagert werden. Aus diesem Grund wurde der „Direct Sparse Solver für grosse Modelle“ implementiert, der spezielle Algorithmen zur Speicherverwaltung verwendet.
Die Vorteile des direkten Solvers liegen in der Behandlung von Kontaktbedingungen. Wenn Sie viele Interaktionen vom Typ Kontakt in Ihrem Modell haben, kann die Verwendung des direkten Solvers Vorteile bieten.
Unabhängig vom gewählten Solver sollten die Ergebnisse in beiden Fällen nahezu identisch sein, auch wenn die Performance je nach Anwendungsfall sehr unterscheiden kann.