x=1、1.1、1.2、1.3、1.4;f(x)=0.25、0.2268、0.2066、0.189、0.1736利用三点公式计算在x=1、1.2、1.4处的导数值。
2条回答 默认 最新
- joel_1993 2021-11-11 10:17关注
你好!代码供参考
定义一个函数function dydx = threePiontDerivative(x,y) x = x(:); y = y(:); n = length(x); m = length(y); if(n~=m) error('x和y长度不一致') end if(n<3) error('x和y长度不够,长度至少要有3') end dx = diff(x); h = mean(dx); if(max(abs(h-dx))>1e-12) error('x不是等间距的') end dydx = zeros(size(y)); dydx(2:end-1) = (y(3:end)-y(1:end-2))/(2*h);%首端点 dydx(1) = (-3*y(1)+4*y(2)-y(3))/(2*h);%中间点 dydx(n) = (y(n-2)-4*y(n-1)+3*y(n))/(2*h);%末端点 end
然后调用函数:
x=1.0:0.1:1.4; y=[0.25,0.2268,0.2066,0.189,0.1736]; dydx = threePiontDerivative(x,y)
得到结果如下:
dydx = -0.247000000000000 -0.217000000000000 -0.189000000000000 -0.165000000000000 -0.143000000000000
可见在x=1、1.2、1.4处的导数值分别为:-0.247、-0.189、-0.143
有帮助望采纳哟,谢谢啦本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 14无用
悬赏问题
- ¥15 Python语言实验
- ¥15 SAP HANA SQL 增加合计行
- ¥20 用C#语言解决一个英文打字练习器,有偿
- ¥15 srs-sip外部服务 webrtc支持H265格式
- ¥15 在使用abaqus软件中,继承到assembly里的surfaces怎么使用python批量调动
- ¥15 大一C语言期末考试,求帮助🙏🙏
- ¥15 ch340驱动未分配COM
- ¥15 Converting circular structure to JSON
- ¥30 Hyper-v虚拟机相关问题,求解答。
- ¥15 TSM320F2808PZA芯片 Bootloader