|
|
X von Y Wert ermitteln, versch. Steigungen, Y zw. den Werte |
|
equi |
Forum-Century
|
|
Beiträge: 123
|
|
|
|
Anmeldedatum: 07.03.17
|
|
|
|
Wohnort: Tübingen
|
|
|
|
Version: Matlab 2018a
|
|
|
|
|
|
Verfasst am: 20.07.2017, 16:05
Titel: X von Y Wert ermitteln, versch. Steigungen, Y zw. den Werte
|
|
|
|
|
Hallo zusammen,
kurz zu meinem Problem, ich habe Werte auf verschiedenen X-Skalierungen (1x Zeit 1x Weg). Jedoch muss ich verschiedene Kurven von Zeit auf Weg skalieren. Die Umrechnung ist nur auf einem Weg möglich, da ich nur eine Kurve in beiden Skalierungen besitze.
In der Zeit-Skalierung habe ich von dieser Kurve 6 Punkte(s_Z), in der Weg Skalierung habe ich hierzu sehr viele Messwerte (s). Hierzu habe ich die einzelnen Steigungen berechnet (Delta(s)/Delta(x))
s_Z=[1.923;3.28; 7.733; 8.75; 9.999;15.756]
MA=[x s Steigung]
0 0 0
0.0083 0.7870 94.4415
0.0164 1.5780 94.4415
0.0247 2.3349 94.4551
0.0328 3.0969 94.5929
0.0411 3.8847 94.5366
...
Nun zur Aufgabe: Ich möchte für alle s_Z den exakten x Wert bestimmen.
Problem: 1. Feststellen zwischen welchen s-Werten s_Z liegt (automatisch alle s_Z-Werte)
2. X-Wert bis zum Y Wert bestimmen
Meine Ansätze:
zu 1.
zu 2.
[/code]
_________________
Grüße Equi
|
|
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.432
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 20.07.2017, 16:14
Titel:
|
|
Hallo,
auf den ersten Blick würde ich sagen: interpolieren.
Allerdings bekommst du damit interpolierte Werte. Wenn du exakte x-Werte haben möchtest, müsstest du sagen, nach welcher Vorschrift diese bestimmt werden sollen.
Grüße,
Harald
|
|
|
equi |
Themenstarter
Forum-Century
|
|
Beiträge: 123
|
|
|
|
Anmeldedatum: 07.03.17
|
|
|
|
Wohnort: Tübingen
|
|
|
|
Version: Matlab 2018a
|
|
|
|
|
|
Verfasst am: 20.07.2017, 22:04
Titel:
|
|
Hallo Harald,
danke für deine mega schnelle Antwort
was meinst du mit "welcher Vorschrift"?
Hab es glaub ein bisschen schlecht formuliert.
Die exakten X-Werte bekomme ich ja durch:
nur damit hier der Wert s_Z(1,1)=1.923 fest steht.
Ich möchte damit in der Matrix nach jedem Wert von s_Z gesucht wird.
also quasi damit er erst die beiden Codes mit s_Z(1,1) durchläuft, dann s_Z(2,1) usw... und mir dann einen vektor mit den jeweiligen ergebnissen liefert, sprich damit xsumme dann auch 6 Werte enthält.
Ich glaube meine 2 Probleme sind mit den Codes behoben nur die "automatisierung" klappt nicht
EDIT: Also so einfach s_Z wie in den 2 Codes einsetzen geht nicht, da kommt "Matrix dimensions must agree."
_________________
Grüße Equi
|
|
|
equi |
Themenstarter
Forum-Century
|
|
Beiträge: 123
|
|
|
|
Anmeldedatum: 07.03.17
|
|
|
|
Wohnort: Tübingen
|
|
|
|
Version: Matlab 2018a
|
|
|
|
|
|
Verfasst am: 20.07.2017, 22:22
Titel:
|
|
Also quasi:
Zeilen=find(M(:,2)<s_Z(1,1))
Zeilen=find(M(:,2)<s_Z(2,1))
Zeilen=find(M(:,2)<s_Z(3,1))
und für den anderen Code auch, nur damit er halt automatisch erkennt wie lange s_Z ist und jeden Wert einsetzt, da die möglichkeit besteht damit für s_Z bei anderen Messungen mehr Punkte entstehen
_________________
Grüße Equi
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.432
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 20.07.2017, 22:32
Titel:
|
|
Hallo,
du willst ja anscheinend Geradenstücke zwischen benachbarten Punkten durchlegen. Genau das ist aber lineare Interpolation.
Hast du also meinen Vorschlag mit interp1 mal versucht? Das lässt sich problemlos für das ganze s_Z auf einmal ausführen. Bei deinem Ansatz musst du eben zur Not eine for-Schleife verwenden.
Grüße,
Harald
|
|
|
equi |
Themenstarter
Forum-Century
|
|
Beiträge: 123
|
|
|
|
Anmeldedatum: 07.03.17
|
|
|
|
Wohnort: Tübingen
|
|
|
|
Version: Matlab 2018a
|
|
|
|
|
|
Verfasst am: 20.07.2017, 23:07
Titel:
|
|
Hey,
ah, natürlich, lineare Interpolation ist ja nichts anderes wie einen Wert über die Steigung zu berechnen
Jetzt machts klick bei mir
Und ja dein Vorschlag passt dann natürlich
Vielen Dank für deine Hilfe und auch die Erklärung
_________________
Grüße Equi
|
|
|
|
|
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 - 2024
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.
|
|