数值分析(matlab程序)

数值分析(matlab程序)

ID:18983814

大小:833.50 KB

页数:46页

时间:2018-09-25

数值分析(matlab程序)_第1页
数值分析(matlab程序)_第2页
数值分析(matlab程序)_第3页
数值分析(matlab程序)_第4页
数值分析(matlab程序)_第5页
资源描述:

《数值分析(matlab程序)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、数值分析(matlab程序)曹德欣曹璎珞第一章绪论数值稳定性程序,计算P11试验题一积分functiontry_stableglobalnglobalaa=input('a=');N=20;I0=log(1+a)-log(a);I=zeros(N,1);I(1)=-a*I0+1;fork=2:NI(k)=-a*I(k-1)+1/k;endII=zeros(N,1);ifa>=N/(N+1)II(N)=(1+2*a)/(2*a*(a+1)*(N+1));elseII(N)=(1/((a+1)*(N+1))+1/N)/2;endfork=N:-1:

2、2II(k-1)=(-II(k)+1/k)/a;endIII=zeros(N,1);fork=1:Nn=k;III(k)=quadl(@f,0,1);endclcfprintf('算法1结果算法2结果精确值')fork=1:N,fprintf('I(%2.0f)%17.7f%17.7f%17.7f',k,I(k),II(k),III(k))endfunctiony=f(x)globalnglobalay=x.^n./(a+x);return第二章非线性方程求解下面均以方程y=x^4+2*x^2-x-3为例:1、二分法functiony=

3、erfen(a,b,esp)formatlongifnargin<3esp=1.0e-4;endiffun(a)*fun(b)<0n=1;c=(a+b)/2;whilec>espiffun(a)*fun(c)<0b=c;c=(a+b)/2;elseiffun(c)*fun(b)<0a=c;c=(a+b)/2;elsey=c;esp=10000;endn=n+1;endy=c;elseiffun(a)==0y=a;elseiffun(b)==0y=b;elsedisp('these,naynotbearootintheintercal')endn

4、functiony=fun(x)y=x^4+2*x^2-x-3;2、牛顿法functiony=newton(x0)x1=x0-fun(x0)/dfun(x0);n=1;while(abs(x1-x0)>=1.0e-4)&(n<=100000000)x0=x1;x1=x0-fun(x0)/dfun(x0);n=n+1;endy=x1nfunctiony=fun(x)y=x^4+2*x^2-x-3;3、割线法functiony=gexian(x0,x1)x2=x1-fun(x1)*(x1-x0)/(fun(x1)-fun(x0));%根据初始XO和

5、X1求X2n=1;while(abs(x1-x0)>=1.0e-4)&(n<=100000000)%判断两个条件截止x0=x1;%将x1赋给x0x1=x2;%将x2赋给x1x2=x1-fun(x1)*(x1-x0)/(fun(x1)-fun(x0));%迭代运算n=n+1;endy=x2nfunctiony=fun(x)y=x^4+2*x^2-x-3;第四章题目:推导外推样条公式:,并编写程序与Matlab的Spline函数结果进行对比,最后调用追赶法解方程组。解:设的二阶导数值,因为在上是三次多项式,所以在上是一次多项式,且可表示为(1)对式

6、(1)进行两次积分可得:(2)由式(2)根据和可得系数为:,(3)将式(3)代入式(2)可得为:分别对和进行求导,并根据两者相等整理得:(4)其中,,,但是要解给定的方程组,还需要两个另外的条件,而外推样条插值的条件可通过下面推理得出:令式(1)中的等于,可得:(5)(6)令式(4)中,然后将式(5)代入得:(7)令式(4)中,然后将式(6)代入得:(8)将方程组(4)和式(7)、式(8)联立展开即得题目所求。按照推导出的外推样条插值公式编程可得如下M文件(spline_wt.m)functionspline_wtX=[012345];Y=[0

7、0.521.53.51.9];%调用自编程序S=spline_w(X,Y);%调用matlab提供程序S1=spline(X,Y);fnplt(S,'r',2);%作图holdonfnplt(S1,'b',1);holdonplot(X,Y,'or');%画上节点title('红线为自编程序曲线,蓝线为自带程序曲线')%pp的第j行表示第j个三次多项式的4系数并写出分段多项式pp=S.coefsP1=poly2str(pp(1,:),'(x-0)')P2=poly2str(pp(2,:),'(x-1)')P3=poly2str(pp(3,:),

8、'(x-2)')ppp=S1.coefsPP1=poly2str(ppp(1,:),'(x-0)')PP2=poly2str(ppp(2,:),'(x

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

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

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