利用matlab求解函數微分


利用matlab解決求解函數微分

1. 問題提出

最近在復習高等數學,感覺可以結合 去理解他。
遇到了一個題目:
高數問題

2. 具體代碼

%{ 解決函數微分問題 %}
clc; clear; close all;
syms x; % be careful performance issue.
f1 = @(x) x^3 - x;
dfdx_syms = diff(f1,x);
dfdx = matlabFunction(dfdx_syms);

[dy,new_y]=getDy(2,1,dfdx,f1)
change_y=getChange(2,1,f1)

[dy,new_y]=getDy(2,0.1,dfdx,f1)
change_y=getChange(2,0.1,f1)

[dy,new_y]=getDy(2,0.01,dfdx,f1)
change_y=getChange(2,0.01,f1)

function [dy,new_y] = getDy(x0,dx,dydx,f)
%myFun 求函數的微分,及函數微分近似
%x0 某點
%dx 自變量的變換
%dydx 函數的導函數
%dy 函數的微分
%new_y 函數值的微分近似
dy=dydx(x0)*dx;
new_y=f(x0)+dy; 
end

function change_y = getChange (x0, change_x, f)
%change_y 求函數變化量
change_y = f(x0+change_x)-f(x0);
end

3. 測試結果

時,結果如下表

1 11 18
0.1 1.1000 1.1610
0.01 0.1100 0.1106


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM