0
Erzeuge die x-Werte als Vektor, danach den y-Vektor (mit den Funktionswerten). Danach hast Du mit der Funktion nichts mehr zu tun.
Dann plotte. Für kleines N (N=4 geht) kannst Du direkt im Plotfenster unter "tools" den Punkt "basic fitting" aufrufen. Damit kannst Du alle möglichen Interpolationen direkt plotten (und die Gleichungen anzeigen lassen). Dann siehst Du schonmal was rauskommen muss. Das als Vorübung.
Allgemein kann man die gewünschten Polynome mit polyfit bzw. spline berechnen und plotten lassen. Kurven ausrechnen und plotten. Am Verlauf (oder Vergleich mit dem Ergebnis der Vorübung) sieht man ja, ob's klappt.
Mit dem Programmieren ist es wie mit Mathe-Aufgaben: Einfach mal anfangen und schauen, was passiert, ausprobieren, rumbasteln.
Dann plotte. Für kleines N (N=4 geht) kannst Du direkt im Plotfenster unter "tools" den Punkt "basic fitting" aufrufen. Damit kannst Du alle möglichen Interpolationen direkt plotten (und die Gleichungen anzeigen lassen). Dann siehst Du schonmal was rauskommen muss. Das als Vorübung.
Allgemein kann man die gewünschten Polynome mit polyfit bzw. spline berechnen und plotten lassen. Kurven ausrechnen und plotten. Am Verlauf (oder Vergleich mit dem Ergebnis der Vorübung) sieht man ja, ob's klappt.
Mit dem Programmieren ist es wie mit Mathe-Aufgaben: Einfach mal anfangen und schauen, was passiert, ausprobieren, rumbasteln.
Diese Antwort melden
Link
geantwortet
mikn
Lehrer/Professor, Punkte: 39.83K
Lehrer/Professor, Punkte: 39.83K
Wie kann ich die x - und y-Werte erzeugen? Habe es nach meinem besten Wissen gemacht aber es stimmt nicht :/ Muss ich erst alle Werte für xj bestimmen (meine x-Werte) und diese dann in f(xj) einsetzen um meine y-Werte zu erhalten, verstehe ich das richtig?
─
honeybees
17.05.2023 um 21:38
Das geht in MATLAB alles sehr einfach - hast Du überhaupt schonmal mit MATLAB gearbeitet? Weißt Du, wie man dort die "Hilfe" benutzt?
Wie lauten Deine Zeilen zur Bereitstellung des x- und y-Vektors? ─ mikn 17.05.2023 um 21:51
Wie lauten Deine Zeilen zur Bereitstellung des x- und y-Vektors? ─ mikn 17.05.2023 um 21:51
Es gibt diverse Befehle zur Erzeugung der x-Werte, z.B. linspace. Da wird ja mit Sicherheit irgendetwas behandelt worden sein, wenn das Ganze in MATLAB zu implementieren ist. Den Vektor mit den y-Werten bekommt man dann, indem man die Funktionsvorschrift auf den x-Vektor anwendet (komponentenweise). Falls du das nicht hinbekommst, solltest du dich dringend nochmal mit den Grundlagen von MATLAB befassen; die können wir hier nämlich nicht ohne größeren Aufwand vermitteln.
─
cauchy
17.05.2023 um 21:52
%Berechnung der zu interpolierenden Punkte
N=4;
j=0:1:N;
xj = -4+j.*8./N; % berechnet x-werte
y = xj.*cos(4.*xj); %berechnet y-werte, wobei y = x*cos(4x)
xj = [-4, -2, 0, 2, 4] %x-Werte als Vektor
y = [3.8306, 0.2910, 0, -0.2910, 3.8306] %y-Werte als Vektor
xx = linspace(min(x), max(x),10);
%Polynom3 Grades
disp('Koeffizienten des Interpolynoms')
p = polyfit(x,y,3)
py =polyval(p,xx);
plot(x,y,'o', xx,py, 'r-', [min(x)], [0,0], 'w')
Koeffizienten des Polynoms:
p =
0.0121 0.2736 -0.1940 -0.6567
─ honeybees 17.05.2023 um 22:19
Und wo ist jetzt das Problem genau? Warum definierst Du xj, y zweimal? Die Zeile xx=... gibt natürlich eine Fehlermeldung.
Wenn Du die Funktion definierst,
f = @(x) x.*cos(4*x);
kannst Du den y-Vektor direkt als fxj=f(xj) definieren.
─ mikn 17.05.2023 um 22:27
Wenn Du die Funktion definierst,
f = @(x) x.*cos(4*x);
kannst Du den y-Vektor direkt als fxj=f(xj) definieren.
─ mikn 17.05.2023 um 22:27
okay danke für den Hinweis und warum gibt xx=.. ein Fehlermeldung?
─
honeybees
17.05.2023 um 22:35
Das siehst Du, wenn Du es laufen lässt (und man sieht es auch direkt an der Zeile). Gibt es bei Dir keine Fehlermeldung?
─ mikn 17.05.2023 um 22:38
─ mikn 17.05.2023 um 22:38