数值计算方法实验报告.docx

上传人:b****5 文档编号:3536533 上传时间:2022-11-23 格式:DOCX 页数:9 大小:159.99KB
下载 相关 举报
数值计算方法实验报告.docx_第1页
第1页 / 共9页
数值计算方法实验报告.docx_第2页
第2页 / 共9页
数值计算方法实验报告.docx_第3页
第3页 / 共9页
数值计算方法实验报告.docx_第4页
第4页 / 共9页
数值计算方法实验报告.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

数值计算方法实验报告.docx

《数值计算方法实验报告.docx》由会员分享,可在线阅读,更多相关《数值计算方法实验报告.docx(9页珍藏版)》请在冰豆网上搜索。

数值计算方法实验报告.docx

数值计算方法实验报告

 

《数值计算方法》实验报告

 

班级数学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);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 数学

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

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