|
|
verkoppelte DGL mit ode45 |
|
Zaungast |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 16.01.2010, 04:27
Titel: verkoppelte DGL mit ode45
|
 |
Hallo zusammen!
Hab ein kleineres Problem mit dem Lösen eines DGL-Problems: Ich habe einmal eine first-order-DGL xdot = f(t, x) sowie ein second-order Systems mit zdot = g(t,z,y,x) und ydot = h(t,z).
D.h. x wird im DGL-System innerhalb einer nichtlinearen Funktion verwendet. Ich hab die Sachen implementiert und wollte alles mit einem ode45-Aufruf lösen.
wenn ich darauf mit entsprechenden Anfangswerten einen solver anwende und mir die Kurvenverläufe z.B. von x und xdot plotten lassen, dann passen diese Verläufe nicht zusammen.
Ich hatte einmal meinen Code so modifiziert, dass die nichtlineare funktion keinen Einfluss hatte und siehe da, die Verläufe passten wieder.
Irgendjemand eine Idee, wie man das Problem lösen kann? Kann ich das überhaupt in einer Funktion lösen? Muss ich ja fast, oder?
schonmal vielen Dank!
Zaungast
|
|
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 16.01.2010, 10:49
Titel:
|
 |
Hallo,
ob die "rechte Seite" der DGL linear oder nichtlinear ist, ist eigentlich vollkommen egal.
Kommen irgendwelche Warnungen / Meldungen?
Was du sonst machen kannst:
- Ist die Lösung von Anfang an falsch, oder läuft sie erst allmählich weg?
- im ersteren Fall: Überprüfen, ob die "rechte Seite" korrekt implementiert ist.
- im letzteren Fall: Toleranz über die options (odeset) runtersetzen und/oder einen anderen Löser, z.B. ode23s einsetzen.
Grüße,
Harald
|
|
|
Zaungast |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 16.01.2010, 14:45
Titel: erledigt
|
 |
Hallo Harald,
erstmal vielen dank für deine Antwort. Ich habe heute meine Funktionen mal auf den skalaren Fall umgeschrieben und mit Schleifen gearbeitet. Ist zwar nicht schön, aber seitdem passt es mit den Funktionsverläufen wieder.
Bin wohl irgendwo mit den ganzen Vektoren und Matrizen durcheinander gekommen. War ja auch schon ziemlich spät gestern
also: Thema erledigt!
Danke...
|
|
|
|
|
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.
|
|