Write Matlab code for Numerical Differentiation using Newton Forward, Backward, and Lagranges formulas?
Mostrar comentarios más antiguos
Fun = @(x) exp(-x).*sin(3*x);
dFun = @(x) -exp(-x).*sin(3*x)+ 3*exp(-x).*cos(3*x);
x=linspace(0,4,101);
F=Fun(x);
h=x(2)-x(1);
xCentral=x(2:end-1);
dFCenteral=(F(3:end)-F(1:end-2))/(2*h);
xForward=x(1:end-1);
dFForward=(F(2:end)-F(1:end-1))/h;
xBackward=x(2:end);
dFBackward=(F(2:end)-F(1:end-1))/h;
plot(x,dFun(x));
hold on
plot(xCentral,dFCenteral,'r')
plot(xForward,dFForward,'k');
plot(xBackward,dFBackward,'g');
legend('Analytic','Central','Forward','Backward')
3 comentarios
John D'Errico
el 28 de Jul. de 2020
What is your question? if your code works, then why are you posting your homework? So you must have a question in this somewhere.
Muhammad Owais
el 28 de Jul. de 2020
Muhammad Owais
el 29 de Jul. de 2020
Respuestas (0)
Categorías
Más información sobre Signal Processing Toolbox en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!