Schnittpunkte - Matlab

Darkko

Cadet 4th Year
Registriert
Juni 2011
Beiträge
65
Hiho

Ich habe 4 Vektoren die mit der plot Funktion 4 Kurven bilden und einen Vektor der einfach eine Gerade repräsentiert. Ich möchte nun die Schnittpunkte dieser Kurven mit der Gerade ermitteln und die entsprechenden Stellen im plot zusätzlich noch visuell hervorheben. Welche Funktionen benötige ich hierzu?

Danke
 
1. Du musst die Gerade und die anderen Funktionen gleichsetzen, und die Ergebnisse in Variablen ausgeben.
Danach musst du die Punkte wieder im Plot ausgeben.
 
Das Gleichsetzen erweist sich als schwierig, da ich nur Vektoren mit y-values habe und keine Kurvenfunktionen. Die Kurve wird erst von Matlab mit der plot Funktion aus den Werten interpoliert, die im Vektor enthalten sind.
 
Gib mal ein Beispiel an. In welcher Dimension sind wird? Wie würdest du es sonst mit Stift und papier machen. Wieso weisst du nicht was plot macht? Ist die entstehende Funktion überhaupt invertierbar, bijektiv, surjektiv, injektiv?
 
Die Vektoren haben je 350 values, z.B.

conv4 =

1.0e-006 *

0.0003
0.0005
0.0009
0.0012
0.0016
0.0020
0.0025
0.0030
0.0036
0.0042
0.0049
0.0057
etc.

das sind die y-Werte, die x-Werte sind implizit gegeben durch die Position des y-Wertes im Vektor.
plot(conv4) führt somit automatisch zu einer Kurve. Als Variabeln habe ich aber nur Vektoren vorliegen. Ich möchte aber die Kurven im Plot miteinander verschneiden. Die Vektoren zu verschneiden ergibt leider nicht das erwünschte Resultat, da nur nach identischen Werten an den gleichen Positionen gesucht wird, Schnittpunkte zwischen den Positionen werden nicht erkannt.
 
was heißt verschneiden? Die Plotfunktion gibt die hier ja einen linearen Polygonzug an. Deine Gerade hat dann doch die gleichen x Werte wie der obige Vektor nur halt andere y-Werte.
Berechne doch dann einfach die Differenz der beiden Vektoren-paare. Dann musst du quasi schauen wo die Vorzeichenwechsel liegen. Bzw. du kannst für die Stückweise linearen Funktionen schauen ob Nullstellen vorliegen.
 
Zurück
Oben