Kurze Erklärung:
Ich muss die Werte c1_0 (und damit c2_0) ermitteln, bei dem die Integrale Pi_1 und Pi_2 gleich groß sind. Also die Differenz von Pi_1-Pi_2 beträgt 0.
Gibt es eine Funktion in MATLAb, mit der man das ganz einfach berechnen kann? Ich habe schonmal an fzero gedacht, allerdings bekomme ich die Integrale nicht vernünfig implementiert.
Hab es mal so gemacht und durchrechnen lassen. Ergebnisse mit fzero gelangen in ähnliche Bereiche, sind aber nicht identisch. Außerdem kommt diese Warnung:
Zitat:
Warning: Reached the limit on the maximum number of intervals in use. Approximate bound on error is 1.0e+00. The integral may not
exist, or it may be difficult to approximate numerically to the requested accuracy.
Die Nullstellensuche ist ja auch stark vom Startwert abhängig. Variiere ich diesen nur geringfügig, so ändert sich schon das Ergebnis.
weißt du denn, in welchem Bereich c1_0 sinnvollerweise liegt?
Die Funktionen haben ja Unendlichkeitsstellen, und da ist es natürlich schwierig bis unmöglich, das Integral zu bestimmen.
Am besten wird fzero arbeiten, wenn du statt eines Startpunktes ein Intervall mit Vorzeichenwechsel angeben kannst.
die Option hilft nur, eine bereits gefundene Nullstelle genauer zu bestimmen.
Es muss kein engerer Bereich vorgegeben werden; ungefähre Anhaltspunkte reichen.
Ist z.B. c1_0 < 0 sinnvoll? Wenn über Unendlichkeitsstellen einer Funktion hinweg integriert wird, ist es jedenfalls nicht verwunderlich, wenn es zu Problemen kommt.
Code:
f = @(c1_0)integral(funct1,0,c1_0) - integral(funct2,0, (c2/(1-(c1/c1_0))));
fplot(f, [-100, 100])
Okay, genau das ist das Problem. Die Funktion 2 hat eine Polstelle im Intervall.
Damit scheint fzero wohl auszuscheiden, oder?
PS: c1_0 > c1 muss immer gelten
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
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.