文档视界 最新最全的文档下载
当前位置:文档视界 › 清华大学数学实验报告9

清华大学数学实验报告9

数学实验报告9约束优化

一、实验目的

1.掌握数据的参数估计、假设检验的基本原理、算法,及用MATLAB实现的方法;

2. 练习用这些方法解决实际问题。

二、实验内容

题目1

【问题描述】

据说某地汽油的价格是115美分/gal,为了验证这种说法,一位司机开车随机选择了一些加油站,得到某年1月和2月的数据如下:

1月

2月

(1)分别用两个月的数据验证这种说法的可靠性;

(2)分别给出1月和2月汽油价格的置信区间(

);

(3)分别给出1月和2月汽油价格差的置信区间(

)。

【分析与解】

检验数据是否服从正态分布,在Matlab中编程如下:

format compact

clear;

clc;

x1 = [119 117 115 116 112 121 115 122 116 118 109 112 119 112 117 113 114 109 109 118];

x2 = [118 119 115 122 118 121 120 122 128 116 120 123 121 119 117 119 128 126 118 125];

h1 = jbtest(x1)

h2 = jbtest(x2)

h11 = lillietest(x1)

h12 = lillietest(x2)

运行以上代码,得到如下结果:

h1 =

h2 =

h11 =

h12 =

结果说明数据服从正态分布,所以可以使用正态分布的相关性质进行假设检验。

为验证上述说法,在Matlab中编程如下:

clc

mean1 = mean(x1)

mean2 = mean(x2)

[mm1 ss1 mmm1 sss1] = normfit(x1,0.05)

[mm2 ss2 mmm2 sss2] = normfit(x2,0.05)

运行以上代码,得到如下结果:mean1 =

115.1500

mean2 =

120.7500

mm1 =

115.1500

ss1 =

3.8699

mmm1 =

113.3388

116.9612

sss1 =

2.9430

5.6523

mm2 =

120.7500

ss2 =

3.7116

mmm2 =

119.0129

122.4871

sss2 =

2.8227

5.4211

分析以上结果可知,第一月汽油价格的平均值为115.15,置信区间为[113.34,116.96],第二月汽油价格的平均值为120.75,置信区间为

[119.01,122.49],一二月份的价格差的置信区间为[3.17,8.03]。

【结论】

(1)说法不可靠,可以认为一月份的汽油价格是115美分/gal,2月份汽油价格应该是120美分/gal;

(2)1月汽油价格的置信区间为[113.34,116.96] ,2月汽油价格的置信区间为[119.01,122.49];

(3)1和2月汽油价格差的置信区间为[3.17,8.03]。

题目2

【问题描述】

甲方向乙方成批供货,甲方承诺合格率为90%,双方商定置信概率为95%。现从一批货中抽取50件,43件为合格品,问乙方是否应该接受这批货物?你能为乙方不接受它出谋划策吗?

【分析与解】

(1)对于检验样本用X=0表示合格品,用X=1表示废品,则X服从0-1分布。设废品率为p,则X的期望

,方差

对其做单边检验:

则当

时接受

,反之则拒绝原假设。

因为

所以应该接受这批产品。

(2)若使得乙方拒绝这批产品,可以通过以下几种方式:

<1>增大抽样数量:

为求解使得乙方拒绝这批产品抽样数量的最小值,在Matlab中编程如下:format compact

clear

clc

x = 43/50;

p0 = 0.9;

n = 50;

z = (x-p0)/sqrt(p0*(1-p0)/n)

u = norminv(0.05,0,1)

function f = nfunc(n,x,p0,u)

f = (x-p0)/sqrt(p0*(1-p0)/n)-u;

end

n0 = fzero(@nfunc,100,[],x,p0,u)

运行以上代码,得到如下结果:

n0 =

152.1868

【结论】当抽样数量的最小值大于等于153时,可以拒绝这批产品。

<2>提高要求的合格率:

为求解使得乙方拒绝这批产品所要求的合格率的最小值,在Matlab中编程如下:

function f=pfunc(p,x,n,u)

f=(x-p)/sqrt(p*(1-p)/n)-u;

end

p=fzero(@pfunc,0.9,[],x,n,u)

运行以上代码,得到如下结果:

p =

0.9223

【结论】当要求的合格率大于92.23%时,可以拒绝这批产品。

<3>修改样本的置信率

为求解使得乙方拒绝这批产品的样本的置信率的最大值,在Matlab中编程如下:

b=1-normcdf(z)

运行以上代码,得到如下结果:

b =

0.8271

【结论】当样本的置信率小于等于降低0.8271时,可以拒绝这批产品。

题目3

【问题描述】

为研究胃溃疡的病例医院做了两组人胃液成分的试验,患胃溃疡的病人组与无胃溃疡的对照组各取30人,胃液中溶菌酶含量如下表所示。

(1)根据这些数据判断患胃溃疡病人的溶菌酶含量与正常人有无显著差别;

(2)若下表患胃溃疡病人组的最后5个数据有误,去掉后再作判断。

胃溃疡病人和正常人(各30人)的溶菌酶含量

1.5 8.8 1.5 9.1 1.9 10.3

2.0 15.6 2.4 16.1

2.5 16.5 2.8 16.7

3.6 20.0

4.8 20.7 4.8 33.0

【分析与解】

本题所列的模型为方差未知的假设检验,对其做双侧检验:

对于假设进行t检验,在Matlab中编程如下:

clear;

clc;

ywky1 = [0.2 10.4 0.3 0.4 10.9 11.3 1.1 2.0 12.4 16.2 2.1 17.6

18.9 3.3 3.8 20.7 4.5 4.8 24 25.4 4.9 40 5 42.2 5.3 50

60 7.5 9.8 45];

