www.vorhilfe.de
- Förderverein -
Der Förderverein.

Gemeinnütziger Verein zur Finanzierung des Projekts Vorhilfe.de.
Hallo Gast!einloggen | registrieren ]
Startseite · Mitglieder · Impressum
Forenbaum
^ Forenbaum
Status VH e.V.
  Status Vereinsforum

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Suchen
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Differentialgleichungen" - Finite Differenzen PDGL
Finite Differenzen PDGL < DGL < Numerik < Hochschule < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Differentialgleichungen"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Finite Differenzen PDGL: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 13:15 Di 20.09.2005
Autor: MichaelHRO

Die Entwicklung finiter Differenzenformeln geht dem Lösen durch die Finite Differenzen Methode vor?

Wie kann eine partielle Differentialgleichung ohne eine Entwicklung numerisch gelöst werden?

        
Bezug
Finite Differenzen PDGL: Antwort
Status: (Antwort) fertig Status 
Datum: 21:11 Fr 23.09.2005
Autor: twentyeight

Hi,

> Die Entwicklung finiter Differenzenformeln geht dem Lösen
> durch die Finite Differenzen Methode vor?

Was bitte möchtest du hier wissen? Was verstehst du unter finiten Differenzenformeln und der Finiten Differenzen Methode? Wenn du dir den Unterschied zu Augen führst, kommst du evtl. selbst drauf.

>  
> Wie kann eine partielle Differentialgleichung ohne eine
> Entwicklung numerisch gelöst werden?  

Zur numerischen Lösung partieller DGL gäbe es den Finiten Differenzen noch die Finite Volumen Methode und die Finite Elemente Methode. Speziell bei der letzteren entstehen durch gewisse Modifikationen verschiedenste Verfahren (Galerkin, Ritz, discontinous Galerkin, ...).

Gruß
28

Bezug
                
Bezug
Finite Differenzen PDGL: Frage (reagiert)
Status: (Frage) reagiert/warte auf Reaktion Status 
Datum: 05:15 Sa 24.09.2005
Autor: MichaelHRO

Muss eine Differentialgleichung immer zuerst durch die räumliche und zeitliche Ableitung und wenn nötig durch eine Taylorentwicklung für weitere Verfahren vorbereitet werden?

Vielen Dank 28!!!

Bezug
                        
Bezug
Finite Differenzen PDGL: Antwort
Status: (Antwort) fertig Status 
Datum: 09:50 So 25.09.2005
Autor: mathemaduenn

Hallo MichaelHRO,
[keineahnung]
Ich weiß nicht was Du hier meinst? Was für Verfahren?
viele Grüße
mathemaduenn

Bezug
                                
Bezug
Finite Differenzen PDGL: Verfahren
Status: (Frage) beantwortet Status 
Datum: 04:52 Do 29.09.2005
Autor: MichaelHRO

Die räumliche und zeitliche Ableitung für eine Differentialgleichung wird durchgeführt, um die numerischen Methoden anwenden zu können?

Mit den Verfahren meinte ich in der vergangen Frage die Methoden.
Zum Beispiel um eine Differentialgleichung explizit oder implizit lösen zu können.

Wenn die Differentialgleichung nicht in erster Ordnung ist muss ich die Taylorentwicklung durchführen, damit ich die Gleichung linearisiere?
Erst durch die Linearisierung eine weitere numerische Lösung möglich?

Vielen Dank für die Hilfe...


Bezug
                                        
Bezug
Finite Differenzen PDGL: Antwort
Status: (Antwort) fertig Status 
Datum: 16:56 Do 29.09.2005
Autor: twentyeight

Hi,

> Die räumliche und zeitliche Ableitung für eine
> Differentialgleichung wird durchgeführt, um die numerischen
> Methoden anwenden zu können?

