|
|
|
Minima finden ohne Funktion |
|
| equi |

Forum-Century
|
 |
Beiträge: 123
|
 |
|
 |
Anmeldedatum: 07.03.17
|
 |
|
 |
Wohnort: Tübingen
|
 |
|
 |
Version: Matlab 2018a
|
 |
|
|
 |
|
Verfasst am: 07.03.2017, 10:29
Titel: Minima finden ohne Funktion
|
 |
| |
 |
|
Hallo Zusammen,
ich befasse mich erst seit neuem mit Matlab bzw. auch Octave.
Und zwar möchte ich die Y-Werte der Minima einer Kurve ermitteln.
Zur Übung habe ich frei erfundene Werte aus einer txt Datei eingelesen und dann mit einem Spline interpoliert (siehe Anhang). Die Maxima konnte ich ermitteln. Die X-Werte der Minima konnte ich ebenfalls ermitteln. Nur bekomme ich hierzu die Y-Werte nicht heraus.
Das Problem hierbei ist alle Werte sind Positiv und ich besitze keine Formel.
in diesem Bereich funktioniert noch alles:
Habe bereits auf mehrere Wege versucht meine Y-Werte von meinem Minima zu ermitteln aber nichts Funktioniert
so Funktioniert es nicht, da die Fehler Meldung kommt damit es Integer/ganze Zahlen sein muss
Funktioniert ebenfalls beides nicht, da ich hier meinen Vektor negiere
--> beim ersten kommt die Fehlermeldung: Data contains negative values. You may want to "DoubleSided" Option
--> beim zweiten kommt wieder das selbe raus (logischer weise)
Kann mir irgenjemand weiterhelfen?
Bin auch dankbar für Tipps, wenn ihr wisst wie ich die anderen Sachen verbessern könnte
Vielen Dank schonmal:) und Entschuldigung für den Aufsatz, ich hoffe es ist verständlich:D
| Beschreibung: |
|
 Download |
| Dateiname: |
Test.PNG |
| Dateigröße: |
15.77 KB |
| Heruntergeladen: |
361 mal |
|
|
|
|
|
|
| equi |
Themenstarter

Forum-Century
|
 |
Beiträge: 123
|
 |
|
 |
Anmeldedatum: 07.03.17
|
 |
|
 |
Wohnort: Tübingen
|
 |
|
 |
Version: Matlab 2018a
|
 |
|
|
 |
|
Verfasst am: 29.03.2017, 07:50
Titel:
|
 |
Da sich mein Problem noch nicht gelöst hat wollte ich mal nochmals nachfragen
Lässt sich das Minimum (in dem fall dann auch das Maximum) über den Vorzeichenwechsel der Steigung ermitteln?
Den Vorzeichenwechsel der Steigung für einen Tiefpunkt bekomme ich ja durch:
Nur die frage ist wie bekomme ich den dazu nötigen ys-Wert.
Am Tiefpunkt (wie auch am Hochpunkt) ist ja die Steigung=0;
Lässt sich das irgendwie kombinieren damit ich sagen wenn
" (find((diff(vzw)) > 0))" gilt damit er den Punkt suchen soll wo "m=0" und mit den dazugehörigen ys-Punkt ausgibt?
Da ys ja ein interpolierten Spline ist bin ich mir nicht sicher ob die ausgegeben Punkte immer auch beim HP/TP exakt sind, sprich wenn m=0 ist, ist das ein Problem?
Vielen Dank
Grüße
|
|
|
|
| Lukass |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 29.03.2017, 09:07
Titel:
|
 |
Hallo,
im Prinzip bekommt man doch den Y-Wert, wenn du schaust, welchen Funktionswert deine Funktion am Index deines X-Wertes hat, also z.B.
Du kannst beispielsweise auch
findpeaks
nutzen um die lokalen Minima zu bekommen, indem du vorher deine Funktion umdrehst, also mit -1 multiplizierst.
Gruß Lukas
|
|
|
|
| equi |
Themenstarter

Forum-Century
|
 |
Beiträge: 123
|
 |
|
 |
Anmeldedatum: 07.03.17
|
 |
|
 |
Wohnort: Tübingen
|
 |
|
 |
Version: Matlab 2018a
|
 |
|
|
 |
|
Verfasst am: 03.04.2017, 07:30
Titel:
|
 |
Hallo Lukass,
erstmals vielen dank für deine Antwort.
hatte leider bereits schon beide Möglichkeiten ausprobiert aber haben nicht so funktioniert
wenn ich
eingebe, kommt die Fehlermeldung: ys(2.025): subscripts must be either integers 1 to (2^31)-1 or Logicals
und mit der Funktion umdrehen:
kommt folgende Fehlermeldung: Data contains negative values. You may want to "DoubleSided" Option
Grüße[/code]
|
|
|
|
| Lukass |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 03.04.2017, 10:21
Titel:
|
 |
Hallo,
also bei mir funktionieren beide Möglichkeiten ohne Problem. Warum es bei dir Fehler gibt, kann ich mangels fehlender Daten nicht sagen.
Schau dir mal folgende beide Beispiele an, eventuell findest du dann deinen Fehler in deinem Code:
Möglichkeit 1:
Möglichkeit 2: (findpeaks)
Gruß Lukas
|
|
|
|
|
|
|
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.
|
|