数值分析实验一:误差分析、误差传播及算法稳定性

数值分析实验一:误差分析、误差传播及算法稳定性
数值分析实验一:误差分析、误差传播及算法稳定性

毕节学院实验报告

实验名称: 误差分析、误差传播及算法稳定性 实验报告序号: 1 组 别

姓 名 朱海涛 同组实验者 周礼伟

实验项目

计算1

10

e e n x n I x dx -=?(0,1,)

n = 并估计误差

实验日期 2012年9月26日

实验类别

□√ 1、验证性实验或基础性实验; □ 2、综合性实验

□ 3、设计性实验; □ 4、创新性实验和研究性实验;

教师评语

实验成绩

指导教师(签名)

赖志柱

年 月 日

实验目的:

通过本实验对求解问题的算法进行好坏判断有一个初步了解,并加强对设计一个好算法的理解,体验数值计算稳定性,从而了解数值计算方法的必要性,体会数值计算的收敛性与收敛速度。

实验任务与要求:

计算11

e

e n x

n I x dx -=?

(0,1,)n = 并估计误差

(1)建立若干个(不少于两个)计算公式; (2)分析计算公式的理论误差;

(3)编写程序(推荐MATLAB )实现(1)中的计算公式、输出结果并比较实际误差;

(4)任选正整数m n ,要求既从m I 计算n I ,又从n I 计算m I ,并分析您的结果。这里0m ≠且9n ≠。

小组分工合作说明:

实验过程及内容:

解:

由分部积分可得计算n I 的递推公式

1111

01,1,2,e 1.n n x I nI n I e dx e ---=-=??

?==-??? (1)

若计算出0I ,代入(1)式,可逐次求出 1

2

,,I I …

的值。

要算出0I 就要先算出1e -,若用泰勒多项式展开部分和

2

1

(1)(1)1(1),

2!

!

k

e

k ---≈+-+

++

并取k=19,用4位小数计算,则得

1

0.3679

e

-≈,截断误差

1

4

711|0.3679|10

8!

4

R e

--=-≤

<

?.计算过程中小数点后第5位的数字按四

舍五入原则舍入,由此产生的舍入误差这里先不讨论。当初值取为

00

0.6321I I ≈= 时,用(1)式递推的计算公式为 01

0.6321

A 1n n I I nI -?=?=-?

(),n=1,2,…。

计算结果见表1的n

I 列。用0

I 近似0I 产生的误差0

00

E I I =- 就是初值

误差,它对后面计算结果是有影响的. 从表1中看到18

I 出现负值,这与一切0n

I >相矛盾。实际上,由积

分估值得

1

1

1

1

1

01

01

1(im )(max )1

1

x

n n

n x x e

e m e x dx I e x dx n n ---≤≤≤≤=<<=

++?? (2)

因此,当n 较大时,用n

I 近似n I 显然是不正确的。这里计算公式与

每步计算都是正确的,那么是什么原因合计算结果出现错误呢?主要就是初值0

I 有误差0

00

E

I I =- ,由此引起以后各步计算的误差

n n n

E I I =- 满足关系 1,1,2,n n E nE n -=-=….

由此容易推得

0(1)!n

n E n E =-,

这说明0

I 有误差0E ,则n

I 就是0E 的n!倍误差。例如,n=19,若

4

01||10

2

E -=

?,则190||19!||2E E =?>。这就说明8

I 完全不能近似19I 了。

它表明计算公式(A )是数值不稳定的。 我们现在换一种计算方案。由(2)式取n=19,得

1

19120

20

e

I -<<

我们粗略取1

*

99

1

1

(

)0.0684210

10

e

I I -≈

+

==,然后将公式(1)倒过来算,

即由*9

I 算出*8

I ,*7

I ,…,*0

I ,公式为

*

19**

10.0342()1(1),198n n I B I I n n -?=?

=?=-=??

,1, (1)

计算结果见表1的*

n

I 列。我们发现*0

I 与0I 的误差不超过410-。记

**

n n n

E I I =-,则**

1||||!

n E

E n =

,*

0E 比*n E 缩小了

n!倍,因此,尽管*9

E 较

大,但由于误差逐步缩小,故可用*n

I 近似n I 。反之,当用方案(A )计算时,尽管初值0

I 相当准确,由于误差传播是逐步扩大的,因而

计算结果不可靠。此例说明,数值不稳定的算法是不能使用的。

程序如下:

function x11 = facto(n) %这个函数的功能是求 n 的阶乘; x11 = 1; if n == 0 x11 = 1; else

for i = 1:n x11 = x11*i; end end

function e_1 = telor(k)

%这个函数的功能是求e^(-1);用泰勒多项式展开式进行计算的, % k 是代表展开到第 k+1 项

e_1 = 1;

if k == 1

e_1 = 1;

else

for i=1:k

e_1 = e_1 +(-1)^i/facto(i);

end

end

function jifen(m)

I0=1-telor(19);

%第一种算法

I(1)=I0;

for i = 1:m

I1 = 1 - i*I0;

I(i+1)=I1;

I0=I1;

end

%第二种算法

Im=(1/2)*(1/(m+1)+telor(19)/(m+1));

B(1)=Im;

for i=1:m

In=(1/(m+1-i))*(1-Im);

B(i+1)=In;

Im=In;

end

disp(' n 第 1 种算法第 2 种算法 '); for i = 0:(length(B)-1)

fprintf('%4d %33.4f %12.4f |\n',i,I(i+1),B(m+1-i)); end

在Matlab命令窗口输入如下命令即可得到如表1的结果。

jifen(19)

表1 计算结果

n 第1种算法第2种算法

0 0.6321 0.6321

1 0.3679 0.3679

2 0.2642 0.2642

3 0.2073 0.2073

4 0.1709 0.1709

5 0.1455 0.1455

6 0.1268 0.1268

7 0.1124 0.1124

8 0.1009 0.1009

9 0.0916 0.0916

10 0.0839 0.0839

11 0.0774 0.0774

12 0.0718 0.0718

13 0.0669 0.0669

14 0.0627 0.0627

15 0.0590 0.0590

16 0.0555 0.0557

17 0.0572 0.0527

18 -0.0295 0.0508

19 1.5596 0.0342

数据结构课程设计报告 各种排序算法性能比较

