|
|
| Henne24 |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 09.11.2011, 14:25
Titel: Gleichungssystem lösen
|
 |
Hallo, ich habe ein Problem beim definieren eines GLS und das sich anschließende Lösen mit fsolve.
Hier mal mein Quellcode:
Das Gleichungssystem soll nach Q1 und Q2 gelöst werden. Also es soll die Nullstelle gefunden werden. Vielleicht kann man ja auch mit
eine Funktion definieren. Ich habe aber keine Ahnung mehr wie man das programmiert. Das ist schon ne Weile her.
Ich würde mich sehr freuen wenn Ihr mir helfen könntet.
Stefan
|
|
|
|
|
|
| Harald |

Forum-Meister
|
 |
Beiträge: 24.502
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 09.11.2011, 15:52
Titel:
|
 |
Hallo,
ich würde dafür FSOLVE verwenden.
wobei gleichung.m wie folgt aussieht:
Bitte überprüfe die Klammern im Code. Zudem erscheint es mir merkwürdig, dass du pvE51 am Ende definierst, aber nicht verwendest.
Grüße,
Harald
|
|
|
|
| Harald |

Forum-Meister
|
 |
Beiträge: 24.502
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 09.11.2011, 15:58
Titel:
|
 |
P.S.:
1. pi ist in MATLAB vordefiniert.
2. Klammernsetzung z.B. bei
pvR52=(8*lambda*LaengeR1*rho*Q1*abs(Q1))/D^5*PI^2*g;
Willst du wirklich nur durch D^5 teilen, nicht durch D^5*PI^2*g? Wenn du durch letzteres teilen willst, brauchst du Klammern um den Nenner. Bei den anderen Ausdrücken natürlich entsprechend.
P.P.S.:
Da die Gleichung um Q1=Q2=0 nicht differenzierbar ist, liefern fminsearch evtl. bessere Ergebnisse:
|
|
|
|
| Henne24 |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 10.11.2011, 12:29
Titel:
|
 |
Vielen Dank für die Hinweise. Ich hab es jetzt so gelöst.
Und dann aus einem anderen m-file mit fsolve die Lösung gefunden.
Stefan
|
|
|
|
| Henne24 |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 15.11.2011, 11:36
Titel:
|
 |
Hallo, ich möchte die Funktion jetzt so anpassen, dass die Fuellhoehen auch von außen an die Funktion übergeben werden können und ich das Gleichungssystem so wie bisher mit fsolve lösen kann.
Ich habe schon diese Möglichkeit probiert.
Wie kann ich die Funktion dann mit fsolve lösen und die Fuellhoehen an die Funktion Stroeme ubergeben?
Stefan
|
|
|
|
| Harald |

Forum-Meister
|
 |
Beiträge: 24.502
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 15.11.2011, 11:42
Titel:
|
 |
Hallo,
über anonymous Function Handles (evtl. auch in der Hilfe dazu nachlesen)
Grüße,
Harald
P.S.: wenn zu einem "beantworteten" Thread weitere Fragen bestehen, bitte den Status auf "offen" setzen.
|
|
|
|
| Henne24 |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 15.11.2011, 12:05
Titel:
|
 |
Ich kann mich nur wiederum bei dir bedanken. Es funktioniert. Hier nochmal meine Lösung:
Und hier der Aufruf des Solvers:
Das hätte ich nie herausgefunden. Es wäre ja schon eine große Hilfe wenn die Hilfe auf deutsch wäre.
Also vielen Dank nochmal
|
|
|
|
|
|
|
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.
|
|