sacar la primera, segunda, tercera y cuarta derivada de una función

354 次查看(过去 30 天)
Buenas noches, quisiera saber como se puede sacar la primera, segunda, tercera y cuarta derivada de una función a partir de este programa, adjunto archivo, muchas gracias de antemano
clear all % borra variables
clc % limpia pantalla
syms x % variable
format long % formato largo
%% DATOS DE LA FUNCION
f=@(x) cos(x); % FUNCIÓN A EVALUAR
x0=0.8; % Punto donde se desea evaluar la derivada
h=0.01; % Valor de h
ndec=9; % Número de decimales
%% CALCULOS
f2=f(x0+2*h); f2=round(f2,ndec);
f1=f(x0+h); f1=round(f1,ndec);
f_1=f(x0-h); f_1=round(f_1,ndec);
f_2=f(x0-2*h); f_2=round(f_2,ndec);
%% DERIVADAS NUMÉRICAS
Derivada_02=double((f1-f_1)/(2*h)); % Fórmula (Oh2)
Derivada_02=round(Derivada_02,ndec);
Derivada_04=double((-f2+8*f1-8*f_1+f_2)/(12*h)); % Fórmula (Oh4)
Derivada_04=round(Derivada_04,ndec);
%% VALOR REAL
Derivada=diff(f,x,1); % 1° Derivada
ValorReal=double(subs(Derivada,x0)); % valor real de la 1
ValorReal=round(ValorReal,ndec);
%% CALCULO DE ERRORES
error_02=(ValorReal-Derivada_02);
error_04=(ValorReal-Derivada_04);
%% RESULTADOS
fprintf('1° Derivada: %s \n' , Derivada)
fprintf(' Valor real=%0.9f \n' ,ValorReal)
fprintf(' fórmula(Oh2)=%0.9f , error=%+0.9f\n', Derivada_02,error_02)
fprintf(' fórmula(Oh4)=%0.9f , error=%+0.9f\n\n', Derivada_04,error_04)

回答(1 个)

Walter Roberson
Walter Roberson 2020-9-22
You just keep going. After
Derivada=diff(f,x,1);
you can
segunda = diff(Derivada, x);
tercera = diff(segunda, x);

类别

Help CenterFile Exchange 中查找有关 MATLAB 的更多信息

产品


版本

R2017a

Community Treasure Hunt

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

Start Hunting!

Translated by