Ich denke mal, du meinst die Diskretisierung der räumlichen und partiellen Ableitung wird durchgeführt um numerische Methoden anwenden zu können. Es gibt dabei die Möglichkeit ein volldiskretisiertes Schema anzuwenden, bei dem in Zeit und Ort (so gesehen über die Taylorentwicklung) diskretisiert wird. Diese Methode ist allerdings nicht so beliebt, da die die Konvergenzraten der Verfahren zur Lösung des resultierenden Gleichungssystems nicht sonderlich erfreulich sind.  

Üblicher ist es eine Semidiskretisierung des Ortes durchzuführen, z.B. das Differenzenverfahren nur für die Ortsableitung. Was du dann erhälst ist System gewöhnlicher Differentialgleichungen, das mit numerischen Methoden für gewöhnliche DGL gelöst werden kann. Zumeist ist dieses System steif, d.h. die Eigenwerte des Systems sind sehr unterschiedlich groß. Damit kann man zu deren Lösung kein explizites Einschrittverfahren anwenden, da diese nicht A-stabil sind (also keine wünschenswerten Eigenschaften haben). Um dieses System dann zu lösen brauchst du also entsprechende (Mehrschritt)verfahren... usw. du siehst, es landet bei Numerik gew. DGL, die nur implizit zu lösen sind.

> Wenn die Differentialgleichung nicht in erster Ordnung ist
> muss ich die Taylorentwicklung durchführen, damit ich die
> Gleichung linearisiere?
>  Erst durch die Linearisierung eine weitere numerische
> Lösung möglich?

Der Sache mit der Linearisierung kann ich nicht folgen... eine andere Möglichkeit wäre noch zur Variationsgleichung überzugehen und diese dann wie schon gesagt mit FEM zu lösen.

Gruß 28

Bezug
                                                
Bezug
Finite Differenzen PDGL: Beispiel
Status: (Frage) beantwortet Status 
Datum: 10:53 Sa 01.10.2005
Autor: MichaelHRO

Vielen Dank für die Antwort 28!!!

Wenn ich dich richtig verstehe, kann es nach einer Volldiskretisierung zu verschiedenen Ergebnissen zwischen expliziter und impliziter Lösung kommen?
Worauf beruht dieses, da ich doch doch durch die Diskretiesierung eine ausreichend große Anährung an die Wirklichkeit haben sollte? Daher die Differentialgleichung wird in einem finitesemalen kleinen Punkt linearisiert.

[Dateianhang nicht öffentlich] explizite Lösung

[Dateianhang nicht öffentlich] implizite Lösung


Vielleicht verstehe ich die Sache besser an einem Beispiel:

Leider weiß ich nicht genau wie ich die ganzen Formeln in diesen Artikel bringen kann, daher habe ich die Beispielgleichung mit den Fragen in einem Worddokument angehängt.


[a]Link zum 1. Dateianhang Beispielgleichung


Mit dem System von gewöhnlicher Differentialgleichungen ist die simultane Lösung durch eine Matrize gemeint? Welche später z.B durch Gauss Algorithmus gelöst werden kann. Welche Lösungswege gibt es hier?

Tut mir leid wenn ich sehr viele Fragen stelle aber mir fehlt wohl das elementare Grundwissen.

Michael

Dateianhänge:
Anhang Nr. 1 (Typ: doc) [nicht öffentlich]
Anhang Nr. 2 (Typ: jpg) [nicht öffentlich]
Anhang Nr. 3 (Typ: jpg) [nicht öffentlich]
Bezug
                                                        
Bezug
Finite Differenzen PDGL: Antwort
Status: (Antwort) fertig Status 
Datum: 12:34 Di 04.10.2005
Autor: twentyeight

Hello again,

also schauen wir mal:

> Wenn ich dich richtig verstehe, kann es nach einer
> Volldiskretisierung zu verschiedenen Ergebnissen zwischen
> expliziter und impliziter Lösung kommen?
>  Worauf beruht dieses, da ich doch doch durch die
> Diskretiesierung eine ausreichend große Anährung an die
> Wirklichkeit haben sollte? Daher die Differentialgleichung
> wird in einem finitesemalen kleinen Punkt linearisiert.

