版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。
版权
Matlab专栏收录该内容
51 篇文章1 订阅
订阅专栏
clc;clear all h=0.01;%x属于【a,b】 a=-5;b=5; x=a:h:b n=length(x);%定义y y=sin(0.3*x).*cos(3*x) hold on grid on yx=zeros(1,n); yxx=zeros(1,n);for i=2:n-1yx(i-1)=(y(i+1)-y(i-1))/(2*h);yxx(i-1)=(y(i+1)+y(i-1)-2*y(i))/h^2; end plot(x,y,'r','linewidth',2)plot(x(2:n-1),yx(1:n-2),'g','linewidth',2);plot(x(2:n-1),yxx(1:n-2),'b','linewidth',2);legend('原函数','差分一阶导数','差分二阶导数')xlabel('xx','Interpreter','latex','color','r','fontsize',28);ylabel('yy','Interpreter','latex','color','r','fontsize',28);
收藏
一键三连
扫一扫,分享海报
专栏目录
** MATLAB初学之怎么利用中值差分法求一阶导数 ** 我们最近在学习MATLAB,由于是选修课,所以老师不会讲一些很高深的知识。今天先给大家分享如何利用中值差分法求一阶导数,以后一些基础的内容我将再补充。 ##原理: ##程序源代码,以方程f=cos(x).*exp(-x.^2/2)为例: clear all clc h=0.1; x=-4:h:4; f=cos(x).*exp(-x.^2...