ImageVerifierCode 换一换
格式:DOCX , 页数:28 ,大小:66.97KB ,
资源ID:8881053      下载积分:2 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8881053.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数值分析作业.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数值分析作业.docx

1、数值分析作业数值分析作业四 刘涌一、作业要求1. 算法的设计方案。2. 全部源程序(要求注明主程序和每个子程序的功能)。3. 用各种积分方法求出的数值解及节点的值。4. 在同一坐标系内画出积分方程精确解的曲线和用各种积分方法求出的数值解的曲线。5. 讨论不同积分法的优劣二、算法设计方案1. 复化梯形积分法:设 在区间a,b上有二阶连续导数,取等距节点复化梯形公式其求积系数总满足对于问题中所给积分方程中的积分项,分别用复化梯形积分法的数值积分算法公式展开,得到含有未知数u(x)和x的方程,有如下形式:再将各个方程积分节点带入各个方程,得到的(n+1)阶方程组。由于对角元素绝对占优,用Gauss消

2、去法解该方程组即可。由于节点数目未知,需要进行迭代确定,每迭代一次,需要判断是否满足精度要求,节点数目增加,然后再进行。2. 复化Simpon积分法:设在区间a,b上有二阶连续导数,取2m+1个等距节点复化Simpson公式为其求积系数总满足复化simpson积分法计算量较小,可以直接每次增加2个节点(区间必需取偶数)。3. Guass积分法:本题中采用下列公式若记,积分区间在a,b,其相应的正交多项式是Ledendre多项式,其形式为如上求积公式,查表得n=NG时的积分节点及求积系数求解得NG个差值节点的值。三、程序源代码:#include#include#include stdlib.h#

3、define N 2601#define M 39#define NG 9double a1N+1N+1,g1N+1,x1N+1,u1N+1;FILE *fp;/N:复化梯形计算的节点数:N+1/M:复化Simpson算法节点数:2*M+1/NG:gauss算法节点数:NG void gsxy(n)/列主元素的gauss消去法求解线性方程组,用于梯形法中方程组的求解 int n; double sum,max,tem; int i,j,r,im; for(r=0;rn;r+) im=r; max=fabs(a1rr); for(i=r;i=max) max=fabs(a1(i+1)r); im

4、=i+1; for(j=r;jn;j+) tem=a1imj; a1imj=a1rj; a1imj=tem; for(i=r+1;in;i+) tem=a1ir/a1rr; for(j=r+1;j=0;i-) sum=0.0; for(j=i+1;jn;j+) sum=sum+a1ij*u1j; u1i=(g1i-sum)/a1ii; double fhtix()/复合梯形法求解,因为计算量大,数组采用全局变量的形式存储,返回误差值,结果存入F:rezult4.txt double h,er; int i,j,n; n=N+1; h=2/(double)N; for(i=0;in;i+) x1