es kann zu unterschiedlichen Ergebnissen kommen, wenn Verfahren, die durch verschiedene Diskretisierungen entstehen, unterschiedliche Konvergenzordnungen haben. Die Konvergenzordnung ist ja die Potenz der Schrittweite, sagen wir [mm]h[/mm] (bei nichtäquidistanter Diskretisierung entsprechend der größten Schrittweite). Jetzt stell dir vor, du hast ein Verfahren der Ordnung 1 und eins der Ordnung 2. Jetzt gehst du los und läßt deinen Rechner rechnen, meinetwegen mit einer ziemlich hohen Genauigkeit. Klar ist, daß das Verfahren 2. Ordnung schneller fertig ist als das 1. Ordnung. Soweit zur Konvergenzordnung.

Du kannst allerdings nicht erwarten, daß du beliebig nahe an die exakte Lösung rankommst. Dadurch, daß du auf dem Rechner Ungenauigkeiten durch die Darstellung der Gleitpunktarithmetik hast, gibt es ein [mm]h_{opt}[/mm] als optimale Schrittweite, mit dem du die größte Näherung erreichst. Nimmst du ein größeres [mm]h[/mm], so schöpfst du die Kapazität des Verfahrens nicht aus, nimmst du ein kleineres [mm]h[/mm], so bekommst du Probleme mit der Genauigkeit des Rechners und handelst dir Rundungsfehler ein.

was hast du denn hier geplottet. Ich sehe 2 Flächen. Ist eine davon die exakte Lösung oder was stellt das dar. Falls du für dein numerisches Beispiel die exakte Lösung haben solltest, dann plotte doch mal den Fehler, also die Differenz aus exakter und numerischer Lösung. Falls nicht, dann plotte mal die Abweichung zwischen explitziter und implitziter Lösung. Meine Vermutung ist, daß es vor allem Abweichungen am Rand gibt.

Zu deinem Beispiel:

Für die Diskretisierung der ersten Ableitung nimmst du jeweils einen einseitigen Differenzenquotienten [mm]\left(\bruch{\partial\phi}{\partial x}\right)_i^n\approx\bruch{\phi_{i+1}^n-\phi_i^n}{h}[/mm]. Das kann bei gewissen Beispielen Sinn machen. Allerdings kann es auch nachteilig sein. Es hängt davon ab, wie die zugehörigen Charakteristiken verlaufen (ich gehe mal nicht weiter darauf ein, da ich da auch nicht so standfest bin). Du kannst es aber mal mit einem zentralen Differenzenquotienten probieren:
[mm]\left(\bruch{\partial\phi}{\partial x}\right)_i^n\approx\bruch{\phi_{i+1}^n-\phi_{i-1}^n}{2h}[/mm]. Der ist meinst stabiler und deine numerische Lösung könnte ganz anders aussehen. Analog gilt das für die Zeitdiskretisierung.

Du mußt die Matrizen so zusammenbauen, daß dein Gleichungssystem wiedergespiegelt wird. So richtig steige bei deinem Wunsch nach einer expliziten und impliziten Lösung noch nicht durch... das muß ich mir nochmal in Ruhe zu Gemüte führen.


> Mit dem System von gewöhnlicher Differentialgleichungen ist
> die simultane Lösung durch eine Matrize gemeint? Welche
> später z.B durch Gauss Algorithmus gelöst werden kann.
> Welche Lösungswege gibt es hier?

Genau... du stellst das System auf und kannst das mit einer Matrix aufschreiben. Dann hast du ein Gleichungssystem mit Matrix usw. und kannst z.B. den Gauß-Algorithmus drauf los lassen. Allerdings lohnt es sich z.B. bei dünnbesetzten Matrizen auch mal nach anderen speziellen Verfahren zu gucken oder Iterationsverfahren zu verwenden.