wwky = [0.2 5.4 0.3 5.7 0.4 5.8 0.7 7.5 1.2 8.7 1.5 8.8 1.5 9.1

1.9 10.3 2 15.6

2.4 16.1 2.5 16.5 2.8 16.7

3.6 20

4.8 20.7

4.8 33];

[hh1,sigma1,cc1] = ttest2(ywky1,wwky)

ywky2 = [0.2 10.4 0.3 0.4 10.9 11.3 1.1 2.0 12.4 16.2 2.1 17.6

18.9 3.3 3.8 20.7 4.5 4.8 24 25.4 4.9 40 5 42.2 5.3];

[hh2,sigma2,cc2] = ttest2(ywky2,wwky)

运行以上代码,得到如下结果:

hh1 =

1

sigma1 =

0.0251

cc1 =

0.9886 14.3114

hh2 =

sigma2 =

0.1558

cc2 =

-1.5035 9.1528

继续阅读

数学计算方法实验报告

数学计算方法实验报告 习题二 2.估计用二分法求方程f(x)=x3+4x2-10=0在区间[1,2]内根的近似值,为使方程不超过10时所需的二分次数。f(x k) 程序过程: function two (tolerance) a=1;b=2;counter=0; while (abs(b-a)>tolerance) c=(a+b)/2; fa=a^3+4*a^2-10;

fb=b^3+4*b^2-10; fc=c^3+4*c^2-10; if ((fa==0|fb==0)) disp(counter); elseif (fa*fc<0) b=c;counter=counter+1; elseif (fb*fc<0) a=c;counter=counter+1; elseif (fb==0) disp(counter); end end solution=(a+b)/2; disp(solution); disp(counter); 实验结果: 6.取x0=1.5,用牛顿迭代法求第三中的方程根.f(x)=x3+4x2-10=0的近似值(精确到||x k+1-x k|≦10-5,并将迭代次数与3题比较。 程序过程: function six (g) a=1.5; fa=a^3+4*a^2-10;

ga=3*a^2+8*a; b=a-fa/ga; k=1; while(abs(b-a)>g) a=b; fa=a^3+4*a^2-10; ga=3*a^2+8*a; b=a-fa/ga; k=k+1; end format long; disp(a); disp(k); 实验结果:程序结果计算结果 8.用弦割法求方程f(x)=x3-3x2-x+9=0在区间[-2,-1]内的一个实根近似值x k,|f(x k)|≦10-5. 程序过程: function eight (t) a=-2; b=-1; fa=a^3-3*a^2-a+9; fb=b^3-3*b^2-b+9; c=b-fb*(b-a)/(fb-fa); k=1; while(abs(c-b)>t) a=b; b=c; fa=a^3-3*a^2-a+9; fb=b^3-3*b^2-b+9; c=b-fb*(b-a)/(fb-fa); k=k+1; end

线性代数实验报告

线性代数实验报告 2014年1月

一.实验目的 通过以下六道线性代数练习题,熟悉Matlab的基本应用与编程技巧,学会运用Matlab的一些主要功能。命令,通过建立数学模型解决理论或实际问题。提高学习数学的积极性,提高对数学的应用意识并能够用所学的数学知识结合计算机技术去认识和解决实际问题,从而使数学学习更有创造性。进而更加深刻的理解线性代数中的基本概念和基本计算方法,在对行列式,矩阵的秩,矩阵的特征值等典型问题理解更加透彻,运用更加得心应手,真正做到理论与实践相结合。 二.实验过程 1.实验题目 已知矩阵A={{4,-2,2}{-3,0,5}{1,5,3}},B={1,3,4}{-2,0,-3}{2,-1,1}},在MATLAB命令窗口中建立A,B矩阵并对其进行以下操作: (1)计算矩阵A的行列式。 (2)分别计算下列各式:2A-B,A*B和A.*B,AB^-1,A^-1B,A^2,A^T 实验过程: (1)按要求输入A,B矩阵,用det(A)求A的行列式。 (2)A*B计算矩阵A与B相乘所得的矩阵而A.*B用于计算矩阵A与B矩 阵对应元素分别相乘,二者是有区别的。在MATLAB中用A’标示A 的转置,用A\B计算在矩阵B可逆的情况下AB^-1而A.\B表示A可逆的情况下A^-1B,乘方表示与实数相同。

实验结果: 2.实验题目 在MATLAB中分别利用矩阵的初等变换及函数rank,函数inv求下列矩阵的秩: (1)A={{1,-6,3,2}{3,-5,4,0}{-1,-11,2,4}}求Rank(A) (2)B={{3,5,0,1}{1,2,0,0}{1,0,2,0}{1,2,0,2}},求B^-1 实验过程:

清华大学数学实验报告9

数学实验报告9约束优化 一、实验目的 1.掌握数据的参数估计、假设检验的基本原理、算法,及用MATLAB实现的方法; 2. 练习用这些方法解决实际问题。 二、实验内容 题目1 【问题描述】 据说某地汽油的价格是115美分/gal,为了验证这种说法,一位司机开车随机选择了一些加油站,得到某年1月和2月的数据如下: 1月 2月 (1)分别用两个月的数据验证这种说法的可靠性;

(2)分别给出1月和2月汽油价格的置信区间( ); (3)分别给出1月和2月汽油价格差的置信区间( )。 【分析与解】 检验数据是否服从正态分布,在Matlab中编程如下: format compact clear; clc; x1 = [119 117 115 116 112 121 115 122 116 118 109 112 119 112 117 113 114 109 109 118]; x2 = [118 119 115 122 118 121 120 122 128 116 120 123 121 119 117 119 128 126 118 125]; h1 = jbtest(x1) h2 = jbtest(x2) h11 = lillietest(x1) h12 = lillietest(x2)

运行以上代码,得到如下结果: h1 = h2 = h11 = h12 = 结果说明数据服从正态分布,所以可以使用正态分布的相关性质进行假设检验。 为验证上述说法,在Matlab中编程如下: clc mean1 = mean(x1) mean2 = mean(x2) [mm1 ss1 mmm1 sss1] = normfit(x1,0.05) [mm2 ss2 mmm2 sss2] = normfit(x2,0.05)

