数值计算方法上机实验.docx
- 文档编号:9081677
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:17
- 大小:213.84KB
数值计算方法上机实验.docx
《数值计算方法上机实验.docx》由会员分享,可在线阅读,更多相关《数值计算方法上机实验.docx(17页珍藏版)》请在冰豆网上搜索。
数值计算方法上机实验
重庆交通大学
学生实验报告
实验课程名称数值计算方法
开课实验室理学院实验室
学院土木建筑学院
专业班级09级测绘工程专业2班
学生姓名吴必坤学号09210205
开课时间2010至2011学年第二学期
评分细则
评分
考勤(10分)
排版格式(10分)
实验程序代码的正确性、完整性(40分)
实验结果及分析(30分)
实验创新(10分)
总成绩
教师签名
张文忠
目录
实验一误差——定积分2
实验二非线性方程求根4
(一)牛顿迭代法4
(二)牛顿下山法5
实验三解线性代数方程组——列主元消元法7
实验四解线性代数方程组——追赶法9
实验五插值与拟合——三次样条差值11
实验一误差——定积分
实验内容:
用两种方法求解以下积分:
1.
初值
2.
初值
=1-
.
2
实验过程:
1.1利用C语言编程求解,程序如下:
#include
#include
voidmain()
{doublex1;inti,n;
x1=100;
for(i=50;i>=0;i--)
{x1=(1-x1)/i;
printf("i=%d,xi=%lf\n",i,x1);}
}
1.2.命令窗口中程序结果如下:
2.1利用C语言编程求解,程序如下:
#include
#include
voidmain()
{doublex1=1-exp(-1);
inti,n,x0;
scanf("%d",&n);
x0=1-exp(-1);
printf("i=0,x0=0.6320205671\n");
for(i=1;i<=n;i++)
{x1=1-i*x1;
printf("i=%d,xi=%12.9lf\n",i,x1);}
}
1.2.命令窗口中程序结果如下:
实验结果分析:
从程序运行的结果可以看出,当输入n=14时,即运算到n=14时,结果与书上的结果并不一致,然而从n=1到n=10的运算结果是完全一致的,从n=11以后的运算结果可能是由于不同时期的计算机的处理数据的能力的不同或精度不同导致的。
实验二非线性方程求根
实验内容:
用牛顿迭代法和牛顿下山法求解方程f(x)=
,取近似值
。
1.牛顿迭代法:
,直到
。
2.牛顿下山法:
,(λ=1
至合适),且直到
|
实验过程:
1.用牛顿迭代法求解
1.1利用C语言编程求解,程序如下:
#include
#include
voidmain()
{doublex=-0.99,y;
intn=0;
printf("%d,%lf\n",n,x);
do
{y=x;
x=x-(x*x*x/3-x)/(x*x-1);
n++;
printf("n=%d,x=%lf\n",n,x);
}while(fabs(y-x)>1e-5);
}
1.2.命令窗口结果截屏如下:
2.用牛顿下山法求解
2.1利用C语言编程求解,程序如下:
#include
#include
doublef(doublex)
{
doublet;
t=x*x*x/3-x;
returnfabs(t);
}
voidmain()
{doublex=-0.99,y;
intk=0;
printf("%d,%lf\n",k,x);
do
{y=x;
intn=0;
do{
x=y;
x=x-pow(0.5,n)*(x*x*x/3-x)/(x*x-1);
n++;
}while(f(x)>=f(y));
k++;
printf("k=%d,n=%d,x=%lf\n",k,n,x);
}while(fabs(x-y)>1e-5);
}
2.2.命令窗口结果截屏如下:
实验结果分析:
从运算截图中我们可以知道,一方面运用牛顿迭代法和牛顿下山迭代法的程序运算的结果是一致的,若出现小小的差异的话,可能是由于设置的变量类型不同导致,另一方面运用牛顿下山迭代法比运用一般牛顿迭代法计算的步骤要少一些,这证明对于同一个题,牛顿下山迭代法的优越性比一般的牛顿迭代要高。
∙实验三解线性代数方程组——列主元消元法
实验内容:
用列主元法解线性方程组
=
实验过程:
1.利用C语言编程求解,程序如下:
#include
#include
voidmain()
{doublet,m1,m2,m3,x1,x2,x3,x4,a[4][5]={1.1348,3.8326,1.1651,3.4017,9.5342,0.5301,1.7875,2.5330,1.5435,6.3941,3.4129,4.9317,8.7643,1.3142,18.4231,1.2371,4.9998,10.6721,0.0147,16.9237};
inti,j;
for(i=0;i<4;i++)
{for(j=0;j<5;j++)
printf("%lf",a[i][j]);
printf("\n");}
for(i=0;i<4;i++)
for(j=0;j<5;j++)
if(a[i][0] t=a[i][0]; a[i][0]=a[i+1][0]; a[i+1][0]=t; for(i=1;i<4;i++) {m1=a[i][0]/a[0][0]; for(j=0;j<5;j++) a[i][j]=a[i][j]-m1*a[0][j];} printf("第一次消元a[][]=\n"); for(i=0;i<4;i++) {for(j=0;j<5;j++) printf("%lf",a[i][j]); printf("\n");} printf("\n"); for(i=1;i<4;i++) for(j=0;j<5;j++)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数值 计算方法 上机 实验