数值计算方法某实验报告材料.docx
- 文档编号:24751161
- 上传时间:2023-06-01
- 格式:DOCX
- 页数:10
- 大小:148.57KB
数值计算方法某实验报告材料.docx
《数值计算方法某实验报告材料.docx》由会员分享,可在线阅读,更多相关《数值计算方法某实验报告材料.docx(10页珍藏版)》请在冰豆网上搜索。
数值计算方法某实验报告材料
《数值计算方法》实验报告
班级数学132班
学号201300144402
姓名袁媛
2016年1月3日
实验报告一
1.实验名称
解线性方程组的直接法
2.实验题目
用追赶法求解下列方程组
3.实验目的
熟练运用已经学过的方法计算方程组,巩固已经学到的解决方程组的方法,培养使用计算机进行科学计算和解决问题的能力,熟悉了解这样的系数矩阵,能运用追赶法进行方程组的求解。
4.基础理论
设A有如下形式的分解
其中
和
为待定常数,则有
由可得如下计算公式:
即在A满足条件的情况下,可以把
和
完全确定出来,从而实现上面
给定形式的LU分解,且
等于
。
这样,求解三对角阵方程组Ax=f就等价于求解两个三角形方程组
从而得到公式:
(1)计算
和
的递推公式
(2)求解
(3)求解
通常把计算
和
的过程称为追的过程,而把计算方程组的解
的过程称为赶的过程,这一方法称为解三角方程组的追赶法。
5.实验环境
C语言,C++,Windows7
6.实验过程
第一步:
将这种形式的系数矩阵进行分解,由
;
第二步:
由
得到y;
第三步:
求解
得到x即可。
7.结果分析
8.附录程序清单
functionx=Hungarian
a=[0-1-2-3];c=[-1-2-3];b=[2345];d=[61-21];
n=length(b);
u0=0;y0=0;a
(1)=0;
L
(1)=b
(1)-a
(1)*u0;
y
(1)=(d
(1)-y0*a
(1))/L
(1);
u
(1)=c
(1)/L
(1);
fori=2:
(n-1)
L(i)=b(i)-a(i)*u(i-1);
y(i)=(d(i)-y(i-1)*a(i))/L(i);
u(i)=c(i)/L(i);
end
L(n)=b(n)-a(n)*u(n-1);
y(n)=(d(n)-y(n-1)*a(n))/L(n);%“赶”的过程
x(n)=y(n);
fori=(n-1):
-1:
1
x(i)=y(i)-u(i)*x(i+1);
end
实验报告二
1.实验名称
Lagrange插值法与最小二乘拟合法
2.实验题目
在某化学反应里,测得某物质的浓度y(单位:
%)随时间t(单位:
min)的变化数据如表5—7所列。
表5-7变化数据
t
y
t
y
t
y
t
y
1
4.00
5
9.22
9
10.00
13
10.50
2
6.40
6
9.50
10
10.20
14
10.55
3
8.00
7
9.70
11
10.32
15
10.58
4
8.80
8
9.86
12
10.42
16
10.60
理论上已知y与t间的关系为
其中
和
为待定系数。
上式两端取对数可得
。
做变量替换
,
,并记
,
,则有
根据所测数据,利用最小二乘直线拟合法先确定系数A和B,进而给出y与t间的关系并绘图展示。
3.实验目的
在求解的过程中,对数据进行拟合法,可以熟悉最小二乘拟合法的理论和方法;更加理解最小二乘拟合法的原理和求解过程,达到熟能生巧的程度,牢记该方法,学以致用。
4.基础理论
最小二乘拟合法
5.实验环境
VisualC++语言
6.实验过程
第一步:
做变量替换z=lny,x=1/t,
第二步:
记A=lna,B=b,
第三步:
解方程z=A+Bx.,
第四步:
由A,B确定a,b,
第五步:
列出y与t间的关系
7.结果分析
由运行的结果可以知道A=-1.0567,B=2.4270,
8.附录程序清单
#include
#include
voidmain()
{
FILE*f;
int n,i;
float tx,ty,x[20],y[20],sum_x=0,sum_y=0,sum_x2=0,sum_xy=0,D,A,B,a;
f=fopen(".\\FittingData.txt","r");
fscanf(f,"%d",&n);
for(i=0;i { fscanf(f,"%f%f",&tx,&ty); x[i]=1/tx; y[i]=log(ty); } fclose(f); for(i=0;i { sum_x=sum_x+x[i]; sum_x2=sum_x2+x[i]*x[i]; sum_y=sum_y+y[i]; sum_xy=sum_xy+x[i]*y[i]; } D=sum_x2*n-sum_x*sum_x; A=(n*sum_xy-sum_x*sum_y)/D; B=(sum_x2*sum_y-sum_x*sum_xy)/D; a=exp(A); printf("A=%7.4f B=%6.4f\ny=%7.4f*e^(%6.4f/t)\n",A,B,a,B); } 实验报告三 1.实验名称 复化求积法 2.实验题目 测得飞机在高度h时的上升速度 的数据如表6-4所列。 表6-4 的数据 0 2 4 6 8 50.0 46.0 40.0 32.2 22.5 飞机从地面上升到Hkm高度所需时间可用下式计算。 (1)用复化梯形公式计算飞机上升到8km高空所需的时间。 (2)用复化Simpson公式计算飞机上升到8km高空所需的时间。 3.实验目的 掌握复化梯形公式和复化Simpson公式求积分的方法。 基础理论: 通过给出的数据和关系式,计算区间的数值积分。 4.基础理论 复化梯形公式,复化Simpson公式 5.实验环境 Matlab软件 6.实验过程 通过给出的数据和关系式,计算0到H区间的数值积分。 7.结果分析 两种方法计算的结果稍微有点偏差。 8.附录程序清单 复化梯形公式求积分 f=inline('5./(1/2*h+3/2)'); h=(10-0)/5; temp=f(0); xk=0; fori=1: 4 xk=xk+h;temp=temp+2*f(xk); end temp=temp+f (1); temp=temp*h/2;%使用化简后的公式 fprintf('\n复化梯形公式计算的结果: %f',temp); temp=0; 复化Simpson公式求积分 h=(10-0)/2;%对复化simpson公式分成2个小区间xk=0;yk=f(0);%xk-x[k] fori=0: 1 xkh=xk+h/2;ykh=f(xkh);%xkh-x[k+1/2] xk1=xk+h;yk1=f(xk1);%xk1-x[k+1] temp=temp+h*(yk+4*ykh+yk1)/6;%加上每个小区间上的面积xk=xk1;yk=yk1;%右端点是下一个小区间的左端点 end fprintf('\n复化simpsom公式计算的结果: %f\n',temp);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数值 计算方法 实验 报告 材料