>  
> Tut mir leid wenn ich sehr viele Fragen stelle aber mir
> fehlt wohl das elementare Grundwissen.
>

Mach dir mal keinen Kopf, dafür ist das ja hier...

Gruß 28 und frag ruhig weiter...

Bezug
                                                                
Bezug
Finite Differenzen PDGL: weitere frage
Status: (Frage) beantwortet Status 
Datum: 05:16 Do 06.10.2005
Autor: MichaelHRO

Vielen Dank 28 für die ausführlich Beantwortung.

Wie kann ich eine exakte Lösung bekommen?

Die beiden Graphiken geben zum Einen die explizite - und zum Anderen die implizite Lösung wieder. Es sind jeweils zwei Kurven in einer Graphik zu sehen, da es zwei Differentialgleichungen sind die voneinander abhängig sind. Ich möchte gerne mehrere Verfahren für die Lösung anwenden um bei einer späteren Implemetierung in ein Programm mir den einfacheren Weg der Programmierung zu wählen.

Die Differenzenmethode ist ein Verfahren erster Ordnung?
Durch die Formeln für die Stabilität eines solchen Verfahrens werden doch die Schrittweiten indirekt mit festgelegt und ich erhalte das ungefähre Optimum?

0<s<1/2 (s ist dann abhängig von dt und dx)

In meinem Beispiel habe ich schon einen Fehler gefunden. Wenn ich die Vorwärtsdifferenzenmethode anwende haben alle abhängigen auf der rechten Seite einen Zeitschritt nach vorne zu machen. Daher ist I auch mit n+1 zu bezeichnen und im späteren aufstellen der Matrizen als unbekannte einzusetzen.
Das Aufstellen der Matrize ist auch nicht ganz einfach aber ich denke hier ist es nur eine Zeitfrage.´

Michael...



Bezug
                                                                        
Bezug
Finite Differenzen PDGL: Antwort
Status: (Antwort) fertig Status 
Datum: 09:43 Di 11.10.2005
Autor: mathemaduenn

Hallo Michael,
  

> Wie kann ich eine exakte Lösung bekommen?

Wenn die partielle DGL nicht algebraisch lösbar ist bekommst Du auch keine exakte Lösung.
Ansonsten gilt ähnlich wie 28 schon geschrieben hat.
Gesamtfehler = Anpassungsfehler + Rundungsfehler

niedrige Konvergenzordnung [mm] \Rightarrow [/mm] für einen kleinen Anpassungsfehler kleine Schrittweite nötig [mm] \Rightarrow [/mm] Gefahr von Rundungsfehlern groß

Die optimale Schrittweite gibt es i.A. nur theoretisch.

> Die beiden Graphiken geben zum Einen die explizite - und
> zum Anderen die implizite Lösung wieder. Es sind jeweils
> zwei Kurven in einer Graphik zu sehen, da es zwei
> Differentialgleichungen sind die voneinander abhängig sind.
> Ich möchte gerne mehrere Verfahren für die Lösung anwenden
> um bei einer späteren Implemetierung in ein Programm mir
> den einfacheren Weg der Programmierung zu wählen.
>
> Die Differenzenmethode ist ein Verfahren erster Ordnung?

Ich denke schon und von daher wären dann z.B. FEM vermutlich vorzuziehen.

>  Durch die Formeln für die Stabilität eines solchen
> Verfahrens werden doch die Schrittweiten indirekt mit
> festgelegt und ich erhalte das ungefähre Optimum?

viele Grüße
mathemaduenn

Bezug
                                                                                
Bezug
Finite Differenzen PDGL: Abweichungen am Rand
Status: (Frage) beantwortet Status 
Datum: 17:41 Fr 14.10.2005
Autor: MichaelHRO

Wiedereinmal vielen Dankfür die Antwort!