课程设计报告 课程设计题目:各种排序算法性能比较 学生姓名: 学号: 专业:信息管理与信息系统 班级: 指导教师: 2012年06 月23 日

目录 CONT E NT S 一、课程设计目的 (2) 二、课程设计题目概述 (2) 三、数据定义 (2) 四、各种排序的基本原理及时间复杂度分析 (3) 五、程序流程图 (6) 六、程序源代码 (6) 七、程序运行与测试 (15) 八、实验体会………………………………………………………… 九、参考文献…………………………………………………………

一、课程设计目的 课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力。提高学生适应实际,实践编程的能力。 二、课程设计题目概述 排序的方法很多,但是就其全面性能而言,很难提出一种被认为是最好的方法,每一种方法都有各自的优缺点,适合在不同的环境下使用。如果排序中依据的不同原则对内部排序方法进行分类,则大致可分为直接插入排序、直接选择排序、起泡排序、Shell排序、快速排序、堆排序等六类排序算法。 本实验是对直接插入排序、直接选择排序、起泡排序、Shell排序、快速排序、堆排序这几种内部排序算法进行比较,用不同的测试数据做测试比较。比较的指标为关键字的比较次数和关键字的移动次数。最后用图表数据汇总,以便对这些内部排序算法进行性能分析。 三、数据定义 输入数据: 由于大多数排序算法的时间开销主要是关键字之间的比较和记录的移动,算法的执行时间不仅依赖于问题的规模,还取决于输入实例中数据的状态。所以对于输入数据,我们采用由用户输入记录的个数(以关键字的数目分别为20,100,500为例),测试数据由随机数产生器生成。 输出数据: 产生的随机数分别用直接插入排序;直接选择排序;起泡排序;Shell排序;快速排序;堆排序这些排序方法进行排序,输出关键字的比较次数和移动次数。

算法的误差与稳定性

实验名称: 实验一 算法的误差与稳定性 指导教师: 数值分析实验组 实验时数: 2 实验设备:安装了Matlab 、C ++、VF 软件的计算机 实验日期:2014年 月 日 实验地点: 第五教学楼北802或902 实验目的: 掌握舍入误差的概念,理解数值稳定性。 实验准备: 1. 在开始本实验之前,请回顾教科书的相关内容; 2. 需要一台准备安装Windows XP Professional 操作系统和装有数学软件的计算机。 实验内容及要求 B 题 舍入误差在数值计算中是一个很重要的概念,在实际计算中,如果选用了不同的算法,由于舍入误差的影响,将会得到截然不同的结果,因此,选取数值稳定性的算法,在数值计算中是十分重要的。 对0,1,2,,20n = 计算定积分 1 10d -=?n x n y x e x 分别采用下面两个递推公式进行计算,并比较实验结果分析出哪个算法是稳定,并给出具体原因。 递推公式(1)11(1,2,,20)n n y ny n -=-= ; 递推公式(2)11(20,19,,1)n n y y n n --== 。 说明:实验过程应包括对问题的简要分析、求解方法、求解步骤、程序及其必要的图表等内容。 实验过程: 本实验所选题为B 题 实验分析: 方案1 1(1,2,3....20)n n y ny n =-=当=0时1 11001x y e dx e --==-?递推公式为 1101(1,2,,20)1n n y ny n y e --=-=???=-?? 方案2 11(20,19,,1)n n y y n n --= = 当0

大学物理实验报告数据处理及误差分析

篇一:大学物理实验1误差分析 云南大学软件学院实验报告 课程:大学物理实验学期: - 学年第一学期任课教师: 专业: 学号: 姓名: 成绩: 实验1 误差分析 一、实验目的 1. 测量数据的误差分析及其处理。 二、实验内容 1.推导出满足测量要求的表达式,即 0? (?)的表达式; 0= (( * )/ (2*θ)) 2.选择初速度A,从[10,80]的角度范围内选定十个不同的发射角,测量对应的射程, 记入下表中: 3.根据上表计算出字母A 对应的发射初速,注意数据结果的误差表示。 将上表数据保存为A. ,利用以下程序计算A对应的发射初速度,结果为100.1 a =9.8 _ =0 =[] _ = ("A. "," ") _ = _ . ad ()[:-1] = _ [:]. ('\ ') _ = _ . ad ()[:-1] = _ [:]. ('\ ') a (0,10): .a d( a . ( a ( [ ])* / a . (2.0* a ( [ ])* a . /180.0))) _

+= [ ] 0= _ /10.0 0 4.选择速度B、C、D、重复上述实验。 B C 6.实验小结 (1) 对实验结果进行误差分析。 将B表中的数据保存为B. ,利用以下程序对B组数据进行误差分析,结果为 -2.84217094304 -13 a =9.8 _ =0 1=0 =[] _ = ("B. "," ") _ = _ . ad ()[:-1] = _ [:]. ('\ ') _ = _ . ad ()[:-1] = _ [:]. ('\ ') a (0,10): .a d( a . ( a ( [ ])* / a . (2.0* a ( [ ])* a . /180.0))) _ += [ ] 0= _ /10.0 a (0,10): 1+= [ ]- 0 1/10.0 1 (2) 举例说明“精密度”、“正确度”“精确度”的概念。 1. 精密度 计量精密度指相同条件测量进行反复测量测值间致(符合)程度测量误差角度说精密度所 反映测值随机误差精密度高定确度(见)高说测值随机误差定其系统误差亦。 2. 正确度 计量正确度系指测量测值与其真值接近程度测量误差角度说正确度所反映测值系统误差 正确度高定精密度高说测值系统误差定其随机误差亦。 3. 精确度 计量精确度亦称准确度指测量测值间致程度及与其真值接近程度即精密度确度综合概念 测量误差角度说精确度(准确度)测值随机误差系统误差综合反映。 比如说系统误差就是秤有问题,称一斤的东西少2两。这个一直恒定的存在,谁来都是 这样的。这就是系统的误差。随机的误差就是在使用秤的方法。 篇二:数据处理及误差分析 物理实验课的基本程序

(完整word版)实验力学学习心得

