|
|
x einer Funktion an Stelle y finden |
|
Fragender |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 23.09.2016, 12:12
Titel: x einer Funktion an Stelle y finden
|
 |
Hallo,
ich habe folgendes, wahrscheinlich triviales Problem:
Gegeben ist eine Funktion, z.B. :
y = 10 .^ (44.5760 - 4025.3 ./ x - 12.996 .* log10(x) + 0.0046055 .* x) * 133.322
Jetzt suche ich x an vorgegebener Stelle y... Da gibt's doch bestimmt eine einfache Matlab-Funkton für, oder?
Diese Funktion ist streng monoton, daher gibt es nur x zu jedem y, aber schön wäre es, wenn es auch etwas gibt, das mir alle Werte innerhalb eines vorgegebenen Intervalls für nicht streng monotone Funktionen wie im einfachsten Fall y=x² oder y=sin(x) errechnet...
Dankeschön
|
|
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 23.09.2016, 13:33
Titel:
|
 |
Hallo,
numerisch gibt es dafür
fzero
oder
fsolve
. Allerdings wird dabei immer nur eine Lösung gefunden.
Symbolisch gibt es
solve
. Das löst allerdings nur "einfache" Gleichungen.
Eine andere Möglichkeit, alle Lösungen zu finden, ist natürlich, die Funktion auf einem Gitter auszuwerten und alle y zu suchen, die nahe am gewünschten Wert sind. Wenn man es genauer haben möchte, kann man diese nahen Werte dann als Startwert in fzero oder fsolve stecken.
Grüße,
Harald
|
|
|
Fragender |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 23.09.2016, 15:03
Titel:
|
 |
Hallo Harald,
danke schon mal für deine Hilfe.
Wie ich die Funktionsbeschreibung verstehe, gibt mir fzero lediglich die Nullstellen aus. Ich möchte aber in meinem Skript je nach Randbedingungen unterschiedliche (zu wählende) y-Werte abfragen.
Da ich leider der totale Matlab-Anfänger bin, stehe ich noch ratlos vor der Beschreibung von
fsolve
und
solve
.
Einfache Gleichungen habe ich eigentlich nicht, die sind alle in der Art des angegebenen Beispiels oder noch wilder...
Gruß, Fragender
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 23.09.2016, 15:15
Titel:
|
 |
Hallo,
Wenn du beispielsweise f(x) = 20 lösen möchtest, dann kannst du ja Nullstellen von f(x)-20 suchen.
Die Beispiele sollten doch eigentlich ganz hilfreich sein?
Grüße,
Harald
|
|
|
Fragender |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 23.09.2016, 15:50
Titel:
|
 |
Oh, ja, super, das klappt so natürlich... da stand ich wohl auf dem Schlauch, dem freitagnachmittags-Schlauch...
Dankeschön für diese Hilfe, da kann ich jetzt wenigstens beruhigt ins Wochenende gehen.
MfG
|
|
|
|
|
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.
|
|