Dreidimensionales Fachwerk
Die nebenstehend zu sehende Brückenkonstruktion wurde mit dreidimensionalen Fachwerkstäben modelliert. Das FEM-Berechnungsmodell ist in der Datei Fof.dat gespeichert und wird im nachfolgenden Matlab-Script eingelesen. Mit Matlab-Femset wird das lineare Gleichungssystem erzeugt, mit dem die Knotenverschiebungen berechnet werden können. Bei 400 Stäben und 136 Knoten ergibt sich ein Gleichungssystem mit 408 Gleichungen.
Das Matlab-Script PraeKondMatlab1.m formt die Koeffizientenmatrix in eine "Sparse matrix" (Zeile 8) um, bevor das Gleichungssystem zunächst mit dem Matlab-Standard-Solver (Zeile 11) gelöst wird. In Zeile 13 wird die Diagonalmatrix erzeugt, die den 9 Matlab-Functions (Zeilen 15 bis 23) für die Präkonditionierung übergeben wird:
Im Command Window findet man das Ergebnis:
Nur 7 der 9 Verfahren führen zur Konvergenz. Die Functions gmres und lsqr versagten schon bei den Testrechnungen ohne Präkonditionierung, sie werden deshalb für die weiteren Testrechnungen nicht mehr verwendet.
Alle übrigen Verfahren konvergieren im Durchschnitt nach etwas mehr als 300 Iterationsschritten. Dies ist eine Verbesserung um etwa 25% gegenüber der Berechnungen ohne Präkonditionierung, bei denen durchschnittlich etwas mehr als 400 Iterationsschritte benötigt wurden.
|