If i try to write derivative of f in the below code(i pointed here), it doesn't work. why?

17 vues (au cours des 30 derniers jours)
clear on
clc
syms x
x1=2.5;
f=@(x) x*sqrt(x)+2*x^3+1.5;
df=@(x)(3/2)*sqrt(x)+6*x^2; %[here]
f1= f(x1)+df(x1)*(x-x1);
figure(1)
fplot(f,[0 5])
hold on
fplot(f1,[0 5])
grid on

Réponses (1)

Birdman
Birdman le 30 Mar 2020
You do not have to use Symbolic approach this time. Try the following code:
hold off;
x1=2.5;
f=@(x) x.*sqrt(x)+2*x.^3+1.5; %f(x)
Df=@(x) 6.*x.^2+1.5.*sqrt(x); %derivative of f(x)
f1=@(x) f(x1)+Df(x1)*(x-x1);
fplot(f,[0 5]);hold on;fplot(f1,[0 5]);grid on;
  2 commentaires
Shaik Merkatur Hakim Marjuban
clear on
clc
syms x
x1=2.5;
f=@(x) x*sqrt(x)+2*x^3+1.5;
df=@(x)diff(f,x); %[here]
f1= f(x1)+df(x1)*(x-x1);
figure(1)
fplot(f,[0 5])
hold on
fplot(f1,[0 5])
grid on
Why didn’this work?
Birdman
Birdman le 30 Mar 2020
Firstly, get rid of the
syms x
line because after that line, you use numerical evaluation to get the result. Secondly, you have to define f1 as a function but instead, you define it as if it was a constant value. That is why it is not working. So, use my code to get the result.

Connectez-vous pour commenter.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by