好文档 - 专业文书写作范文服务资料分享网站

最小二乘拟合法实验报告

天下 分享 时间: 加入收藏 我要投稿 点赞

v1.0 可编辑可修改 《数值计算方法》实验报告

专业: 姓名: 学号: 班级: 成绩:

1. 实验名称

实验5 最小二乘拟合法

2. 实验题目

在某化学反应里,测得某物质的浓度y(单位:%)随时间t(单位:min)的变化数据如表5—7所列。 t 1 2 3 4 y t 5 6 7 8 y t 9 10 11 12 y t 13 14 15 16 y 理论上已知y与t间的关系为

y?aeb/t,

其中a>0和b<0为待定系数。上式两端取对数可得ln y=ln a+b/t.做变量替换

z=ln y,x=1/t,并记A=ln a,B=b,则有

z=A+Bx.

根据所测数据,利用最小二乘直线拟合法先确定系数A和B,进而给出y与t间的关系。

3. 实验目的

11

v1.0 可编辑可修改 熟练使用最小二乘拟合法

4. 基础理论

最小二乘拟合法

5. 实验环境

Microsoft Visual C++

6. 实验过程

开始 建立数组,输入令z=ln y, x=1/t, z=A+Bx 用最小二乘拟合法建立方程组,求出系数A,B并输再输出y与t的关系。 结束

7. 结果分析

22

v1.0 可编辑可修改

本次试验令我更加熟悉最小二乘拟法;

8. 附录:程序清单

#include<> #include<> void main(){

int i=0;

double z[16],x[16],D,a,b;

double t[16]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16}; double y[16]={,,,,,,,,,,,,,,,};

double sum_x=0,sum_x2=0,sum_y=0,sum_xy=0; for(i=0;i<16;i++){

for(i=0;i<16;i++){

sum_x=sum_x+x[i]; sum_x2=sum_x2+x[i]*x[i]; sum_y=sum_y+z[i];

33

x[i]=1/t[i]; z[i]=log(y[i]); }

v1.0 可编辑可修改 }

sum_xy=sum_xy+x[i]*z[i];

D=sum_x2*16-sum_x*sum_x; a=(16*sum_xy-sum_x*sum_y)/D; b=(sum_x2*sum_y-sum_x*sum_xy)/D; printf(\,a,b); printf(\,a,b); }

44

最小二乘拟合法实验报告

v1.0可编辑可修改《数值计算方法》实验报告专业:姓名:学号:班级:成绩:1.实验名称实验5最小二乘拟合法2.实验题目在某化学反应里,测得某物质的浓度y(单位:%)随时间t(单位:min)的变化数据如表5—7所列。t1234y
推荐度:
点击下载文档文档为doc格式
2rwkw61amf92i2p9mey92mdyx4233001c98
领取福利

微信扫码领取福利

微信扫码分享