实验力学学习心得 曾经对力学的认识很懵懂,以前在我心中力学是一个很抽象的东西,我一直认为力学更多的是在图纸上的演算与推导,凡是与力相关的事物都属于力学范畴。对于力学应用方面的理解,也只是粗略的知道它会应用于航空航天、机械、土木、交通、能源、化工、材料、环境、船舶与海洋等等,但原理是什么,方法是怎样的,我想也绝不只是我最初理解的只是一些受力分析那么简单。而对实验力学这门课的学习则是让我们知道了目前所学的这些知识与它所应用的工程实际相联系的途径和方法。 简单的来说,实验力学就是用实验的方法求解力学问题。即用实验方法测量在力的作用下,物体产生的位移、速度、加速度、应变(形变)、应力、振动频率等物理量。工程实验力学中对实验力学的定义是用实验方法测量应变、应力和位移。也称为实验应力分析。在我现在学习了这门课之后的理解,实验力学是解决工程问题中力学问题的一个重要环节,是求解其力学问题的中间环节,通过实验力学方法测得所需物理量,最终求出结果。 通过课程认知,我了解了解决力学问题的方法主要有两个:理论方法和实验方法。理论方法就是理论方法就是将实际问题转化为数学模型,建立方程,然后求解。它主要有解析法和数值法,理论方法的解答是数学模型的解答,只有实际问题与数学模型相符时才是精确的,这也是它的局限性。而我们这学期学的实验力学的方法就是在实际问题上直接测量。我们这学期做了三个实验力学的实验,分别是测量电桥特性,动态应变测量和光测弹性学方法。这三个实验就用到了实验应力分析的方法——电测,振动测量,光测。实验力学的实验结果更可靠,并且可以发现新问题,开创新领域。不过它也有它的缺点就是测量都有误差,并且实验仪器和材料昂贵,这也导致了费用高。不过,理论分析和实验分析是相辅相成。理论的建立需要实验分析的成果,发现新问题,建立新理论。实验设计和实施需要理论分析做指导。复杂问题需要需要理论与实验共同完成。 正如我刚刚说的,误差是实验方法的一个弊端,也是不可避免的,但随着测试手段的改进和测量者水平的提高,可以减少误差,或者减少误差的影响,提高实验准确程度。实验误差按其产生原因和性质,可以分为系统性误差、偶然性误差和过失误差(粗差)三种。实验力学这门课,同样教会了我们如何去减少误差。比如对称法、初载荷法、增量法消除系统误差。还有通过分析给出修正公式用来消除系统误差,或者定期用更准确的仪器校准实验仪器以减少实验误差,校准时做好记录供以后修正数据用。偶然性误差难以排除,但可以用改进测量方法和数据处理方法,减少对测量结果的影响。例如用多次测量取平均值配合增量法,可以使偶然性误差相互抵消一部分,得到最佳值。过失误差是指明显与实际不符,没有一定的规律。这在我们实验中也会经常出现,通常这些都是由于疏忽大意、操作不当或设备出了故障引起明显不合理的错值或异常值,一般都可以从测量结果中加以剔除。 我们主要做了三个实验,测量电桥特性,动态应变测量和光测弹性学方法。给自己印象最深刻的就是第一个实验。桥路变换接线实验是在等强度实验梁上进行,当时是要在梁的上下表面哥粘贴两个应变片。当时老师在黑板上画了三个图,可是我当时连最基本的图都看不懂,根本不知道哪个是应变片哪个是电阻的意思。接下来在粘应变片的时候也遇到了各种麻烦,应变片倒是没粘好几个,但是手上已经一团糟。好不容易把应变片粘好后,需要用焊锡把电线连上,在仔细琢磨过到底那根线连哪个之后,又遇到了新的麻烦就是那个怎么焊都焊不上,后来找来老师才知道原来是我们那一组的电烙铁有问题,换了个,才继续把这个艰辛的实验做完。这个实验做了不少时间,也着实费了不少的功夫,不过通过这个实验我认识到了自己

五种排序算法的分析与比较

五种排序算法的分析与比较 广东医学院医学信息专业郭慧玲 摘要:排序算法是计算机程序设计广泛使用的解决问题的方法,研究排序算法具有重要的理论意义和广泛的应用价值。文章通过描述冒泡、选择、插入、归并和快速5种排序算法,总结了它们的时间复杂度、空间复杂度和稳定性。通过实验验证了5种排序算法在随机、正序和逆序3种情况下的性能,指出排序算法的适用原则,以供在不同条件下选择适合的排序算法借鉴。 关键词:冒泡排序;选择排序;插入排序;归并排序;快速排序。 排序是计算机科学中基本的研究课题之一,其目的是方便记录的查找、插入和删除。随着计算机的发展与应用领域的越来越广,基于计算机硬件的速度和存储空间的有限性,如何提高计算机速度并节省存储空间一直成为软件设计人员的努力方向。其中,排序算法已成为程序设计人员考虑的因素之一[1],排序算法选择得当与否直接影响程序的执行效率和内外存储空间的占用量,甚至影响整个软件的综合性能。排序操作[2,3],就是将一组数据记录的任意序列,重新排列成一个按关键字有序的序列。而所谓排序的稳定性[4]是指如果在排序的序列中,存在前后相同的两个元素,排序前和排序后他们的相对位臵不发生变化。 1 算法与特性 1.1冒泡排序 1.1.1冒泡排序的基本思想

冒泡排序的基本思想是[5,6]:首先将第1个记录的关键字和第2个记录的关键字进行比较,若为逆序,则将2个记录交换,然后比较第2个和第3个记录的关键字,依次类推,直至n-1个记录和第n个记录的关键字进行过比较为止。然后再按照上述过程进行下一次排序,直至整个序列有序为止。 1.1.2冒泡排序的特性 容易判断冒泡排序是稳定的。可以分析出它的效率,在最好情况下,只需通过n-1次比较,不需要移动关键字,即时间复杂度为O(n)(即正序);在最坏情况下是初始序列为逆序,则需要进行n-1次排序,需进行n(n-1)/2次比较,因此在最坏情况下时间复杂度为O(n2),附加存储空间为O(1)。 1.2选择排序 1.2.1选择排序的基本思想 选择排序的基本思想是[5,6]:每一次从待排序的记录中选出关键字最小的记录,顺序放在已排好序的文件的最后,直到全部记录排序完毕.常用的选择排序方法有直接选择排序和堆排序,考虑到简单和易理解,这里讨论直接选择排序。直接选择排序的基本思想是n个记录的文件的直接排序可经过n-1次直接选择排序得到有序结果。 1.2.2选择排序的特性 容易得出选择排序是不稳定的。在直接选择排序过程中所需进行记录移动的操作次数最少为0,最大值为3(n-1)。然而,无论记录的初始排序如何,所需进行的关键字间的比较次数相同,均为n(n-1)/2,时间

