|
|
DGL 1. Grades ... sollte einfach sein. |
|
juniata |

Forum-Anfänger
|
 |
Beiträge: 12
|
 |
|
 |
Anmeldedatum: 12.05.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 12.05.2011, 16:29
Titel: DGL 1. Grades ... sollte einfach sein.
|
 |
Hi,
ich bin ein ganz junger Matlabbenutzer und versuche mich gerade am Lösen einer ganz einfachen DGL 1. Ordnung mit ODE45. Überall finde ich nette Beispiele zum Lösen von DGLn höherer Ordnung bzw. Systemen, oder es wird davon ausgegangen, dass der Leser ordentliche Vorkenntnisse hat. Vielleicht kann mir hier jemand helfen. Wie würde z.B. y'=y aussehen, m-file und Aufruf.
Konkret will ich mir die Blochgleichung DeltaM=[M0-Mz(t)]Deltat ansehen, erstmal mit M0 als Konstante, dann zeitabhänig und die Zeitschritte sollen dann variiert werden.
Wäre echt nett, wenn mir jemand helfen könnte.
Viele Grüße!
|
|
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 12.05.2011, 16:47
Titel:
|
 |
Hallo,
die Funktion:
der Aufruf:
Grüße,
Harald
|
|
|
juniata |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 12
|
 |
|
 |
Anmeldedatum: 12.05.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 13.05.2011, 12:20
Titel:
|
 |
Okay! Wenn ich jetzt die Nullstelle noch auf 1 setze, werden mir auch nicht nur Nullen ausgespuckt
Danke!
|
|
|
juniata |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 12
|
 |
|
 |
Anmeldedatum: 12.05.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 23.05.2011, 13:42
Titel:
|
 |
Hi,
ich versuche gerade, ähnlich wie in folgendem Beispiel für mehrere Werte von a Lösungen ausspucken zu lassen und dann in einem Fenster zu plotten.
Beispiel ohne ODE:
Meine DGL, die gelöst werden soll, sieht so aus:
dy/dt=((cos(a)^n)-y)
und a soll Werte durchlaufen z.B. a=10:10:90
Hat da jemand eine Idee, wie ich das unterbringe?
Vielen Dank!
Edit by _Peter_: Bitte Codeumgebung verwenden. Danke.
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 23.05.2011, 14:45
Titel:
|
 |
Hallo,
ich vermute, dir ist geholfen, wenn ich mein Beispiel so anpasse, dass es einen Parameter annimmt?
Die Funktion:
Der Aufruf:
Über das a kannst du dann eine Schleife laufen lassen.
Grüße,
Harald
|
|
|
juniata |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 12
|
 |
|
 |
Anmeldedatum: 12.05.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 24.05.2011, 17:01
Titel:
|
 |
function dy = f(t, y, a)
n=(1:1:50)';
t1=200;
for a=10:10:90
dy = (((cos(a)).^t)-y)./t1;
end
??
Ich bekomme immer die Fehlermeldung, dass a undefined sei.
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 24.05.2011, 19:00
Titel:
|
 |
Hallo,
ich bin davon ausgegangen, dass die Schleife außerhalb sein soll, sprich dass die DGL für jeweils konstante Werte von a gelöst werden soll.
Bei dir sieht es so aus, als ob innerhalb der DGL variiert werden soll? Davon abgesehen ist es nicht sinnvoll, dy in der for-Schleife laufend zu überschreiben.
Grüße,
Harald
|
|
|
Verschoben: 24.05.2011, 21:52 Uhr von _Peter_ Von Sonstige MATLAB Fragen nach Programmierung |
juniata |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 12
|
 |
|
 |
Anmeldedatum: 12.05.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 25.05.2011, 09:47
Titel:
|
 |
Soll sie auch, nur weiß ich dann garnich, wo ich's hinpacken soll. Muss mich wohl nochmal grundlegend damit befassen. Klingt logisch!
Danke jedenfalls!!!
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 25.05.2011, 10:12
Titel:
|
 |
Hallo,
nochmal bezogen auf mein Beispiel:
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.
|
|