数值分析实验报告_清华大学_非线性方程的解法

非线性方程的解法 实验1.算法设计与比较 问题提出:非线性方程组的求解方法很多,基本的思想是线性化。不同的方法效果如何,要靠计算的实践来分析、比较。 实验内容:考虑算法 (1)牛顿法 (2)拟牛顿法 分别编写它们的matlab程序。 实验要求: (1)用上述方法,分别计算两个例子。在达到精度相同的前提下,比较迭代次数、浮点运算次数和CPU时间等。 1.1程序清单 为使用flops统计浮点运算次数,使用MATLAB5.3版本 %f1.m原函数f1 function y=f(x) y(1)=12*x(1)-x(2)^2-4*x(3)-7; y(2)=x(1)^2+10*x(2)-x(3)-8; y(3)=x(2)^3+10*x(3)-8; end %ff1.m原函数f1的雅克比矩阵 function y=ff(x) y(1,:)=[12,-2*x(2),-4]; y(2,:)=[2*x(1),10,-1]; y(3,:)=[0,3*x(2)^2,10]; end %f1.m原函数f2 function y=f2(x) y(1)=3*x(1)-cos(x(2)*x(3)) -1/2; y(2)=x(1)^2-81*(x(2)+0.1)^2+sin(x(3))+1.06; y(3)=exp(-x(1)*x(2))+20*x(3)+1/3*(10*pi-3); end %ff2.m原函数f2的雅克比矩阵 function y=ff2(x) y(1,:)=[3,x(3)*sin(x(2)*x(3)),x(2)*sin(x(2)*x(3))];

