du brauchst elementweise Multiplikation, und eine Zuweisung an n1(x) ist nicht wirklich sinnvoll, da x hier als Index verstanden würde.
f2 sollte vorbelegt werden.
Ok aber leider klappt es nicht so wie ich das will.
Der zweite Plot soll einen "Bspline" darstellen, falls dir das etwas sagt.
Die Werte in eckigen Klammern z.B. [20.0;14.0] sind die Knotenpunkte.
Die Funktion müsste also bei [20.0;14.0] enden. Ich denke ich Plote das ganze falsch, da die einzelnen Funktionen sich ja an den Knotenpunkten orientieren sollten. Die x Achse muss demnach bis 20 reichen. Ich hoffe ich habe mein Problem verständlich rüber gebracht.
Ja das habe ich zuerst ausprobiert, aber so kann ich es nicht machen,
da der Bspline laut Definition im Intervall 0-4 sein soll. Also wird die Funktion p
mit den x-Werten 0:0.01:4 berechnet. Wenn man dann beispielsweise 3.99 als x-Wert hätte müssten alle Summanden von Funktion p 0 ergeben, außer im letzten. Dort muss bei [20.0;14.0]*n5 die Funktion n5 = 1 sein, da sie so definiert ist: n5 = (x-3).*((x-3).*f5); f5 ist wiederum so definiert: f5 = zeros(size(x));
f5(x>=3 & x<4) = 1;
Also steht folgendes da bei einem x-Wert von 3.99:
p = [0.0;0.0]*0+[2.0;4.0]*0+[9.0;4.0]*0+[16.0;8.0]*0+[18.0;12.0]*0+[20.0;14.0]*1;
= [20.0;14.0]*1
Die Funktion soll also beim Punkt (20,14) enden. Die x-Achse muss also im Plot bis 20 gehen obwohl nur die x-Werte 0:0.01:4 zur Berechnung benutzt werden.
Die Kontrollpunkte müssen also den Graph "beeinflussen".
Irgendwas ist an der Art und Weise, wie ich die Funktion plotte falsch.
Vielen vielen Dank! So habe ich mir das vorgestellt.
Kannst du mir vielleicht noch erklären was genau der neue Plot macht und warum man ihn so verwenden muss.
p(1,:) enthält die x-Werte deiner Datenpunkte, p(2,:) die entsprechenden y-Werte. x enthält nur die "Zeit", in der die Datenpunkte abgefahren werden - und die ist aus der Abbildung eines Splines ja nicht direkt ablesbar.
Grüße,
Harald
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.