ch4 数值计算

ch4 数值计算

ID:21899912

大小:117.17 KB

页数:9页

时间:2018-10-25

ch4 数值计算_第1页
ch4 数值计算_第2页
ch4 数值计算_第3页
ch4 数值计算_第4页
ch4 数值计算_第5页
资源描述:

《ch4 数值计算》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第4章数值计算l与符号计算相比,数值计算在科研和工程中的应用更为广泛。l和十年、二十年前相比较,在当今计算机软硬件的支持下,人们所能拥有的计算能力已经得到了巨大的提升。4.1数值微积分4.1.1近似数值极限及导数MATLAB数值计算中,没有专门的求极限和导数的指令。原因:数值精度有限,不能表示无穷小量,不能准确描述一个数的邻域。【例4.1-1】设,,试用机器零阈值eps替代理论0计算极限,。x=eps;L1=(1-cos(2*x))/(x*sin(x)),L2=sin(x)/x,symstf1=(1-cos(2*t))/(t*sin(t));f2=sin(t)/t;Ls

2、1=limit(f1,t,0)Ls2=limit(f2,t,0)理论分析表明:,。l借助符号计算所求的极限与理论值一致;l用数值法近似计算的极限与理论不一致。提醒:除非数值近似法求的极限经过理论验证,否则绝不要借助数值法求取极限。函数在点处的导数【例4.1-2】已知,求该函数在区间中的近似导函数。d=pi/100;t=0:d:2*pi;x=sin(t);dt=5*eps;x_eps=sin(t+dt);%自变量的增量为5eps。dxdt_eps=(x_eps-x)/dt;%近似数值导数plot(t,x,'LineWidth',5)holdonplot(t,dxdt_ep

3、s)holdoff8legend('x(t)','dx/dt')xlabel('t')4.1-1增量过小引起有效数字严重丢失后的毛刺曲线x_d=sin(t+d);dxdt_d=(x_d-x)/d;%以d=pi/100为增量算得的数值导数plot(t,x,'LineWidth',5)holdonplot(t,dxdt_d)holdofflegend('x(t)','dx/dt')xlabel('t')图4.1-2增量适当所得导函数比较光滑结论:自变量增量的选取一定要避免太小。MATLAB提供的与“求导”概念有关的指令:dx=diff(X)求差分当X是向量时,dx=X(2:

4、n)–X(1:n-1);当X是矩阵时,dx=X(2:n,:)–X(1:n-1,:);dx的长度比X的“长度”短一个元素(或一行)。x=[12345];y=diff(x)FX=gradient(F)求梯度[FX,FY]=gradient(F)二元函数的梯度当F是向量时,FX(1)=F(2)–F(1),FX(end)=F(end)–F(end-1),FX(2:end-1)=(F(3:end)–F(1:end-2))/2,FX的“长度”与F相同。当F是矩阵时,FX和FY是与F同样大小的矩阵。FX的每行给出F相应行元素间的“梯度”;FY的每列给出F相应列元素间的“梯度”。【例4

5、.1-3】已知,采用diff和gradient计算该函数在区间中的近似导函数。clfd=pi/100;t=0:d:2*pi;x=sin(t);dxdt_diff=diff(x)/d;dxdt_grad=gradient(x)/d;subplot(1,2,1)%宏观上看,diff和gradient所求得近似导数大体相同plot(t,x,'b')holdonplot(t,dxdt_grad,'m','LineWidth',8)plot(t(1:end-1),dxdt_diff,'.k','MarkerSize',8)axis([0,2*pi,-1.1,1.1])8title

6、('[0,2pi]')legend('x(t)','dxdt_{grad}','dxdt_{diff}','Location','North')xlabel('t'),boxoffholdoffsubplot(1,2,2)kk=(length(t)-10):length(t);%最后11个数据的下标holdonplot(t(kk),dxdt_grad(kk),'om','MarkerSize',8)%微观上看,不仅数值上有差异,plot(t(kk-1),dxdt_diff(kk-1),'.k','MarkerSize',8)%而且diff没有给出最后一点的导数。tit

7、le('[end-10,end]')legend('dxdt_{grad}','dxdt_{diff}','Location','SouthEast')xlabel('t'),boxoffholdoff图4.1-3diff和gradient求数值近似导数的异同比较4.1.1数值求和与近似数值积分Sx=sum(X)沿列方向求和Scs=cumsum(X)沿列方向求累计和St=trapz(x,y)采用梯形法沿列方向求函数y关于自变量x的积分Sct=cumtrapz(x,y)采用梯形法沿列方向求函数y关于自变量x的累计积分采样点数愈多,精度越高,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。