Diskretisierung einer Gleichun < Matlab < Mathe-Software < Mathe < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 00:02 Mo 21.06.2010 | Autor: | ftm2037 |
Aufgabe | Advections-Diffusionsgleichung:
[mm] u_{t} [/mm] = [mm] a*u_{x} [/mm] + [mm] \nu*u_{xx}
[/mm]
|
Hallo,
wie kann ich in Matlab diese Gleichung im Ort und Zeit Mit finiten Differenzenverfahren diskretisieren?
Viele Grüße
"Ich habe diese Frageh in keinen andren Foren gestellt."
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 18:15 Di 22.06.2010 | Autor: | max3000 |
Hallo..
Die Aufgabenbeschreibung ist nicht eindeutig.
Du kannst die auf verschiedene Varianten diskretisieren.
Dazu musst du natürlich die Ableitungen durch Differenzenquotienten ersetzen und dafür gibt es viele verschiedene Möglichkeiten.
Also das [mm] $\partial_t [/mm] u$ kannst du ja ersetzen mit
[mm] $\partial_t u\approx\bruch{u_i^{n+1}-u_i^n}{\Delta t}$
[/mm]
Bei den Ortsableitungen kannst du die Funktionswerte entweder auf dem alten Zeitschritt n auswerten (explizites Verfahren) oder komplett auf dem neuen n+1 (vollimplizites Verfahren) oder zur Hälfte auf dem alten und zur anderen Hälfte auf dem neuen (Crank-Nicolson).
Am einfachsten sind erstmal explizite Verfahren. Die sind zwar sehr unstabil, aber man muss keine Gleichungssysteme lösen.
Also zum Beispiel:
- Erste Ableitung mit zentraler Differenz
[mm] $\partial_x u=\bruch{u_{i+1}^n-u_{i-1}^n}{2\Delta x}$
[/mm]
-Zweite Ableitung mit der Standardapproximation für 2. Ableitungen
[mm] $\partial_{xx} u=\bruch{u_{i+1}^n-2u_i^n+u_{i-1}^n}{\Delta x^2}$
[/mm]
Das ganze einsetzen und nach [mm] u^{n+1}_i [/mm] umstellen und in Matlab eintippen.
Die Aufgabe ist nicht komplett. Es fehlen noch Anfangswerte, Randbedingungen und das Gebiet auf dem du rechnen sollst.
Die Randwerte musst du dann natürlich mit in deine explizite Darstellung für das neue [mm] u_i^{n+1} [/mm] einbauen. Darum in Randnähe etwas aufpassen.
Grüße
Max
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 00:40 Mi 23.06.2010 | Autor: | ftm2037 |
Danke für die Erklärung! Ich werde das so versuchen und gegebenenfalls mich wieder melden.
Grüße
|
|
|
|