5、i=-1.0+h*(double)i; for(i=0;in;i+) g1i=exp(4*x1i)+(exp(x1i+4)-exp(-1.0*(x1i+4)/(x1i+4); for(i=0;in;i+) for(j=0;jn;j+) if(j=0)|(j=N) a1ij=h*exp(x1i*x1j)/2; else a1ij=h*exp(x1i*x1j); for(i=0;in;i+) a1ii=1.0+a1ii;/ lu(a1,g1,N+1,u1); gsxy(n); er=0.0; for(i=1;iN;i+) er=er+(exp(4*x1i)-u1i)*(exp(4*x1i)-u1i

6、); er=er*h; er=er+h*(exp(4*x10)-u10)*(exp(4*x10)-u10)/2.0; er=er+h*(exp(4*x1N)-u1N)*(exp(4*x1N)-u1N)/2.0; fprintf(fp,梯形解法: error is:%.8en,er); fputs(差值点,计算值,真实值n,fp); for(i=0;in;i=i+20) fprintf(fp, %f,%f,%fn,x1i,u1i,exp(4*x1i); return(er); void lu(a,b,n,x) double a,b,x; int n;/*Doolittle法解线性方程组,用于si

7、mpson和gauss方法中线性方程组的求解*/ int k,t,j,i; double *l,*u,*y; double sum; l=malloc(n*n*sizeof(double); u=malloc(n*n*sizeof(double); y=malloc(n*sizeof(double); for(k=0;kn;k+) lk*n+k=1.0; for(j=0;j0) lj*n=aj*n/u0; for(k=1;kn;k+) for(j=k;jn;j+) sum=0.0; for(t=0;tk;t+) sum=sum+lk*n+t*ut*n+j; uk*n+j=ak*n+j-sum;

8、 if(k(n-1) for(i=(k+1);in;i+) sum=0.0; for(t=0;tk;t+) sum=sum+li*n+t*ut*n+k; li*n+k=(ai*n+k-sum)/uk*n+k; y0=b0; for(i=1;in;i+) sum=0.0; for(t=0;t=0;i-) sum=0.0; for(t=i+1;tn;t+) sum=sum+ui*n+t*xt; xi=(yi-sum)/ui*n+i; free(l); free(u); free(y); return; double fhSimpson(double u2*M+1)/复合Simpson求解,返回误差

9、值,结果存入F:rezult4.txt double x2*M+1,a2*M+12*M+1,g2*M+1,h,er; int i,j; h=1/(double)M; for(i=0;i(2*M+1);i+) xi=-1.0+h*(double)i; for(i=0;i(2*M+1);i+) gi=exp(4*xi)+(exp(xi+4)-exp(-1.0*(xi+4)/(xi+4); for(i=0;i(2*M+1);i+) for(j=0;j(2*M+1);j+) if(j=0)|(j=2*M) aij=h*exp(xi*xj)/3; else if(j%2=0) aij=2*h*exp(x

10、i*xj)/3; else aij=4*h*exp(xi*xj)/3; for(i=0;i(2*M+1);i+) aii=1.0+aii; lu(a,g,2*M+1,u); er=0.0; for(i=2;i2*M;i=i+2) er=er+(exp(4*xi)-ui)*(exp(4*xi)-ui); er=er*h*2/3; for(i=1;i2*M;i=i+2) er=er+(exp(4*xi)-ui)*(exp(4*xi)-ui); er=er*h*4/3; er=er+h*(exp(4*x0)-u0)*(exp(4*x0)-u0)/3; er=er+h*(exp(4*x2*M)-u2*

11、M)*(exp(4*x2*M)-u2*M)/3; fprintf(fp,Simpson解法: error is:%.8en,er); for(i=0;i(2*M+1);i+) fprintf(fp,%f, %f,%fn,xi,ui,exp(4*xi); return(er); double gauss(double uNG)/Gauss积分法求解,返回误差值,结果存入F:rezult4.txt double xNG=-0.9681602395,-0.8360311073,-0.6133714327,-0.3242534234,0,0.3242534234,0.6133714327,0.8360

12、311073,0.9681602395; double a1NG=0.0812743884,0.1806481607,0.2606106964,0.3123470770,0.3302393550,0.3123470770,0.2606106964,0.1806481607,0.0812743884;/NG=9时节点值及系数/ double xNG=-0.9602898565,-0.7966664774,-0.5255324099,-0.1834346425,0.1834346425,0.5255324099,0.7966664774,0.9602898565;/ double a1NG=0.1

13、012285363,0.2223810345,0.3137066459,0.3626837834,0.3626837834,0.3137066459,0.2223810345,0.1012285363;/NG=8时节点值及系数/ double xNG=-0.9324695142,-0.6612093865,-0.2386191861,0.2386191861,0.6612093865,0.9324695142;/ double a1NG=0.1713244924,0.3607615730,0.4679139346,0.4679139346,0.3607615730,0.1713244924;/

14、NG=6时节点值及系数/ double xNG=-0.9491079123,-0.7415311856,-0.4058451514,0,0.4058451514,0.7415311856,0.9491079123;/ double a1NG=0.1294849662,0.2797053915,0.3818300505,0.4179591837,0.3818300505,0.2797053915,0.1294849662;/NG=7时节点值及系数 double aNGNG,gNG,er; int i,j; for(i=0;iNG;i+) gi=exp(4*xi)+(exp(xi+4)-exp(-

15、1.0*(xi+4)/(xi+4); for(i=0;iNG;i+) for(j=0;jNG;j+) aij=a1j*exp(xi*xj); for(i=0;iNG;i+) aii=1.0+aii; lu(a,g,NG,u); er=0; for(i=0;iNG;i+) er=er+a1i*(exp(4*xi)-ui)*(exp(4*xi)-ui); fprintf(fp,Gauss解法: error is:%.8en,er); for(i=0;iNG;i+) fprintf(fp,%f,%f,%fn,xi,ui,exp(4*xi); return(er); void main()/主函数,调

16、用各子函数求解方程,结果存入F:rezult4.txt double u22*M+1,u3NG; double r1,r2,r3; fp=fopen(F:rezult4.txt,w); r1=fhtix(u1); printf(er1 is:%.8en,r1); r2=fhSimpson(u2); printf(er2 is:%.8en,r2); r3=gauss(u3); printf(er3 is:%.8en,r3); fclose(fp); 四、计算结果复化梯形积分法复化Simpon积分法Guass积分法节点值数值解节点值数值解节点值数值解-10.018317-10.018317-0.9

17、68160.020803-0.992310.018889-0.975610.020194-0.836030.035291-0.984620.019479-0.951220.022263-0.613370.085993-0.976930.020087-0.926830.024544-0.324250.273347-0.969240.020715-0.902440.0270601-0.961550.021362-0.878050.0298320.3242533.658356-0.953860.022029-0.853660.032890.61337111.62881-0.946180.022717

18、-0.829270.036260.83603128.33576-0.938490.023426-0.804880.0399760.9681648.06917-0.93080.024158-0.780490.044072-0.923110.024913-0.75610.048589-0.915420.025691-0.731710.053568-0.907730.026493-0.707320.059057-0.900040.027321-0.682930.065109-0.892350.028174-0.658540.071781-0.884660.029054-0.634150.079137

19、-0.876970.029961-0.609760.087247-0.869280.030897-0.585370.096188-0.861590.031862-0.560980.106045-0.85390.032857-0.536590.116912-0.846210.033884-0.51220.128893-0.838520.034942-0.487810.142102-0.830830.036033-0.463420.156664-0.823150.037159-0.439020.172719-0.815460.038319-0.414630.190419-0.807770.0395

20、16-0.390240.209932-0.800080.040751-0.365850.231446-0.792390.042023-0.341460.255164-0.78470.043336-0.317070.281312-0.777010.04469-0.292680.310141-0.769320.046085-0.268290.341924-0.761630.047525-0.24390.376963-0.753940.049009-0.219510.415594-0.746250.05054-0.195120.458183-0.738560.052119-0.170730.5051

21、37-0.730870.053747-0.146340.556903-0.723180.055425-0.121950.613973-0.715490.057157-0.097560.676892-0.707810.058942-0.073170.746259-0.700120.060783-0.048780.822734-0.692430.062681-0.024390.907047-0.684740.06463901-0.677050.0666580.024391.102478-0.669360.068740.048781.215459-0.661670.0708870.0731711.3

22、40017-0.653980.0731010.0975611.47734-0.646290.0753850.1219511.628736-0.63860.0777390.1463411.795646-0.630910.0801680.1707321.979662-0.623220.0826720.1951222.182535-0.615530.0852540.2195122.406198-0.607840.0879170.2439022.652782-0.600150.0906630.2682932.924635-0.592460.0934950.2926833.224348-0.584780

23、.0964150.3170733.554775-0.577090.0994260.3414633.919064-0.56940.1025320.3658544.320684-0.561710.1057350.3902444.763462-0.554020.1090370.4146345.251615-0.546330.1124430.4390245.789794-0.538640.1159550.4634156.383124-0.530950.1195770.4878057.037259-0.523260.1233120.5121957.758428-0.515570.1271640.5365

24、858.553501-0.507880.1311360.5609769.430053-0.500190.1352320.58536610.39643-0.49250.1394560.60975611.46185-0.484810.1438110.63414612.63644-0.477120.1483030.65853713.93141-0.469440.1529360.68292715.35908-0.461750.1577130.70731716.93306-0.454060.1626390.73170718.66833-0.446370.1677190.75609820.58144-0.438680.1729580.78048822.6906-0.430990.178360.80487825.0159-0.42330.1839310.82926827.5795-0.415610.1896760.85365930.40581-0.407920.1956010.87804933.52176-0.400230.201710.90243936.95702-0.392540.2080110.92682940.74433-0.384850.2145080.9512244.91975-0.377160.2212080.9756149.52307

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1