数值分析实验报告1

实验一 误差分析 实验(病态问题) 实验目的:算法有“优”与“劣”之分,问题也有“好”与“坏”之别。对数值方法的研究而言,所谓坏问题就是问题本身对扰动敏感者,反之属于好问题。通过本实验可获得一个初步体会。 数值分析的大部分研究课题中,如线性代数方程组、矩阵特征值问题、非线性方程及方程组等都存在病态的问题。病态问题要通过研究和构造特殊的算法来解决,当然一般要付出一些代价(如耗用更多的机器时间、占用更多的存储空间等)。 问题提出:考虑一个高次的代数多项式 )1.1() ()20()2)(1()(20 1∏=-=---=k k x x x x x p 显然该多项式的全部根为1,2,…,20共计20个,且每个根都是单重的。现考虑该多项式的一个扰动 )2.1(0 )(19=+x x p ε 其中ε是一个非常小的数。这相当于是对()中19x 的系数作一个小的扰动。我们希望比较()和()根的差别,从而分析方程()的解对扰动的敏感性。 实验内容:为了实现方便,我们先介绍两个Matlab 函数:“roots ”和“poly ”。 roots(a)u = 其中若变量a 存储n+1维的向量,则该函数的输出u 为一个n 维的向量。设a 的元素依次为121,,,+n a a a ,则输出u 的各分量是多项式方程 01121=+++++-n n n n a x a x a x a 的全部根;而函数 poly(v)b =

的输出b 是一个n+1维变量,它是以n 维变量v 的各分量为根的多项式的系数。可见“roots ”和“poly ”是两个互逆的运算函数。 ;000000001.0=ess );21,1(zeros ve = ;)2(ess ve = ))20:1((ve poly roots + 上述简单的Matlab 程序便得到()的全部根,程序中的“ess ”即是()中的ε。 实验要求: (1)选择充分小的ess ,反复进行上述实验,记录结果的变化并分析它们。 如果扰动项的系数ε很小,我们自然感觉()和()的解应当相差很小。计算中你有什么出乎意料的发现表明有些解关于如此的扰动敏感性如何 (2)将方程()中的扰动项改成18x ε或其它形式,实验中又有怎样的现象 出现 (3)(选作部分)请从理论上分析产生这一问题的根源。注意我们可以将 方程()写成展开的形式, ) 3.1(0 ),(1920=+-= x x x p αα 同时将方程的解x 看成是系数α的函数,考察方程的某个解关于α的扰动是否敏感,与研究它关于α的导数的大小有何关系为什么你发现了什么现象,哪些根关于α的变化更敏感 思考题一:(上述实验的改进) 在上述实验中我们会发现用roots 函数求解多项式方程的精度不高,为此你可以考虑用符号函数solve 来提高解的精确度,这需要用到将多项式转换为符号多项式的函数poly2sym,函数的具体使用方法可参考Matlab 的帮助。

偏差分析心得体会

偏差分析心得体会 篇一:误差分析及实验心得 误差分析及实验心得 误差分析 1 系统误差:使用台秤、量筒、量取药品时产生误差; 2 随机误差:反应未进行完全,有副反应发生;结晶、 纯化及过滤时,有部分产品损失。 1、实验感想: 在实验的准备阶段,我就和搭档通过校园图书馆和电子阅览室查阅到了很多的有关本实验的资料,了解了很多关于阿司匹林的知识,无论是其发展历史、药理、分子结构还是物理化学性质。而从此实验,我们学习并掌握了实验室制备阿司匹林的各个过程细节,但毕竟是我们第一次独立的做实验,导致实验产率较低,误差较大。 在几个实验方案中,我们选取了一个较简单,容易操作的进行实验。我与同学共做了3次实验,第一次由于加错药品而导致实验失败,第二次实验由于抽滤的时候加入酒精的量过多,导致实验产率过低。因此,我们进行了第三次实验,在抽滤时对酒精的用量减少,虽然结果依然不理想,但是我们仍有许多的收获:

(1)、培养了严谨求实的精神和顽强的毅力。通过此 次的开放性实验,使我们了解到“理论结合实践”的重要性,使我们的动手能力和思考能力得到了锻炼和提高,明白了在实践中我们仍需要克服很多的困难。 (2)、增进同学之间的友谊,增强了团队合作精神。这次的开放性实验要求两个或者两个以上的同学一起完成,而且不像以前实验时有已知的实验步骤,这就要求我们自己通力合作,独立思考,查阅资料了解实验并制定方案,再进行实验得到要求中的产物。我们彼此查找资料,积极的发表个人意见,增强了团队之间的协作精神,培养了独立思考问题的能力,同时培养了我们科学严谨的求知精神,敢于追求真理,不怕失败的顽强毅力。当然我们也在实验中得到了很大的乐趣。 九、实验讨论及心得体会 本次实验练习了乙酰水杨酸的制备操作,我制得的乙酰水杨酸的产量为理论上应该是约。所得产量与理论值存在一定偏差通过分析得到以下可能原因: a、减压过滤操作中有产物损失。 b、将产物转移至表面皿上时有产物残留。 c、结晶时没有结晶完全。 通过以上分析我觉得有些操作导致的损失可以避免所以 我在以后的实验中保持严谨的态度。我通过本次实验我学

机械加工误差分析实验报告

机械加工误差的综合分析 ------统计分析法的应用一、实验目的

运用统计分析法研究一批零件在加工过程中尺寸的变化规律,分析加工误差的性质和产生原因,提出消除或降低加工误差的途径和方法,通过本实验使同学能够掌握综合分析机械加工误差的基本方法。 二、实验用仪器、设备 1.M1040A型无心磨床一台; 2.分辨率为0.001mm的电感测微仪一台; 3.块规一付(尺寸大小根据试件尺寸而定); 4.千分尺一只; 5.试件一批约120件, 6.计算机和数据采集系统一套。 三、实验容 在无心磨床上连续磨削一批试件(120件),按加工顺序在比较仪上测量尺寸,并记录之,然后画尺寸点图和X---R图。并从点图上取尺寸比较稳定(即尽量排除掉变值系统性误差的影响)的一段时间连续加工的零件120件,由此计算出X、σ,并做出尺寸分布图,分析加工过程中产生误差的性质,工序所能达到的加工精度;工艺过程的稳定性和工艺能力;提出消除或降低加工误差的措施。

四、实验步骤 1. 按被磨削工件的基本尺寸选用块规,并用气油擦洗干净后推粘在一起; 2. 用块规调整比较仪,使比较仪的指针指示到零,调整时按大调---微调---水平调整步骤进行(注意大调和水平调整一般都予先调好),调整好后将个锁紧旋钮旋紧,将块规放入盒中。 3. 修正无心磨床的砂轮,注意应事先把金刚头退后离开砂轮。将冷却液喷向砂轮,然后在按操作规程进刀,修整好砂轮后退刀,将冷却液喷头转向工件位置。 4. 检查磨床的挡片,支片位置是否合理(如果调整不好,将会引起较大的形变误差)。对于挡片可通过在机床不运转情况下,用手将工件沿着支片紧贴挡片前后推动,同时调整前后螺钉,直至工件能顺利、光滑推过为宜。 5. 按给定尺寸(Φd-0.02)调整机床,试磨五件工件,使得平均尺寸应保证在公差带中心稍偏下为宜,然后用贯穿法连续磨削一批零件,同时用比较仪,按磨削顺序测量零件尺寸并记录之。 6. 清理机床,收拾所用量具、工具等。 7. 整理实验数据,打印做实验报告。 五、实验结果及数据处理 该实验选用M1040A型无心磨床和块规一付 (1)实验原始数据

各种排序法比较

各种排序法的比较 按平均时间将排序分为四类: (1)平方阶(O(n2))排序 一般称为简单排序,例如直接插入、直接选择和冒泡排序; (2)线性对数阶(O(nlgn))排序 如快速、堆和归并排序; (3)O(n1+£)阶排序 £是介于0和1之间的常数,即0<£<1,如希尔排序; (4)线性阶(O(n))排序 如桶、箱和基数排序。 各种排序方法比较: 简单排序中直接插入最好,快速排序最快,当文件为正序时,直接插入和冒泡均最佳。 影响排序效果的因素: 因为不同的排序方法适应不同的应用环境和要求,所以选择合适的排序方法 应综合考虑下列因素: ①待排序的记录数目n; ②记录的大小(规模); ③关键字的结构及其初始状态; ④对稳定性的要求; ⑤语言工具的条件; ⑥存储结构; ⑦时间和辅助空间复杂度等。 不同条件下,排序方法的选择 (1)若n较小(如n≤50),可采用直接插入或直接选择排序。 当记录规模较小时,直接插入排序较好;否则因为直接选择移动的记录数少于直接插人,应选直接选择排序为宜。 (2)若文件初始状态基本有序(指正序),则应选用直接插人、冒泡或随机的快速排序为宜; (3)若n较大,则应采用时间复杂度为O(nlgn)的排序方法:快速排序、堆排序或归并排序。 快速排序是目前基于比较的内部排序中被认为是最好的方法,当待排序的关键字是随机分布时,快速排序的平均时间最短; 堆排序所需的辅助空间少于快速排序,并且不会出现快速排序可能出现的最坏情况。这两种排序都是不稳定的。 若要求排序稳定,则可选用归并排序。从单个记录起进行两两归并,排序算法并不值得提倡,通常可以将它和直接插入排序结合在一起使用。先利用直接插入排序求得较长的有序子文件,然后再两两归并之。因为直接插入排序是稳定的,所以改进后的归并排序仍是稳定的。

一元线性回归分析实验报告

一元线性回归在公司加班制度中的应用 院(系): 专业班级: 学号姓名: 指导老师: 成绩: 完成时间:

一元线性回归在公司加班制度中的应用 一、实验目的 掌握一元线性回归分析的基本思想和操作,可以读懂分析结果,并写出回归方程,对回归方程进行方差分析、显著性检验等的各种统计检验 二、实验环境 SPSS21.0 windows10.0 三、实验题目 一家保险公司十分关心其总公司营业部加班的程度,决定认真调查一下现状。经10周时间,收集了每周加班数据和签发的新保单数目,x 为每周签发的新保单数目,y 为每周加班时间(小时),数据如表所示 y 3.5 1.0 4.0 2.0 1.0 3.0 4.5 1.5 3.0 5.0 2. x 与y 之间大致呈线性关系? 3. 用最小二乘法估计求出回归方程。 4. 求出回归标准误差σ∧ 。 5. 给出0 β∧与1 β∧ 的置信度95%的区间估计。 6. 计算x 与y 的决定系数。 7. 对回归方程作方差分析。 8. 作回归系数1 β∧ 的显著性检验。 9. 作回归系数的显著性检验。 10.对回归方程做残差图并作相应的分析。

11.该公司预测下一周签发新保单01000 x=张,需要的加班时间是多少? 12.给出0y的置信度为95%的精确预测区间。 13.给出 () E y的置信度为95%的区间估计。 四、实验过程及分析 1.画散点图 如图是以每周加班时间为纵坐标,每周签发的新保单为横坐标绘制的散点图,从图中可以看出,数据均匀分布在对角线的两侧,说明x和y之间线性关系良好。 2.最小二乘估计求回归方程

用SPSS 求得回归方程的系数01,ββ分别为0.118,0.004,故我们可以写出其回归方程如下: 0.1180.004y x =+ 3.求回归标准误差σ∧ 由方差分析表可以得到回归标准误差:SSE=1.843 故回归标准误差: 2= 2SSE n σ∧-,2σ∧=0.48。 4.给出回归系数的置信度为95%的置信区间估计。 由回归系数显著性检验表可以看出,当置信度为95%时:

数值分析第一章学习小结

数值分析 第1章绪论 --------学习小结 一、本章学习体会 通过本章的学习,让我初窥数学的又一个新领域。数值分析这门课,与我之前所学联系紧密,区别却也很大。在本章中,我学到的是对数据误差计算,对误差的分析,以及关于向量和矩阵的数的相关容。 误差的计算方法很多,对于不同的数据需要使用不同的方法,或直接计算,或用泰勒公式。而对于二元函数的误差计算亦有其独自的方法。无论是什么方法,其目的都是为了能够通过误差的计算,发现有效数字、计算方法等对误差的影响。 而对误差的分析,则是通过对大量数据进行分析,从而选择出相对适合的算法,尽可能减少误差。如果能够找到一个好的算法,不仅能够减少计算误差,同时也可以减少计算次数,提高计算效率。 对于向量和矩阵的数,我是第一次接触,而且其概念略微抽象。因此学起来较为吃力,仅仅知道它是向量与矩阵“大小”的度量。故对这部分容的困惑也相对较多。 本章的困惑主要有两方面。一方面是如何能够寻找一个可靠而高效的算法。虽然知道算法选择的原则,但对于很多未接触的问题,真正寻找一个好的算法还是很困难。另一方面困惑来源于数,不明白数的意义和用途究竟算什么。希望通过以后的学习能够渐渐解开自己的疑惑。 二、本章知识梳理

2.1 数值分析的研究对象 数值分析是计算数学的一个重要分支,研究各种数学问题的数值解法,包括方法的构造和求解过程的理论分析。它致力于研究如何用数值计算的方法求解各种基本数学问题以及在求解过程中出现的收敛性,数值稳定性和误差估计等容。 2.2误差知识与算法知识 2.2.1误差来源

误差按来源分为模型误差、观测误差、截断误差、舍入误差与传播误差五种。其中模型误差与观测误差属于建模过程中产生的误差,而截断误差、舍入误差与传播误差属于研究数值方法过程中产生的误差。 2.2.2绝对误差、相对误差与有效数字 1.(1)绝对误差e指的是精确值与近似值的差值。 绝对误差: 绝对误差限: (2)相对误差是指绝对误差在原数中所占的比例。 相对误差: 相对误差限: 结论:凡是经过四舍五入而得到的近似值,其绝对误差不超过该近似值末位的半个单位。 (3)有效数字的定义 有效数字的第一种定义:设a是x的近似值,如果a的误差绝对值不超过x 的第k位小数的半个单位,即则称近似值a准确到小数点后第k位。从小数点后的第k位数字直到最左边非零数字之间的所有数字都叫有效数字。

误差分析及实验心得

误差分析及实验心得 误差分析1系统误差:使用台秤、量筒、量取药品时产生误差; 2随机误差:反应未进行完全,有副反应发生;结晶、纯化及过滤时,有部分产品损失。 1、实验感想: 在实验的准备阶段,我就和搭档通过校园图书馆和电子阅览室查阅到了很多的有关本实验的资料,了解了很多关于阿司匹林的知识,无论是其发展历史、药理、分子结构还是物理化学性质。而从此实验,我们学习并掌握了实验室制备阿司匹林的各个过程细节,但毕竟是我们第一次独立的做实验,导致实验产率较低,误差较大。 在几个实验方案中,我们选取了一个较简单,容易操作的进行实验。我与同学共做了3次实验,第一次由于加错药品而导致实验失败,第二次实验由于抽滤的时候加入酒精的量过多,导致实验产率过低。因此,我们进行了第三次实验,在抽滤时对酒精的用量减少,虽然结果依然不理想,但是我们仍有许多的收获: (1 )、培养了严谨求实的精神和顽强的毅力。通过此次的开放性实验,使我们了解到“理论结合实践”的重要性,使我们的动手能力和思考能力得到了锻炼和提高,明白了在实践中我们仍需要克服很多的困难。 (2)、增进同学之间的友谊,增强了团队合作精神。这次的开放性实验要求两个或者两个以上的同学一起完成,而且不像以前实验时有已知的实验步骤,这就要求我们自己通力合作,独立思考,查阅资料了解实验并制定方案,再进行实验得到要求中的产物。我们彼此查找资料,积极的发表个人意见,增强了团队之间的协作精神,培养了独立思考问题的能力,同时培养了我们科学严谨的求知精神,敢于追求真理,不怕失败的顽强毅力。当然我们也在实验中得到了很大的乐趣。 九、实验讨论及心得体会 本次实验练习了乙酰水杨酸的制备操作,我制得的乙酰水杨酸的产量为_ 论上应该是约1.5g。所 得产量与理论值存在一定偏差通过分析得到以下可能原因: a、减压过滤操作中有产物损失。 b、将产物转移至表面皿上时有产物残留。 c、结晶时没有结晶完全。 通过以上分析我觉得有些操作导致的损失可以避免所以我在以后的实验中保持严谨的态度。我通过本次实验我学到了乙酸酐和水杨酸在酸催化下制备乙酰水杨酸的操作方法初步了解有机合成中乙酰化反 应原理巩固和进一步熟悉了减压过滤、重结晶基本操作的原理和方法了解到乙酰水杨酸中杂质的来源及 其鉴别方法通过误差分析可能原因进一步更深理解实验的原理和操作养成严谨的态度。

数据结构-各类排序算法总结

数据结构-各类排序算法总结 原文转自: https://www.360docs.net/doc/ed6702440.html,/zjf280441589/article/details/38387103各类排序算法总结 一. 排序的基本概念 排序(Sorting)是计算机程序设计中的一种重要操作,其功能是对一个数据元素集合或序列重新排列成一个按数据元素 某个项值有序的序列。 有n 个记录的序列{R1,R2,…,Rn},其相应关键字的序列是{K1,K2,…,Kn},相应的下标序列为1,2,…,n。通过排序,要求找出当前下标序列1,2,…,n 的一种排列p1,p2,…,pn,使得相应关键字满足如下的非递减(或非递增)关系,即:Kp1≤Kp2≤…≤Kpn,这样就得到一个按关键字有序的记录序列{Rp1,Rp2,…,Rpn}。 作为排序依据的数据项称为“排序码”,也即数据元素的关键码。若关键码是主关键码,则对于任意待排序序列,经排序后得到的结果是唯一的;若关键码是次关键码,排序结果可

能不唯一。实现排序的基本操作有两个: (1)“比较”序列中两个关键字的大小; (2)“移动”记录。 若对任意的数据元素序列,使用某个排序方法,对它按关键码进行排序:若相同关键码元素间的位置关系,排序前与排序后保持一致,称此排序方法是稳定的;而不能保持一致的排序方法则称为不稳定的。 二.插入类排序 1.直接插入排序直接插入排序是最简单的插入类排序。仅有一个记录的表总是有序的,因此,对n 个记录的表,可从第二个记录开始直到第n 个记录,逐个向有序表中进行插入操作,从而得到n个记录按关键码有序的表。它是利用顺序查找实现“在R[1..i-1]中查找R[i]的插入位置”的插入排序。

误差分析及实验心得

误差分析及实验心得 误差分析 1 系统误差:使用台秤、量筒、量取药品时产生误差; 2 随机误差:反应未进行完全,有副反应发生;结晶、纯化及过滤时,有部分产品损失。 1、实验感想: 在实验的准备阶段,我就和搭档通过校园图书馆和电子阅览室查阅到了很多的有关本实验的资料,了解了很多关于阿司匹林的知识,无论是其发展历史、药理、分子结构还是物理化学性质。而从此实验,我们学习并掌握了实验室制备阿司匹林的各个过程细节,但毕竟是我们第一次独立的做实验,导致实验产率较低,误差较大。 在几个实验方案中,我们选取了一个较简单,容易操作的进行实验。我与同学共做了3次实验,第一次由于加错药品而导致实验失败,第二次实验由于抽滤的时候加入酒精的量过多,导致实验产率过低。因此,我们进行了第三次实验,在抽滤时对酒精的用量减少,虽然结果依然不理想,但是我们仍有许多的收获: (1)、培养了严谨求实的精神和顽强的毅力。通过此次的开放性实验,使我们了解到“理论结合实践”的重要性,使我们的动手能力和思考能力得到了锻炼和提高,明白了在实践中我们仍需要克服很多的困难。(2)、增进同学之间的友谊,增强了团队合作精神。这次的开放性实验要求两个或者两个以上的同学一起完成,而且不像以前实验时有已知的实验步骤,这就要求我们自己通力合作,独立思考,查阅资料了解实验并制定方案,再进行实验得到要求中的产物。我们彼此查找资料,积极的发表个人意见,增强了团队之间的协作精神,培养了独立思考问题的能力,同时培养了我们科学严谨的求知精神,敢于追求真理,不怕失败的顽强毅力。当然我们也在实验中得到了很大的乐趣。 九、实验讨论及心得体会 本次实验练习了乙酰水杨酸的制备操作,我制得的乙酰水杨酸的产量为理论上应该是约1.5g。所得产量与理论值存在一定偏差通过分析得到以下可能原因: a、减压过滤操作中有产物损失。 b、将产物转移至表面皿上时有产物残留。 c、结晶时没有结晶完全。 通过以上分析我觉得有些操作导致的损失可以避免所以我在以后的实验中保持严谨的态度。我通过本次实验我学到了乙酸酐和水杨酸在酸催化下制备乙酰水杨酸的操作方法初步了解有机合成中乙酰化反应原理巩固和进一步熟悉了减压过滤、重结晶基本操作的原理和方法了解到乙酰水杨酸中杂质的来源及其鉴别方法通过误差分析可能原因进一步更深理解实验的原理和操作养成严谨的态度。

数值分析第一章绪论习题答案

第一章绪论 1.设0x >,x 的相对误差为δ,求ln x 的误差。 解:近似值* x 的相对误差为* **** r e x x e x x δ-= == 而ln x 的误差为()1ln *ln *ln ** e x x x e x =-≈ 进而有(ln *)x εδ≈ 2.设x 的相对误差为2%,求n x 的相对误差。 解:设()n f x x =,则函数的条件数为'() | |() p xf x C f x = 又1 '()n f x nx -= , 1 ||n p x nx C n n -?∴== 又((*))(*)r p r x n C x εε≈? 且(*)r e x 为2 ((*))0.02n r x n ε∴≈ 3.下列各数都是经过四舍五入得到的近似数,即误差限不超过最后一位的半个单位,试指 出它们是几位有效数字:*1 1.1021x =,*20.031x =, *3385.6x =, * 456.430x =,*57 1.0.x =? 解:*1 1.1021x =是五位有效数字; *20.031x =是二位有效数字; *3385.6x =是四位有效数字; *456.430x =是五位有效数字; *57 1.0.x =?是二位有效数字。 4.利用公式(2.3)求下列各近似值的误差限:(1) * * * 124x x x ++,(2) ***123x x x ,(3) **24/x x . 其中****1234 ,,,x x x x 均为第3题所给的数。 解:

*4 1* 3 2* 13* 3 4* 1 51()1021()1021()1021()1021()102 x x x x x εεεεε-----=?=?=?=?=? *** 124***1244333 (1)()()()() 1111010102221.0510x x x x x x εεεε----++=++=?+?+?=? *** 123*********123231132143 (2)() ()()() 111 1.10210.031100.031385.610 1.1021385.610222 0.215 x x x x x x x x x x x x εεεε---=++=???+???+???≈ ** 24**** 24422 *4 33 5 (3)(/) ()() 11 0.0311056.430102256.43056.430 10x x x x x x x εεε---+≈ ??+??= ?= 5计算球体积要使相对误差限为1,问度量半径R 时允许的相对误差限是多少? 解:球体体积为34 3 V R π= 则何种函数的条件数为 2 3'4343 p R V R R C V R ππ=== (*)(*)3(*)r p r r V C R R εεε∴≈= 又(*)1r V ε=

常用排序算法比较与分析报告

常用排序算法比较与分析 一、常用排序算法简述 下面主要从排序算法的基本概念、原理出发,分别从算法的时间复杂度、空间复杂度、算法的稳定性和速度等方面进行分析比较。依据待排序的问题大小(记录数量 n)的不同,排序过程中需要的存储器空间也不同,由此将排序算法分为两大类:【排序】、【外排序】。 排序:指排序时数据元素全部存放在计算机的随机存储器RAM中。 外排序:待排序记录的数量很大,以致存一次不能容纳全部记录,在排序过程中还需要对外存进行访问的排序过程。 先了解一下常见排序算法的分类关系(见图1-1) 图1-1 常见排序算法 二、排序相关算法 2.1 插入排序 核心思想:将一个待排序的数据元素插入到前面已经排好序的数列中的适当位置,使数据元素依然有序,直到待排序数据元素全部插入完为止。 2.1.1 直接插入排序 核心思想:将欲插入的第i个数据元素的关键码与前面已经排序好的i-1、i-2 、i-3、… 数据元素的值进行顺序比较,通过这种线性搜索的方法找到第i个数据元素的插入位置,并且原来位置的数据元素顺序后移,直到全部排好顺序。 直接插入排序中,关键词相同的数据元素将保持原有位置不变,所以该算法是稳定的,时间复杂度的最坏值为平方阶O(n2),空间复杂度为常数阶O(l)。

Python源代码: 1.#-------------------------直接插入排序-------------------------------- 2.def insert_sort(data_list): 3.#遍历数组中的所有元素,其中0号索引元素默认已排序,因此从1开始 4.for x in range(1, len(data_list)): 5.#将该元素与已排序好的前序数组依次比较,如果该元素小,则交换 6.#range(x-1,-1,-1):从x-1倒序循环到0 7.for i in range(x-1, -1, -1): 8.#判断:如果符合条件则交换 9.if data_list[i] > data_list[i+1]: 10.temp= data_list[i+1] 11.data_list[i+1] = data_list[i] 12.data_list[i] = temp 2.1.2 希尔排序 核心思想:是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止。 希尔排序时间复杂度会比O(n2)好一些,然而,多次插入排序中,第一次插入排序是稳定的,但在不同的插入排序过程中,相同的元素可能在各自的插入排序中移动,所以希尔排序是不稳定的。 Python源代码: 1.#-------------------------希尔排序------------------------------- 2.def insert_shell(data_list): 3.#初始化step值,此处利用序列长度的一半为其赋值 4.group= int(len(data_list)/2) 5.#第一层循环:依次改变group值对列表进行分组 6.while group> 0: 7.#下面:利用直接插入排序的思想对分组数据进行排序 8.#range(group,len(data_list)):从group开始 9.for i in range(group, len(data_list)): 10.#range(x-group,-1,-group):从x-group开始与选定元素开始倒序比较,每个比较元素之间间隔group 11.for j in range(i-group, -1, -group): 12.#如果该组当中两个元素满足交换条件,则进行交换 13.if data_list[j] > data_list[j+group]: 14.temp= data_list[j+group] 15.data_list[j+group] = data_list[j] 16.data_list[j] = temp 17.#while循环条件折半 18.group= int(group/ 2) 2.2 选择排序

第一章 误差分析与误差的传播习题及解答

第一章 误差分析与误差的传播 一、判断题: 1.舍入误差是模型准确值与用数值方法求得的准确值产生的误差。 ( ?) 2. 用1-2 2 x 近似表示cos x 产生舍入误差。 (? ) 3. 任给实数a 及向量x ,则||||||||x x a a =。 (?) 二、填空题: 1.设* 2.40315x =是真值 2.40194x =的近似值,则* x 有(3)位有效数字。 2. * x 的相对误差的 1 2 倍。 3. 为了使计算 3 2)1(6)1(41310-- -+-+ =x x x y 的乘除法次数尽量地少,应将该表达式改写 为 ,为了减少舍入误差,应将表达式 1999 2001-改写为 。 (1 1 ,))64(3(10-= -++=x t t t t y , 199920012+;) 4. 7 22 , 141.3,142.3分别作为π的近似值有 , , 位有效数字。(4 ,3 ,3;) 5. π的近似值3.1428是准确到 近似值。答: 2 10- 6. 取 3.142x =作为 3.141592654x =┅的近似值,则x 有 位有效数字.答:4 7. 近似值* 0.231x =关于真值229.0=x 有( 2 )位有效数字; *x 的相对误差的( 3 1)倍; 9. 计算方法主要研究( )误差和( )误差;(截断,舍入) 10.近似数x*=0.0310,有( )位有数数字。解:3位 11. 按四舍五入原则数 2.7182818与8.000033具有五位有效数字的近似值分别为 和 。( 2.7183 和 8.0000) 12. 、,则A 的谱半径 = ,A 的= ( ) 11.计算取,利用( )式计算误差最小。

数值分析实验报告总结

数值分析实验报告总结 随着电子计算机的普及与发展,科学计算已成为现代科 学的重要组成部分,因而数值计算方法的内容也愈来愈广泛和丰富。通过本学期的学习,主要掌握了一些数值方法的基本原理、具体算法,并通过编程在计算机上来实现这些算法。 算法算法是指由基本算术运算及运算顺序的规定构成的完 整的解题步骤。算法可以使用框图、算法语言、数学语言、自然语言来进行描述。具有的特征:正确性、有穷性、适用范围广、运算工作量少、使用资源少、逻辑结构简单、便于实现、计算结果可靠。 误差 计算机的计算结果通常是近似的,因此算法必有误差, 并且应能估计误差。误差是指近似值与真正值之差。绝对误差是指近似值与真正值之差或差的绝对值;相对误差:是指近似值与真正值之比或比的绝对值。误差来源见表 第三章泛函分析泛函分析概要 泛函分析是研究“函数的函数”、函数空间和它们之间 变换的一门较新的数学分支,隶属分析数学。它以各种学科

如果 a 是相容范数,且任何满足 为具体背景,在集合的基础上,把客观世界中的研究对象抽 范数 范数,是具有“长度”概念的函数。在线性代数、泛函 分析及相关的数学领域,泛函是一个函数,其为矢量空间内 的所有矢量赋予非零的正长度或大小。这里以 Cn 空间为例, Rn 空间类似。最常用的范数就是 P-范数。那么 当P 取1, 2 ,s 的时候分别是以下几种最简单的情形: 其中2-范数就是通常意义下的距离。 对于这些范数有以下不等式: 1 < n1/2 另外,若p 和q 是赫德尔共轭指标,即 1/p+1/q=1 么有赫德尔不等式: II = ||xH*y| 当p=q=2时就是柯西-许瓦兹不等式 般来讲矩阵范数除了正定性,齐次性和三角不等式之 矩阵范数通常也称为相容范数。 象为元素和空间。女口:距离空间,赋范线性空间, 内积空间。 1-范数: 1= x1 + x2 +?+ xn 2-范数: x 2=1/2 8 -范数: 8 =max oo ,那 外,还规定其必须满足相容性: 所以

相关文档
最新文档