Finite-Elemente-Verfahren (kurz: FEM für finite elemente methods) basieren auf der schwachen Formulierung von PDE. Hauptmerkmal ist, dass für die Diskretisierung Basisfunktionen mit sehr kleinem Träger
verwendet werden. Dadurch entsteht ein lineares Gleichungssystem mit dünn besetzter Systemmatrix, welches effizient gelöst werden kann. Für die Diskretisierung werden keine regelmäßigen Gitter von Stützstellen benötigt, sodass auch PDE auf komplexen Gebieten mittels FEM gelöst werden können.
11.1Ausgangspunkt¶
Gegeben sei die schwache Formulierung einer PDE in der Form
wobei , , gegeben sind und gesucht ist (vgl. Abstrakte Form schwacher Formulierungen).
Weiter sei ein endlichdimensionaler Teilraum von und sei eine Basis in , d.h. jede Funktion in kann als Linearkombination der Funktionen dargestellt werden. Durch Einschränkung der schwachen Formulierung auf erhalten wir das diskretisierte Problem
mit der rechten Seite
und der Systemmatrix (hier auch Steifigkeitsmatrix genannt)
(vgl. Diskretisierung der abstrakten Formulierung). Aus dem Vektor erhalten wir mittels
die gesuchte Lösung der (schwachen Formulierung der) PDE.
Einziger noch zu klärender Punkt ist die konkrete Wahl der Basisfunktionen .
11.2Wahl der Basis¶
Die Wahl der Basis erfolgt in zwei Schritten:
Zerlegung des Gebiets in disjunkte gleichartige Teilmengen (die sogenannten finite Elemente). Dabei ist mit “gleichartig” gemeint, dass zum Beispiel alle Teilmengen Dreiecke sind oder alle sind Vierecke oder alle sind Tetraeder (für ) usw.
Wahl der so, dass die Träger jeweils der Vereinigung von nur wenigen Teilgebieten entsprechen.
Die Zerlegung in Teilgebiete erfolgt stets so, dass sich nur Ecken mit Ecken berühren, nie Ecken mit Kanten oder Flächen. Die Ecken werden auch Knoten genannt und im Folgenden mit bezeichnet.
Sind die Dreiecke, so werden die gern als stückweise lineare Funktionen gewählt: Zu jedem Knoten wird genau eine Basisfunktion gewählt. Diese ist 1 an dem Knoten und Null an allen anderen Knoten (IDVID 1120).
Analog kann bei Tetraedern in vorgegangen werden. Neben stückweise linearen sind auch stückweise quadratische usw. Basisfunktionen üblich. Da Funktionen höherer Ordnung mehr Freiheitsgrade besitzen, werden je nach Bedarf zusätzliche Knoten auf den Berührungskanten oder -flächen der Teilgebiete eingefügt.
11.3Gebietszerlegung¶
Die konkrete Wahl der Zerlegung in Teilgebiete unterliegt diversen Einflussfaktoren:
erforderliche Genauigkeit der Berechnungen (ggf. höhere Knotendichte an “interessanten” Stellen),
exakte Darstellung von Materialgrenzen (diese sollten immer auf Kanten/Flächen der Zerlegung liegen),
exakte Darstellung der Grenzen zwischen verschiedenen Typen von Randbedingungen,
exakte Darstellung von Unstetigkeitsstellen in den Randbedingungen,
aus theoretischen Ergebnissen bekannte Einflüsse auf den Diskretisierungsfehler (z.B. dichtere Knoten in der Nähe konkaver Gebietsgrenzen),
höhere Knotendichte an krumlinigen bzw. krumflächigen Gebietsgrenzen (hinreichend genaue Approximation durch Polygon bzw. Polyeder).
Die Vernetzung (d.h. die Wahl der Zerlegung) kann manuell oder durch Algorithmen erfolgen. Ein verbreiteter Algorithmus ist die Delaunay-Triangulation.
Gebietszerlegungen können besser oder schlechter für FEM geeignet sein als andere. Insbesondere sollte die Form der Teilmengen hinreichend einheitlich sein. Diese Forderung kann wie folgt präzisiert werden:
Neben Algorithmen zur Erzeugung von Vernetzungen existieren auch Algorithmen zur Verbesserung von Netzen im Sinne der Isotropie (Netzglättung).
Auch können gegebene Netze weiter verfeinert werden durch weiteres Unterteilen der vorhandenen Teilgebiete (Netzverfeinerung). Insbesondere die adaptive Netzverfeinerung ist praktisch von Bedeutung: In Regionen, in denen eine vorherige Netzverfeinerung zu einer deutlichen Änderung der Lösung geführt hat, wird weiter verfeinert. In Regionen ohne nennenswerte Änderung ist keine weitere Verfeinerung nötig. Durch dieses Vorgehen können Rechenzeit und Speicherplatz gespart werden bei gleichzeitig kleinem Diskretisierungsfehler.
11.4Aufstellen der Steifigkeitsmatrix¶
Ausgehend von einer gegebenen Zerlegung des Gebiets in Teilgebiete soll die Steifigkeitsmatrix berechnet werden. Wir demonstrieren das Vorgehen anhand einer Dreiecksvernetzung im und stückweise linearen Basisfunktionen. Für andere Vernetzungen und Basisfunktionen ist das Vorgehen völlig analog.
11.4.1Globale und lokale Knotennummerierung¶
Die Eckpunkte der Dreiecke seien (Knoten). Punkte, an denen zwei oder mehr Dreiecke sich berühren, werden nur einfach gezählt. Die Nummerierung der Knoten mit wird als globale Nummerierung bezeichnet.
Zu jedem Dreieck werden die drei Eckpunkte zusätzlich noch mit bezeichnet. Dies ist die lokale Knotennummerierung.
Im Speicher werden einerseits die Koordinaten der Knoten zusammen mit der jeweiligen globalen Knotenummer abgelegt; andererseits die Elementzusammenhangstabelle, welche für jedes Teilgebiet (Zeilen) folgende Werte (Spalten) enthält:
Teilgebietnummer ,
globale Nummer des Knotens ,
globale Nummer des Knotens ,
globale Nummer des Knotens ,
Parameter in der PDE für dieses Teilgebiet (Material, Leitfähigkeit,...),
Durch Knotenkoordinaten und Elementzusammenhangstabelle ist die Vernetzung vollständig beschrieben (IDVID 1130).
11.4.2Referenzelemente¶
Für die Berechnung von müssen Integrale über den Teilgebieten berechnet werden. Um dies effizient durchführen zu können, werden die auftretenden Integrale so transformiert, dass der Integrationsbereich immer gleich ausssieht (Referenzdreieck oder allgemeiner: Referenzelement).
Als Referenzdreieck wird üblicherweise das Dreieck mit den Eckpunkten , , verwendet. Liegt dieses in einem --Koordinatensystem, ist die Transformation auf das Teilgebiet gegeben durch
11.4.3Formfunktionen über dem Referenzelement¶
Jede Basisfunktion soll an genau einem Knoten den Wert 1 annehmen, an allen anderen den Wert 0. Auf einem einzelnen Teilgebiet betrachtet sollen die Basisfunktionen linear verlaufen. Für dreieckige Teilgebiete gibt es somit nur vier mögliche Funktionsverläufe:
überall 0,
an einem der drei Eckpunkte 1, sonst 0.
Auf dem Referenzdreieck setzen wir:
(Wert 1 bei ),
(Wert 1 bei ),
(Wert 1 bei ).
11.4.4Basisfunktionen¶
Für jeden Knoten sei die Indexmenge, die gerade die am Knoten anliegenden Teilgebiete beschreibt. Die Basisfunktion ist dann gegeben durch
wobei gerade so gewählt wird, dass gilt.
Sind die Funktionen in auf einem Teil des Randes Null (z.B. als Folge von Dirichlet-Randbedingungen in der PDE), so werden für die entsprechenden Randknoten keine Basisfunktionen benötigt!
11.4.5Bereichsintegrale¶
Zu einem Knoten einer Dreieckszerlegung enthalte alle Indizes von benachbarten Knoten. Ist die Bilinearform durch ein Integral über das Gebiet gegeben, so gilt , falls . Jede Zeile und jede Spalte der Steifigkeitsmatrix hat also höchstens so viele Nicht-Null-Einträge wie die beiden relevanten Knoten Nachbarn haben (Zeile hat Einträge, Spalte hat Einträge. Insbesondere ist die Steifigkeitsmatrix dünn besetzt, was FEM für dreidimensionale Gebiete oder sehr feine Netze überhaupt erst möglich macht.
Die Berechnung der Bereichsintegrale über erfolgt praktisch immer numerisch, auch wenn manuelles Rechnen möglich wäre. Dazu werden die Integrale über den Teilgebieten zunächst auf das Referenzdreieck transformiert. Anschließend erfolgt die numerische Integration mittels Standardverfahren.
Sei
die Abbildung von auf das Referenzdreieck. Dann gilt
mit der zu integrierenden Funktion , wobei
(IDVID 1140).
11.4.6Randbedingungen¶
Eventuell vorhandene Dirichlet-Randbedingungen sind bereits in den Funktionenraum bzw. dessen endlichdimensionale Entsprechung integriert und wurden bei der Wahl der Basisfunktionen berücksichtigt (keine Basisfunktionen an Randknoten im Bereich von Dirichlet-Randbedingungen).
Randteile, auf denen Neumann-Randbedingungen gegeben sind, führen üblicherweise zu Kurvenintegralen (2D-Gebiet) oder Oberflächenintegralen (3D-Gebiet) in der schwachen Formulierung der PDE. Diese können völlig analog zu den Bereichsintegralen numerisch berechnet werden. Führen dies hier nur für 2D-Gebiete näher aus.
Sei der Teil des Randes, auf dem ein Kurvenintegral
mit einer Funktion zu berechnen ist. Das Integral kann in eine Summe von Integralen über die einzelnen Randkanten der Gebietszerlegung geschrieben werden. Ist eine solche Randkante mit den Endknoten und , so überführt man das Integral
in das Integral
auf der Referenzkante (IDVID 1150).
Ist der Integrand als Linearkombination der Basisfunktionen gegeben, so haben nur die beiden zu den Endknoten gehörenden Basisfunktionen und Einfluss auf das Integral.
11.5Aufstellen der rechten Seite¶
Das Aufstellen der rechten Seite im zu lösenden Gleichungssystem erfolgt analog zur Systemmatrix durch numerische Berechnung der in der Linearform enthaltenen Integrale über jedem Teilgebiet .