Es gibt für diese Aufgabe keine exakte Lösung.
Warum versucht man eine exakte Lösung noch einmal durch eine explizite oder implizite Methode numerisch zu lösen?


Wenn ich nun die explizite mit die impliziteMethode vergleiche komme ich auf starke Abweichungen. Woher kann dieses kommen?

In der Graphik wurde die Differenz folgender Maßen berechnet:

abs(Aimplizit-Aexplizit)/abs(Aimplizit)*100 [%] So habe ich den relativen Fehler bekommen.

Eine Annahme meinerseits, dass es zu diesen großen Fehlern kommen kann, basiert auf den kleinen Unterschieden am Rand und den relativ kleine Werten für diesen Bereich. Daher ergibt sich in der Divison eine großes Ergebnis. Anderseits müsste diese Erscheinung am ganzen Rand sein oder?


Vergleich der expliziten und impliziten Lösung Gleichung A:  [Dateianhang nicht öffentlich]

Vergleich der expliziten und impliziten Lösung Gleichung B:  [Dateianhang nicht öffentlich]

Die größten Abweichungen sind genau im ersten Durchgang der Berechnung zu finden.
Wenn z.B. n=1 (time) i=2 (space) und n=1 (time) i-1 (space).
Ich habe das Cranck-Nickelsen Verfahren für die Lösung der impliziten Methode gewählt.

Vielen Dank im Voraus!!!

Michael

Dateianhänge:
Anhang Nr. 1 (Typ: jpg) [nicht öffentlich]
Anhang Nr. 2 (Typ: jpg) [nicht öffentlich]
Bezug
                                                                                        
Bezug
Finite Differenzen PDGL: Konvergenzordnung? steife DGL?
Status: (Antwort) fertig Status 
Datum: 09:34 Di 18.10.2005
Autor: mathemaduenn


Hallo Michael,

> Es gibt für diese Aufgabe keine exakte Lösung.
> Warum versucht man eine exakte Lösung noch einmal durch
> eine explizite oder implizite Methode numerisch zu lösen?

Wie Schon von 28 gesagt
steife DGL   [mm] \gdw [/mm] implizite Verfahren sind besser als explizite

> Wenn ich nun die explizite mit die impliziteMethode
> vergleiche komme ich auf starke Abweichungen. Woher kann
> dieses kommen?
>  
> In der Graphik wurde die Differenz folgender Maßen
> berechnet:
>  
> abs(Aimplizit-Aexplizit)/abs(Aimplizit)*100 [%] So habe ich
> den relativen Fehler bekommen.
>  
> Eine Annahme meinerseits, dass es zu diesen großen Fehlern
> kommen kann, basiert auf den kleinen Unterschieden am Rand
> und den relativ kleine Werten für diesen Bereich. Daher
> ergibt sich in der Divison eine großes Ergebnis. Anderseits
> müsste diese Erscheinung am ganzen Rand sein oder?

Den relativen Fehler zu betrachten ist mMn wenig sinnvoll. Das liegt schon in der Natur der DGL.
Bsp.:
f(0)=-1;f'(x)=1  
Wenn man nur ein ganz klein wenig am Anfangswert wackelt. z.B. f(0)=-1.000000000000000000001 dann ist der relative Fehler in f(1) schon nicht mehr zu berechnen. Der wäre eben irgendwas durch null. Wie Du ja auch schon festgestellt hast.

Dann hat Crank Nickelsen Konvergenzordnung 2. Wäre vielleicht noch interessant welche Konvergenzordnung dein explizites Verfahren hat.(Euler hat z.B. Ordnung 1) Vielleicht liegt der Unterschied ja schon darin. Ansonsten müsstest Du eben die gewöhnliche DGL die hier im entsprechenden Schritt gelöst wird raussuchen und schauen ob die eben steif ist.
viele Grüße
mathemaduenn

Bezug
                                                                                                