y(2,:)=[2*x(1),-2*81*(x(2)+0.1),cos(x(3))]; y(3,:)=[-x(2)*exp(-x(1)*x(2)),-x(1)*exp(-x(1)*x(2)),20]; end %牛顿法(以第一个方程组为例) clear; x0=[0,0,0]'; n=10; tol=1e-6; x(:,1)=x0; i=1;u=[1,1,1]'; tic; while (norm(u)>tol*norm(x(:,i))&(itol*norm(x(:,i))&(i

数学实验研究报告

数学实验研究报告 一、实验目的 本实验的目的是通过设计和实施一系列实验,探索数学问题的解决方法,加深学生对数学知识的理解和应用。 二、实验方法 1.实验对象:本实验对象为一组高中数学学生,共30人。 2.实验内容: (1)通过讲解及举例介绍实际问题,并引导学生思考不同的解决方法。 (2)设计难易不同的数学题目,供学生分组解答,并评估其答案的正确性。 (3)分析学生解答问题的思考过程和方法,找出不同方法的优劣之处。 (4)通过小组讨论和展示,让学生展示他们的解决方法,并相互交流学习。 三、实验结果 1.实验成果:通过实验,我们发现学生们在解决数学问题时展现了不同的解决方法。有的学生选择了传统的代数方法,有些学生采用了几何或图形法求解,还有一些学生运用了特殊的数学方法或技巧来解决问题。 2.实验过程:实验中,我们通过设立分组和讨论环节,充分激发学生的学习兴趣,促进他们的主动思考和探索。学生们积极参与,并通过合作

分享各自的解决思路。在小组讨论中,同学们相互借鉴、互相学习,并纠正了一些错误的解题方法。 3.实验效果:通过本次实验,学生们的解题能力得到了提高。他们尝试了不同的方法,培养了他们的逻辑思维能力和创造性解决问题的能力。学生们在小组讨论和展示环节中,通过与他人交流学习,拓宽了自己的知识面,并对数学问题有了更深入的理解。 四、实验结论 通过本次实验,我们得出以下结论: 1.学生在解决数学问题时,可以运用多种不同的方法。不同方法各有优劣,应根据问题的不同选择合适的方法。 2.学生在小组学习中可以互相借鉴和学习,纠正错误的解题方法,共同提高。 3.实验可以激发学生的学习兴趣,培养他们的创造性思维和解决问题的能力。 五、实验改进 本次实验虽然取得了一定的成果,但还有一些可以改进的地方: 1.增加实验时间,提供更多的课堂讨论和练习机会,以便更好地培养学生解决问题的能力。 2.添加实际应用的数学问题,使学生更加深入地理解数学在现实生活中的作用。

数学实验报告模板

篇一:数学实验报告样本 数学实验报告 实验序号: 3日期:2013年 12 月 14 日1 23 4 篇二:数学实验报告模板 数学实验报告 题目 对成绩数据的统计与分析2013年12月15日对成绩数据的统计与分析 一、实验目的 1. 掌握matlab基础功能的使用方法,以加强大学生数学实 验与数学建模能力。 2. 通过对程序设计的学习增强学生对数学问题处理方法探究的兴趣。 二、实验问题 问题背景:每门课程考试阅卷完毕,任课老师都要对班中考试成绩进行统计, 于是出现下面两个问题 1. 统计全班人数,平均分,不及格人数及90分以上人数 2. 计算0-60,60-90,90-100的成绩分布情况,绘制饼状图,凸显不及 格的人。 三、建立数学模型 现将以上实际问题转化为一下数学问题: 现给出一个数组[a1,a2,a3······an],通过循环语句计数求出n的值,并计 算数组中数值大于等于90和小于60的元素个数,绘制不同数值段(0-60,60-90,90-100)的百分比的饼状图。 四、问题求解和程序设计流程 1.关于成绩,选择将成绩做成数组的形式进行处理。 2.处理则运用for-end,if-else if-end,while-end等循环语句。 3.绘制饼状图则使用一般的数学运算及一些基本绘图代码(pie命令,explode命令)。 五、上机实验结果的分析与结论 1.设计程序如下: a=input (请输入成绩组a[n]=); [h,j]=size(a); zongrenshu=j; pingjunfen=0; gaofen=0;bujige=0; yiban=0; for i=1:1:j; fenshu=a(i); if fenshu>90;gaofen=gaofen+1; pingjunfen=pingjunfen+fenshu;else if fenshu<60; bujige=bujige+1; pingjunfen=pingjunfen+fenshu;else pingjunfen=pingjunfen+fenshu;endend end pingjunfen=pingjunfen/zongrenshu; yiban=zongrenshu-bujige-gaofen; x=[bujige,yiban,gaofen]; explode=[1,0,0]; pie(x,explode); zongrenshu pingjunfen bujige gaofen 运行结果截图: 2. 由于图片大小问题,请看下一页 通过输入了一组成绩数据,得出了该数据的总人数、平均分、不及格人数及高分段人数,并绘制出了相应饼状图。结果正确无误!但是只能用英文拼音显示。 六、实验总结与体会 通过几次数学上机实验的锻炼,熟练了matlab的基本操作,学会了如何让曲线曲面可视化,

数学建模的实验报告

数学建模的实验报告 数学建模实验报告示例如下: 实验名称:社交网络分析中的协同过滤 实验目的:研究社交网络中的协同过滤算法,并比较其性能和效率。 实验设计: 1. 数据收集:从Facebook的公开数据集中获取了20个城市居民的用户数据,包括他们的个人资料、社交关系和浏览记录等。每个用户被标记为一个或多个好友、关注者或喜欢某个特定话题的人。共收集了7000个用户数据点。 2. 数据预处理:对数据进行清洗和特征提取。清洗数据是为了删除无用的信息,提取特征则是为了将数据转化为计算机能够理解的形式。 3. 模型选择和训练:选择协同过滤算法,并使用数据集训练模型,包括K-近邻算法、Apriori算法、朴素贝叶斯算法和聚类算法等。 4. 模型评估:使用测试集对不同算法的性能进行评估。计算模型的准确性、召回率、精确度、F1值等指标,并比较不同算法之间的性能。 5. 应用测试:使用测试集尝试在实际应用中应用模型。将模型应用于新的数据集,评估模型的性能和效率,并进行模型的优化和改进。 实验结果: 1. 结果概述:经过预处理和特征提取后,共产生了7000个用户

数据点,其中5566个用户被标记为好友、关注者或喜欢某个特定话题的人。共1897个用户数据点被保留,用于评估模型的性能。 2. 模型评估指标: 准确性:模型预测的准确率。 召回率:模型从测试集中返回的真实用户中,能够被预测为好友或关注者的比例。 精确度:模型预测的精确度。 F1值:在测试集中,模型预测正确的用户数量与实际用户数量之比。 实验结果显示,K-近邻算法的性能最好,召回率为74.06%。Apriori算法的性能次之,准确性为72.32%。朴素贝叶斯算法的性能最次,召回率为69.71%。聚类算法的精确度最低,为68.91%。 3. 应用测试结果: 在实际应用中,将模型应用于新的数据集,评估模型的性能和效率。实验结果显示,K-近邻算法的应用性能最好,召回率为89.46%。Apriori算法的应用性能次之,召回率为78.21%。朴素贝叶斯算法的应用性能最次,召回率为76.86%。聚类算法的应用性能最低,召回率为74.08%。 结论: 该实验研究了社交网络中的协同过滤算法,比较了不同的算法在性能和效率方面的表现。实验结果显示,K-近邻算法在协同过滤算法中表现最好,召回率为74.06%。Apriori算法的性能次之,准确性为

微分方程数值解实验报告

微分方程数值解实验报告 微分方程数值解实验报告 一、引言 微分方程是数学中一类重要的方程,广泛应用于各个科学领域。在实际问题中,往往难以得到微分方程的解析解,因此需要借助数值方法来求解。本实验旨在 通过数值解法,探索微分方程的数值解及其应用。 二、数值解法介绍 常用的微分方程数值解法有欧拉法、改进欧拉法、四阶龙格-库塔法等。在本实验中,我们将采用改进欧拉法进行数值解的求取。 改进欧拉法是一种一阶的显式迭代法,其基本思想是将微分方程的导数用差商 来近似表示,并通过迭代逼近真实解。具体迭代公式如下: \[y_{n+1} = y_n + h \cdot f(x_n + \frac{h}{2}, y_n + \frac{h}{2} \cdot f(x_n, y_n))\] 其中,\(y_n\)表示第n步的近似解,\(h\)表示步长,\(f(x_n, y_n)\)表示微分方程 的导数。 三、实验步骤 1. 确定微分方程及初始条件 在本实验中,我们选择经典的一阶常微分方程:\[y' = -2xy\]并给定初始条件 \(y(0) = 1\)。 2. 设置步长和迭代次数 为了得到较为准确的数值解,我们需要合理选择步长和迭代次数。在本实验中,我们将步长设置为0.1,迭代次数为10。 3. 迭代计算数值解

根据改进欧拉法的迭代公式,我们可以通过编写计算程序来求解微分方程的数 值解。具体计算过程如下: - 初始化:设定初始条件\(y_0 = 1\),并给定步长\(h = 0.1\)。 - 迭代计算:使用改进欧拉法的迭代公式,通过循环计算得到\(y_1, y_2, ..., y_{10}\)。 - 输出结果:将计算得到的数值解输出,并进行可视化展示。 四、实验结果与分析 通过以上步骤,我们得到了微分方程的数值解\(y_1, y_2, ..., y_{10}\)。将这些数 值解进行可视化展示,可以更直观地观察到解的变化趋势。 根据实验结果,我们可以发现随着迭代次数的增加,数值解逐渐逼近了真实解。同时,我们还可以观察到解的曲线形状,进一步分析微分方程的特性和行为。五、实验总结 通过本次实验,我们深入了解了微分方程数值解的求取过程,并通过改进欧拉 法进行了实际求解。实验结果表明,数值解能够较好地逼近真实解,为实际问 题的求解提供了有效的数值方法。 然而,需要注意的是,数值解仍然是近似解,其精度受到步长和迭代次数的影响。因此,在实际应用中,我们需要根据具体问题的要求,合理选择步长和迭 代次数,以获得更精确的数值解。 六、参考文献 [1] Burden, R., & Faires, J. (2010). 数值分析(第8版). 北京: 高等教育出版社。 [2] Chapra, S. C., & Canale, R. P. (2010). 数值方法(第6版). 北京: 清华大学出 版社。

数值分析实验报告-清华大学--线性代数方程组的数值解法

数值分析实验报告-清华大学--线性代数方程组的数值解法(总15页) --本页仅作为文档封面,使用时请直接删除即可-- --内页可以根据需求调整合适字体及大小--

线性代数方程组的数值解法 实验1. 主元的选取与算法的稳定性 问题提出:Gauss 消去法是我们在线性代数中已经熟悉的。但由于计算机的数值运算是在一个有限的浮点数集合上进行的,如何才能确保Gauss 消去法作为数值算法的稳定性呢?Gauss 消去法从理论算法到数值算法,其关键是主元的选择。主元的选择从数学理论上看起来平凡,它却是数值分析中十分典型的问题。 实验内容:考虑线性方程组 n n n R b R A b Ax ∈∈=⨯,, 编制一个能自动选取主元,又能手动选取主元的求解线性方程组的Gauss 消去过程。 实验要求: (1)取矩阵⎥⎥ ⎥ ⎥⎥ ⎥⎦ ⎤⎢⎢⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡=1415157,6816816816 b A ,则方程有解T x )1,,1,1(* =。取 n=10计算矩阵的条件数。让程序自动选取主元,结果如何? (2)现选择程序中手动选取主元的功能。每步消去过程总选取按模最小或按模尽可能小的元素作为主元,观察并记录计算结果。若每步消去过程总选取按模最大的元素作为主元,结果又如何?分析实验的结果。 (3)取矩阵阶数n=20或者更大,重复上述实验过程,观察记录并分析不同的问题及消去过程中选择不同的主元时计算结果的差异,说明主元素的选取在消去过程中的作用。 (4)选取其他你感兴趣的问题或者随机生成矩阵,计算其条件数。重复上述实验,观察记录并分析实验结果。 程序清单 n=input('矩阵A 的阶数:n='); A=6*diag(ones(1,n))+diag(ones(1,n-1),1)+8*diag(ones(1,n-1),-1); b=A*ones(n,1); p=input('计算条件数使用p-范数,p='); cond_A=cond(A,p) [m,n]=size(A);

清华大学数值分析实验报告

数值分析实验报告 一、 实验3.1 题目: 考虑线性程组b Ax =,n n R A ⨯∈,n R b ∈,编制一个能自动选取主元,又能手动选取主元的求解线性代数程组的Gauss 消去过程。 (1)取矩阵⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡=6816816816 A ,⎥⎥ ⎥ ⎥⎥ ⎥⎦⎤ ⎢⎢⎢⎢⎢⎢⎣⎡=1415157 b ,则程有解()T x 1,,1,1*⋯=。取10 =n 计算矩阵的条件数。分别用顺序Gauss 消元、列主元Gauss 消元和完全选主元Gauss 消元法求解,结果如? (2)现选择程序中手动选取主元的功能,每步消去过程都选取模最小或按模尽可能小的元素作为主元进行消元,观察并记录计算结果,若每步消去过程总选取按模最大的元素作为主元,结果又如?分析实验的结果。 (3)取矩阵阶数n=20或者更大,重复上述实验过程,观察记录并分析不同的问题及消去过程中选择不同的主元时计算结果的差异,说明主元素的选取在消去过程中的作用。 (4)选取其他你感兴趣的问题或者随机生成的矩阵,计算其条件数,重复上述实验,观察记录并分析实验的结果。

1. 算法介绍 首先,分析各种算法消去过程的计算公式, 顺序高斯消去法: 第k 步消去中,设增广矩阵B 中的元素() 0k kk a ≠(若等于零则可以判定系数 矩阵为奇异矩阵,停止计算),则对k 行以下各行计算() () ,1,2,,k ik ik k kk a l i k k n a ==++, 分别用ik l -乘以增广矩阵B 的第k 行并加到第1,2, ,k k n ++行, 则可将增广矩阵B 中第k 列中() k kk a 以下的元素消为零;重复此法,从第1步进行到第n-1步,则可以得到最终的增广矩阵,即()()(),n n n B A b ⎡⎤=⎣ ⎦; 列主元高斯消去法: 第k 步消去中,在增广矩阵B 中的子阵()()()()k k kk kn k k nk nn a a a a ⎡⎤⎢ ⎥⎢ ⎥⎢⎥⎣⎦ 中,选取() k k i k a 使得()(k) max k k i k ik k i n a a ≤≤=,当k i k ≠时,对B 中第k 行与第k i 行交换,然后按照和顺序消去 法相同的步骤进行。重复此法,从第1步进行第n-1步,就可以得到最终的增广矩阵,即( ) ()()111,n n n B A b ⎡⎤=⎣ ⎦; 完全主元高斯消去法: 第k 步消去中,在增广矩阵B 中对应的子阵()()()()k k kk kn k k nk nn a a a a ⎡⎤⎢ ⎥⎢ ⎥⎢⎥⎣⎦ 中,选取()k k k i j a 使得()(k) max k k k i j ij k i n k j n a a ≤≤≤≤=,若k i k ≠或k j k ≠,则对B 中第k 行与第k i 行、第k 列与第k j 列 交换,然后按照和顺序消去法相同的步骤进行即可。重复此法,从第1步进行到

约瑟夫环 实验报告

约瑟夫环实验报告 约瑟夫环实验报告 引言: 约瑟夫环是一个经典的数学问题,它源自于古代传说。根据传说,古代犹太人 被罗马人围困在一个洞穴中,他们决定用一种特殊的方式来决定谁将成为首领。他们站成一个圆圈,从一个人开始,每隔一个人杀掉一个,直到只剩下一个人。这个问题被称为约瑟夫环问题,它在数学领域引起了广泛的研究和探讨。 实验目的: 本实验旨在通过模拟约瑟夫环问题,探讨其数学规律和解法,并分析实验结果 的意义和应用。 实验步骤: 1. 首先,我们需要确定参与约瑟夫环的人数n和每次报数的间隔m。在本次实 验中,我们选择了n=10和m=3。 2. 接下来,我们将10个人按顺序排成一个圆圈,并给每个人编号,编号从1到10。 3. 实验开始时,从第一个人开始报数,每次报数到m的人将被淘汰出局。 4. 淘汰的人将离开圆圈,下一个人将从淘汰者的下一个人开始报数,继续进行 报数和淘汰的过程,直到只剩下一个人为止。 实验结果: 通过模拟实验,我们得到了以下结果: - 第一轮淘汰的人依次为:3、6、9、2、7、1、8、5、10。 - 第二轮淘汰的人依次为:4、9、2、8、5、1、7、6。

- 第三轮淘汰的人依次为:9、8、5、1、7、4、6。 - 第四轮淘汰的人依次为:1、7、4、6、9、5。 - 第五轮淘汰的人依次为:7、4、6、9、5。 - 第六轮淘汰的人依次为:4、6、9、5。 - 第七轮淘汰的人依次为:6、9、5。 - 第八轮淘汰的人依次为:9、5。 - 第九轮淘汰的人依次为:5。 结论: 通过实验结果的分析,我们可以得出以下结论: 1. 在本次实验中,最后幸存的人是编号为5的人。 2. 根据实验结果,我们可以总结出约瑟夫环问题的一般解法。假设总人数为n,每次报数的间隔为m,最后幸存的人的编号可以通过递归公式f(n,m)=[f(n- 1,m)+m]%n得到。 3. 约瑟夫环问题在数学中具有一定的研究价值和应用意义。它涉及到递归、数 论等数学概念和方法,可以帮助我们更好地理解和应用这些数学知识。 进一步探讨: 除了基本的约瑟夫环问题,还有一些相关的变体问题值得进一步探讨和研究。 例如,可以考虑不同的报数规则、不同的初始位置等条件下的约瑟夫环问题。 此外,还可以研究约瑟夫环问题在实际生活中的应用,例如在计算机科学、密 码学等领域的应用。 总结: 通过本次约瑟夫环实验,我们深入了解了这个经典数学问题的规律和解法。实

迭代法实验报告

迭代法实验报告 迭代法实验报告 引言: 迭代法是一种常见的数值计算方法,通过反复迭代逼近解的过程,来解决一些复杂的数学问题。本实验旨在通过实际操作,深入理解迭代法的原理和应用,并通过实验数据验证其有效性。 一、实验目的 本实验的主要目的有以下几点: 1. 掌握迭代法的基本原理和步骤; 2. 熟悉迭代法在数值计算中的应用; 3. 理解迭代法的收敛性和稳定性; 4. 验证迭代法在实际问题中的有效性。 二、实验原理 迭代法是一种通过不断逼近解的方法,其基本原理可概括为以下几步: 1. 选择一个初始值作为迭代的起点; 2. 根据问题的特点和要求,构造一个递推公式; 3. 通过不断迭代计算,逐步逼近解; 4. 判断迭代过程是否收敛,并确定最终的解。 三、实验步骤 1. 选择合适的初始值。初始值的选择对迭代的结果有重要影响,通常需要根据问题的特点进行合理选取。 2. 构造递推公式。根据问题的数学模型,建立递推公式,将问题转化为迭代求

解的形式。 3. 进行迭代计算。根据递推公式,进行迭代计算,直到满足收敛条件或达到预 定的迭代次数。 4. 判断迭代结果。根据实际问题的要求,判断迭代结果是否满足精度要求,并 进行相应的调整和优化。 四、实验结果与分析 通过实验操作,我们得到了一组迭代计算的结果。根据实验数据,我们可以进 行以下分析: 1. 收敛性分析。通过观察迭代过程中的数值变化,我们可以判断迭代法的收敛性。如果数值逐渐趋于稳定,且与理论解的误差在可接受范围内,说明迭代法 收敛。 2. 稳定性分析。迭代法的稳定性是指在初始值变化时,迭代结果是否保持稳定。通过改变初始值,我们可以观察迭代结果的变化情况,从而评估迭代法的稳定性。 3. 精度分析。迭代法的精度取决于迭代过程中的误差累积情况。通过与理论解 的比较,我们可以评估迭代法的精度,并对迭代过程进行优化。 五、实验结论 通过本次实验,我们深入了解了迭代法的原理和应用,通过实际操作验证了迭 代法在数值计算中的有效性。实验结果表明,迭代法在解决复杂数学问题中具 有较高的准确性和稳定性,能够满足实际应用的需求。同时,我们也意识到迭 代法的初始值选择、递推公式的构造等因素对迭代结果的影响,需要根据实际 问题进行合理调整和优化。

常微分方程的数值解法实验报告

常微分方程的数值解法实验报告 实验报告:常微分方程的数值解法 摘要: 常微分方程(ODE)是描述动力学系统中物理量随时间变化的数学方程,广泛应用于自然科学和工程领域。然而,对于一些复杂的非线性ODE,很难找到解析解。因此,我们需要数值解法来求解这些方程。本实验报告 将介绍四种常见的常微分方程数值解法,分别是欧拉法、改进的欧拉法、 四阶龙格-库塔法和自适应步长的龙格-库塔法,并通过数值实验比较它们 的精度和效率。 1.引言 在实际问题中,许多物理量的变化规律可以由常微分方程描述。然而,对于复杂的非线性ODE,很难找到解析解。因此,为了解决这类问题,我 们需要借助数值方法来求解。 2.方法 本实验采用四种常见的常微分方程数值解法:欧拉法、改进的欧拉法、四阶龙格-库塔法和自适应步长的龙格-库塔法。 (1)欧拉法是最简单的数值解法,通过将微分方程转化为差分方程,使用离散的步长来近似微分方程。 (2)改进的欧拉法在欧拉法的基础上进行了改进,使用预估-校正的 方法来提高精度。 (3)四阶龙格-库塔法是一种经典的数值解法,通过利用不同步长处 的斜率来近似微分方程,具有较高的精度。

(4)自适应步长的龙格-库塔法是在四阶龙格-库塔法的基础上改进 而来的,根据步长的大小自适应地选择不同的步长,同时保证精度和效率。 3.实验设计 为了比较这四种数值解法的精度和效率,我们设计了两个实验。实验 一是求解一阶常微分方程:dy/dx = -2x,初始条件y(0) = 1,解析解为 y = 1 - x^2、实验二是求解二阶常微分方程:d^2y/dx^2 + y = 0,初始 条件y(0) = 0,dy/dx(0) = 1,解析解为y = sin(x)。 4.结果与分析 实验一中,比较四种数值解法在不同步长下的近似解和解析解,计算 其误差。实验结果表明,四阶龙格-库塔法和自适应步长的龙格-库塔法具 有较高的精度,而欧拉法和改进的欧拉法的精度较低。 实验二中,我们比较四种数值解法在不同步长下的近似解和解析解, 并计算其误差。实验结果表明,四阶龙格-库塔法和自适应步长的龙格-库 塔法仍然具有较高的精度,而欧拉法和改进的欧拉法的精度较低。 5.结论 通过对比四种常微分方程数值解法的实验结果,我们可以得出以下结论:欧拉法是最简单的数值解法,但精度较低;改进的欧拉法提高了精度,但仍然较低;四阶龙格-库塔法具有较高的精度,适用于大多数常微分方程;自适应步长的龙格-库塔法在保证精度的同时提高了效率,适用于需 要求解复杂ODE的问题。 [1] Burden, R. L., & Faires, J. D. (2024). Numerical analysis. Cengage Learning.

数学实验-9:整数规划

数学实验-9:整数规划

实验 9:整数规划 习题9: (原油采购与加工)某公司用两种原油(A和B)混合加工成两种汽油(甲和乙),甲、乙两种汽油含原油A的最低比例分别为50%和60%,每吨售价分别为4800元和5600元。该公司现有原油A 和B的库存量分别为500t和1000t,还可以从市场上买到不超过1500T的原油A。原油A的市场价为:购买量不超过500t时单价为10000元/t;购买量超过500t但是不超过1000t时,超过500t 的部分8000元/t;购买量超过1000t时,超过1000t的部分6000元/t。该公司应该如何安排原油的采购和加工?用连续规划和证书规划分别求解这个问题。 1.模型建立 研究该公司原油的采购和加工过程,需要对两个过程中的各个参数设置变量: a1,a2 A原油分别用来制造甲、乙两种产品的质量(t) b1,b2 B原油分别用来制造甲、乙两种产品的质量(t) y1,y2,y3 购买的A原油质量:y1为<500t部分,y2为>500t且<1000t部分,y3 为>1000t部分(t) cost 购买原油A所需要的总花销(元) 问如何规划投资和生产,实际上就是问如何将利润最大化,根据题目中给出的约束条件建立优化模型的基本形式:

max 4800(11)5600(22)..1/(11)50% 2/(22)60% 12500123 121000 10000*18000*26000*3 (1500)*20 (2500)*30 1,2,3500a b a b Cost s t a a b a a b a a y y y b b Cost y y y y y y y y y y +++-+<+<+<++++<=++-=-=< 其中,约束条件的1、2行为对两种产品含原油A 比例的最低限定条件;3、4行的意义是用来制造产品的原料不能大于库存和购买来的原料总量;Cost 为总花销;6、7、8行实现了y1、y2、y3的意义。 2. 程序设计: 应用Lingo 软件实现以上的程序: max =(a1+b1)*4800+(a2+b2)*5600-cost; 0.5*a1-0.5*b1>0; 0.4*a2-0.6*b2>0; !注意此处需要写成乘法的形势 a1+a2-(y1+y2+y3)<500; b1+b2<1000; cost=10000*y1+8000*y2+6000*y3; (y1-500)*y2=0; (y2-500)*y3=0; y1<500; y2<500; y3<500; @gin (y1); !整数规划约束,连续规划时不需要 @gin (y2);@gin (y3);@gin (a1);@gin (a2);@gin (b1);@gin (b2);@gin (cost); end

反弹高度实验报告图(共9页)

反弹高度实验报告图 篇一:反弹高度 反弹高度》教学设计 【教学目标】 1、结合测量球的反弹高度的实践活动,合理选择测量的方法,进一步了解分数在学习实验中的应用,解决现实生活中的测量问题。 2、经历对实验数据进行数学处理的过程,感受实验研究的科学性和数学结论的严谨性,培养实事求是的科学态度,获得测量活动的实验经验。 3、经历实验操作的过程,与他人分工合作,增强合作意识。 4、在回顾、反思、交流的过程中,进一步学会合理地评价活动过程和方法等,养成自我反思的习惯。 【教学重点】 引导学生经历提出问题、合作测量、收集数据、观察比较、解决问题的过程。 【教学难点】 分析球的反弹高度与下落高度之间的关系以及培养学生的合作意识。 【教学准备】

课件、篮球、兵乓球,米尺、实验记录单 【教学过程】 一、激发兴趣,引入新课。 师:平时,同学们都喜欢玩球,这节课我们就用数学知识来玩球,有兴趣吗?今天老师带来了两种球(篮球和兵乓球),你想玩吗? 抽两名学生分别来拍球,轮流把两种球都拍一拍,再说说拍两种球的感受。其它学生补充介绍自己观察到的情况。 【设计意图:生活是数学的源泉,数学实践活动更离不开生活,玩球是学生十分喜爱的活动,从学生熟悉的喜爱的实践活动入手,激发了学生的兴趣,更能体现综合实践活动教学的现实性、生活性、趣味性和蕴含的问题性,同时让学生在活动中初步感受到球下落过程中不同的反弹结果。】 小结:各种球从高处落下都会反弹,但是反弹的高度却不相同,这里有什么规律吗?下面我们就来探究这个问题。 二、方案设计,探索新知。 1、请大家先猜猜如果从同一高度落下,哪种球会反弹的高一些?(生自由发表自己的见解) 2、提问:同学们的猜测是否正确,不同的球反弹的高度又分别是多少呢?想知道这些,我们需要怎么办?(引导学生认识到实验是检验真理的唯一标准,从而激发学生的实验热情) 3、怎样实验呢?实验前要做哪些准备呢?

非线性方程求解实验报告

数学实验报告非线性方程求解

一、实验目的 1.掌握用 MATLAB 软件求解非线性方程和方程组的基本用法, 并对结果作初步分析; 2.练习用非线性方程和方程组建立实际问题的模型并进行求解。 二、实验内容 题目1 【问题描述】 (Q1)小张夫妇以按揭方式贷款买了1套价值20万元的房子,首付了5万元,每月还款1000元,15年还清。问贷款利率是多少? (Q2)某人欲贷款50 万元购房,他咨询了两家银行,第一家银行开出的条件是每月还4500元,15 年还清;第二家银行开出的条件是每年还45000 元,20 年还清。从利率方面看,哪家银行较优惠(简单假设:年利率=月利率×12)? 【分析与解】 假设初始贷款金额为x0,贷款利率为p,每月还款金额为x,第i个月还完当月贷款后所欠银行的金额为x i,(i=1,2,3,......,n)。由题意可知: x1=x0(1+p)−x x2=x0(1+p)2−x(1+p)−x x3=x0(1+p)3−x(1+p)2−x(1+p)−x ……

x n=x0(1+p)n−x(1+p)n−1−⋯−x(1+p)−x =x0(1+p)n−x (1+p)n−1 p =0 因而有: x0(1+p)n=x (1+p)n−1 p (1) 则可以根据上述方程描述的函数关系求解相应的变量。 (Q1) 根据公式(1),可以得到以下方程: 150p(1+p)180−(1+p)180+1=0 设 f(p)=150p(1+p)180−(1+p)180+1,通过计算机程序绘制f(p)的图像以判断解p的大致区间,在Matlab中编程如下: for i = 1:25 t = 0.0001*i; p(i) = t; f(i) = 150*t*(1+t).^180-(1+t).^180+1; end; plot(p,f),hold on,grid on; 运行以上代码得到如下图像:

数学模型实验报告-lingo软件的使用-习题代码

运筹学 实验报告 姓名: 学号: 班级:

相关问题说明: 一、实验性质和教学目的 本实验是运筹学课内安排的上机操作实验。 目的在于了解、熟悉计算机Lingo软件在运筹学模型求解中的作用,激发学习兴趣,提高学习效果,增强自身的动手能力,提高实际应用能力。 二、实验基本要求 要求学生: 1. 实验前认真做好理论准备,仔细阅读实验指导书; 2. 遵从教师指导,认真完成实验任务,按时按质提交实验报告。 三、主要参考资料 1.LINGO软件 2. LINGO8.0及其在环境系统优化中的应用,天津大学出版社,2005 3. 优化建模与LINDO/LINGO软件,清华大学出版社,2005 4.运筹学编写组主编,运筹学(修订版),清华大学出版社,1990 5.蓝伯雄主编,管理数学(下)—运筹学,清华大学出版社,1997 6.胡运权主编,运筹学习题集(修订版),清华大学出版社,1995 7.胡运权主编,运筹学教程(第二版),清华大学出版社,2003

实验内容 1、线性规划问题: ⎪⎪⎩⎪⎪ ⎨ ⎧≥≤+≤+≤++=0 ,13119241171289..68max 2121212121x x x x x x x x t s x x z (1) 给出原始代码;(2) 计算结果(包括灵敏度分析,求解结果粘贴); (3) 回答下列问题(手写): a ) 最优解及最优目标函数值是多少; b ) 资源的对偶价格各为多少,并说明对偶价格的含义; c ) 为了使目标函数值增加最多,让你选择一个约束条件,将它的常数项增加一个单位,你将选择哪一个约束条件?这时目标函数值将是多少? d ) 对x 2的目标函数系数进行灵敏度分析; e ) 对第2个约束的约束右端项进行灵敏度分析; f ) 结合本题的结果解释“Reduced Cost ”的含义。 对偶价格就是说 约束方程右端变量增加1对目标函数值的影响 答案: (1)代码 max =8*x1+6*x2; 9*x1+8*x2<=12; 7*x1+11*x2<=24; 9*x1+11*x2<=13; x1>=0; x2>=0; (2)计算结果 Global optimal solution found. Objective value: 10.66667 Total solver iterations: 2 Variable Value Reduced Cost X1 1.333333 0.000000 X2 0.000000 1.111111 Row Slack or Surplus Dual Price 1 10.66667 1.000000 2 0.000000 0.8888889 3 14.66667 0.000000 4 1.000000 0.000000 5 1.333333 0.000000

相关文档
相关文档 最新文档