Hope this is the correct section to post this...
Im working on a Matlab program. I have to calculate the second derivative of a given equation. The problem is that plotting the derivative is necessary, and that's where I'm stuck.
Here's what I've got so far:
% Evaluar f(x) y f'(x) usando diferencias hacia atras.
%
x = -10:0.1:10;
f = x.^3 - 5*x.^2 + 2*x + 8;
df = diff(f);
dx = diff(x);
df_dx = df./dx;
xd = x(2:length(x));
d2f = diff(f,2);
d2x = diff(f,2);
d2f_d2x = d2f./d2x;
%
% Graficar lo anterior.
%
subplot(2,1,1),...
plot(x,f,xd,df_dx,xd,d2f_d2x),...
title('Derivada de un polinomio de quinto grado'),...
xlabel('x'),grid,...
ylabel('f(x)'),...
axis([-4,5,-500,1500]);
On the internet I found out that diff(f,2) would calculate the second diff, I guess thats true. Ignore the text in spanish
.
When I try to run the program, the following appears:
??? Error using ==> plot
Vectors must be the same lengths.
Error in ==> C:\MATLAB6p5\work\segunda_diferencial.m
On line 16 ==> plot(x,f,xd,df_dx,xd,d2f_d2x),...
Hope you can help.
Thanks!