Bezug
Finite Differenzen PDGL: Konvergenzgeschwindigkeit
Status: (Frage) beantwortet Status 
Datum: 11:08 Di 18.10.2005
Autor: MichaelHRO

Freue mich immer wieder über die Beantwortung!

Ich glaube so langsam verstehe ich es mit der Geschwindigkeit und der Ordnung der Konvergenz.

1. Wenn ich nun die Verfahren miteinander vergleiche, kann ich dann die Fehler vernachlässigen?
Wenn ich z.B. einen Randwert 1 habe und diesen mit später errechneten Werten vergeleiche sind diese verschwindend klein.
So dass gilt: 0.001<<1 Damit ist der Fehler nicht weiter zu betrachten. An dieser Stelle würde eine 0 sein aber der Rechner gibt eine 0.0001 aus.

2. Wenn ich z.B. ein explicites (Eulerverfahren 1.Ordnung) und ein implizites (Crank-Nickelson 2.Ordnung) Verfahren miteinander vergleiche wie kann ich dann entscheiden welche Fehler von dem Unterschied der Konvergenzgeschwindigkeit kommen? Muss in jedem Falle ein Vergleich von Verfahren gleicher Ordnung gemacht werden?

Vielen Dank im Voraus für Eure Mühe!!!

Michael



Bezug
                                                                                                        
Bezug
Finite Differenzen PDGL: Antwort
Status: (Antwort) fertig Status 
Datum: 13:49 Do 20.10.2005
Autor: mathemaduenn

Hallo Michael,

> 1. Wenn ich nun die Verfahren miteinander vergleiche, kann
> ich dann die Fehler vernachlässigen?
> Wenn ich z.B. einen Randwert 1 habe und diesen mit später
> errechneten Werten vergeleiche sind diese verschwindend
> klein.
> So dass gilt: 0.001<<1 Damit ist der Fehler nicht weiter zu
> betrachten. An dieser Stelle würde eine 0 sein aber der
> Rechner gibt eine 0.0001 aus.
>  

Wenn Du verschiedenen numerische Verfahren vergleichst geht's doch um den Fehler(naja vielleicht noch Rechengeschwindigkeit, schnelle Umsetzbarkeit)? irgendwie versteh ich die Frage nicht.
Ob der Fehler erheblich ist lässt sich so schwer einschätzen das ist schließlich auch problemabhängig. (Wie genau muß das Ergebnis denn sein usw.)

> 2. Wenn ich z.B. ein explicites (Eulerverfahren 1.Ordnung)
> und ein implizites (Crank-Nickelson 2.Ordnung) Verfahren
> miteinander vergleiche wie kann ich dann entscheiden welche
> Fehler von dem Unterschied der Konvergenzgeschwindigkeit
> kommen?

[keineahnung]
Vielleicht nochmal kurz zur Konvergenzordnung.
Verfahren 1.Ordnung
Fehler < [mm] C_1*h^1 [/mm]
Verfahren 2.Ordnung
Fehler < [mm] C_2*h^2 [/mm]
D.h. wenn man h halbiert dann halbiert sich die Schranke für den Anpassungsfehler bei dem Verfahren erster Ordnung. bei dem Verfahren 2. Ordnung ist sie 4mal kleiner als vorher.
i.A. sind die [mm] C_1 [/mm] und [mm] C_2 [/mm] aber unbekannt d.h. wenn man sich ein h raussucht könnte das Verfahren erster Ordnung trotzdem den besseren Fehler haben(weil's eben die bessere Konstante hat).

> Muss in jedem Falle ein Vergleich von Verfahren
> gleicher Ordnung gemacht werden?

Wenn Du herausfinden möchtest ob implizit - explizit überhaupt einen Unterschied macht. Ja. Kannst ja einfach implizit Euler nehmen.
viele Grüße
mathemaduenn

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Differentialgleichungen"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
ev.vorhilfe.de
[ Startseite | Mitglieder | Impressum ]