Angenommen, Sie müssen ein System von PDEs lösen. Nehmen wir zumindest der Einfachheit halber an, dass es zeitunabhängig, quasi-linear (linear in seinen Ableitungen) ist, gelöst auf einem rechteckigen Gitter im (x, y) Raum und mit rundum festgelegten Randbedingungen. Meine Frage ist allgemeiner, aber fangen wir hier an.
Es kann zwei abhängige Variablen geben, und v ( x , y ) . Die allgemeine Gleichung könnte folgende Form haben:
wobei alle Funktionen bis e 2x2-Matrizen sind, f eine 2x1-Matrix ist und Y ist
Angenommen, Sie möchten eine numerische Näherung mit endlicher Differenz berechnen. Angenommen, die Gitterpunkte sind in x und y gleichmäßig verteilt. Sie können in N Punkte und y in M Punkte diskretisieren . Und dann würden Sie eine Lösung als 2 (nm) -Säulenvektor konstruieren.
Sie würden dann eine Art Matrixgleichung lösen
wobei die 2nm x 2nm-Matrizen bis E Finite-Differenzen-Matrizen für die entsprechenden Differentialoperatoren sind. Die kombinierte Matrix in den Klammern weist eine Art Blockbandstruktur auf. Ihre Kantenwerte können aufgrund von Randbedingungen kompliziert sein.
Das Problem ist, dass ich dies von Hand tun kann, aber es ist (i) viel Algebra; und (ii) bei der Implementierung vielen Tippfehlern und Fehlern unterliegen.
Zum Beispiel, hier ist ein Code, den Sie alle notwendigen Vektoren für einen 1D - Finite - Differenzen ‚Matrix‘ für verschiedene Ordnungen von Derivaten gibt. Gibt es eine Analogie für PDE-Systeme im Flugzeug?
quelle