Randbedingung Method of Lines < Interpol.+Approx. < Numerik < Hochschule < Mathe < Vorhilfe
|
Hallo zusammen,
ich möchte ein System partieller Differentialgleichungen, z.B. Diffusiongleichungen, mit der Linienmethode (engl. Method of Lines) lösen. Dabei wird die partielle DGL in ein System gewöhnlicher DGLs umgewandelt.
z.B. also aus:
[mm] \frac{\partial T}{\partial t} [/mm] = [mm] \alpha \frac{\partial^{2}T}{\partial x^{2}}
[/mm]
wird
[mm] \frac{\partial T_i}{\partial t} [/mm] = [mm] \alpha \frac{T_{i-1}-2T_i+T_{i+1}}{\Delta x^{2}}
[/mm]
Die Lösung erfolgt dann mit einem ODE-Löser, z.B. DOPRI5 von Hairer&Wanner.
Für mich stellt sich nun die Frage, wie ich am besten zeitlich variierende Randbedinungungen, z.B. aus Messdaten, für die erste DGL (also für i=1) implementiere . Der Vorteil guter ODE Löser ist ja, dass die Zeitschrittweitensteuerung automatisch erfolgt. Solange die Randbedingungen konstant sind, funktioniert das ja auch sehr gut.
Wenn ich nun zeitlich variierende Randbedingungen habe,
z.B. so
[Dateianhang nicht öffentlich]
dann muss die Zeitschrittweite ja so gewählt werden, dass die "spannenden" Phasen nicht übersprungen werden.
D.h. muss ich nun dem Löser abhängig von den Randbedingungen vorgeben, wie groß der maximale Zeitschritt sein darf?
Die zweite Frage stellt sich mich um die Programmtechnische Ausführung.
Zum Zeitpunkt t ruft der Löser die Funktion auf um den aktuellen Wert von
[mm] \frac{\partial T}{\partial t}
[/mm]
zu bekommen. Nun müsste ja für den aktuellen Zeitpunkt der Randbedingungswert durch Interpolation bestimmt werden. Ich stelle mir vor, dass das Numerisch doch sehr teuer ist.
Bei der Form meiner Randbedinungen, siehe oben, ist eine Spline-Approximation wohl nicht möglich...
Habt Ihr einen Tipp? Vielleicht gibt's ja auch ein Buch wo meine Fragen beantwortet werden könnten?
Vielen Dank
Andi
Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt
Dateianhänge: Anhang Nr. 1 (Typ: png) [nicht öffentlich]
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 20:20 Mi 17.12.2008 | Autor: | matux |
$MATUXTEXT(ueberfaellige_frage)
|
|
|
|