Verfasst am: 08.06.2016, 15:03
Titel: Wieso gibt Matlab die Lösung als Funktion aus?!
Hallo, ich versuche gerade ein Programm zur quadratischen Interpolation zu erstellen. Leider gibt es dir Lösung immer nur als Funktion und nicht als Zahl aus!
Kann mir vielleicht jemand weiterhelfen, wie ich das umwandeln kann?
Code:
f=(0.5+x.^2)*exp(-(x.^2));
fx=(x-2*x.^3)*exp(-(x.^2));
a=-0.2;
b=0.6;
w=0.005;
k=0.1;
epsilon=2*10^-6;
fa=subs(f,x,a);
fb=subs(f,x,b);
fxa=subs(fx,x,a);
while1
xd=1/2*(2*a*(fa-fb)+fxa*(b^2-a^2))/((b-a)*fxa+fa-fb);
if xd>a
if xd>b
xd=b-k*(b-a);
end else xd=a+k*(b-a);
end
fxd=subs(f,x,xd);
fxxd=subs(fx,x,xd);
if fxxd>0
b=xd;
fb=fxd;
fxb=fxxd;
else
a=xd;
fa=fxd;
fxa=fxxd;
end ifabs(fxxd)<w
break end end
Hups, das syms x hatte es nicht mitkopiert! Entschuldigung!
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.