|
|
|
Wie funktioniert der ode113 Solver? (nicht die Syntax) |
|
| mario1988 |

Forum-Newbie
|
 |
Beiträge: 2
|
 |
|
 |
Anmeldedatum: 11.11.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 11.11.2011, 10:01
Titel: Wie funktioniert der ode113 Solver? (nicht die Syntax)
|
 |
| |
 |
|
Hallo,
ich schreibe gerade an einer Arbeit über die Differentialgleichungslöser in MATLAB. Momentan bin ich beim ode113.
Ich habe bereits herausgefunden, dass der Solver ein Praediktor-Korrektor Verfahren nach Adams-Bashforth-Moulton (ABM) mit Ordnung zwischen 1 und 13 ist. Meine erste Frage lautet daher, wie kann dieses die Ornung während der Berechnung verändern? Ich kann mir das nur so vorstellen: Das das ABM Verfahren basiert ja auf einem Interpolationspolynom nach Lagrage. Fürs Interpolieren benötigt man vorangegangene Stützstellen. Am Beginn der Berechnung übergibt man (bei einer eindimensionalen Diff. glg) nur einen Anfangswert. Somit verwendet der Solver zunächst den einen Anfangswert (verwendet er Ordnung 1?) um den nächsten Lösungspunkt zu berechnen. Dann hat er zwei Stützstellen und kann die Ordnung auf zwei erhöhen. Dies macht er, bis er bei Ordnung 13 angelangt ist.
Ist das so korrekt?
Wenn ja, habe ich eine weitere Frage: Ich habe in diversen Bücher Herleitungen von Adams-Bashforth und Adams-Moulton Verfahren gefunden. Zum einen gehen die immer von einer äquidistantet Schrittweite aus (was der ode113 nicht macht - Schrittweitensteuerung)und zum anderen sind die Koeffizienten/Gewichte vom Grad des Interpolationspolynom abhängig. Im MATLAB Quellcode vom sind diese Koeffizienten als Konstanten fixiert. Wie kann dann eine Veränderung des Grades des Interpolationspolynom mit den gleichen Koeffizienten funktionieren?
So, ich hoffe, dass ich mein Problem verstädnlich darstellen konnte, wenn nicht, versuche ich es auch eine andere Art und Weise.
Danke lg mario1988
|
|
|
|
|
|
| Harald |

Forum-Meister
|
 |
Beiträge: 24.502
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 11.11.2011, 10:55
Titel:
|
 |
Hallo,
ich würde mich da vor allem auf die Hilfe stützen. Gerade diese Seite sollte dich hier um einiges weiterbringen:
http://www.mathworks.com/help/relea.....b/techdoc/ref/ode113.html
Meines Wissens steht 113 nicht für 1 und 13, sondern für 1, 1, 3 - ein Verfahren der Ordnung 3, das durch zwei Verfahren der Ordnung 1 gestützt wird. Ich bin mir da nicht sicher, würde dir aber auf jeden Fall empfehlen, das noch einmal zu überprüfen (z.B. mit der auf der Seite angegebenen Referenz [7]).
Eine weitere Referenz dazu:
http://www.sotere.uni-osnabrueck.de.....ap5_files/matlab-kap5.pdf
Dort auf S. 11 bzw. 61 unten:
"ode113 ist im Gegensatz zu den beiden anderen Methoden kein einstufiges Verfahren sondern
ein mehrstufiges. Die sich daraus ergebende h¨ohere Genauigkeit und Stabilit¨at erkaufen
wir mit einem mehrstufigen Verfahren und entsprechend gr¨oßerer Rechenzeit."
Grüße,
Harald
|
|
|
|
| busy |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 11.11.2011, 18:28
Titel:
|
 |
|
|
|
| mario1988 |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 2
|
 |
|
 |
Anmeldedatum: 11.11.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 14.11.2011, 18:02
Titel:
|
 |
@ Harald:
Danke für die Hilfe. Leider steht auf dem ersten Link nur Allgemeines. Ich habe zusätzlich meine Frage auf der Mathworks Homepage gestellt.
Den MATLAB code des ode113 hab ich mir schon angesehen, kann aber daraus keine sinnvollen Konsequenzen ziehen.
|
|
|
|
| Harald |

Forum-Meister
|
 |
Beiträge: 24.502
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 14.11.2011, 22:31
Titel:
|
 |
Hallo,
weitere Infos habe ich leider nicht. Ich kann bestenfalls empfehlen, die in der Doku angegebene Referenz zu lesen.
Grüße,
Harald
|
|
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2025
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|