1. 题目
(1) 将ln(1+x)进行Taylor展开,展开到第11项,令x=1,计算ln2的近似值; (2) 将ln(1+x)进行Taylor展开,展开到第11项,令x=-1/2,计算ln2的近似值; (3) 将ln (1+x)/(1-x)进行Taylor展开,经过简单运算,求出ln2的近似值; (4) 比较上述三种方法的计算精度,并给出简单的解释;
(5) 编写一段循环程序,对于(2) (3) 两种方法,使用累加和的方法求出ln2的近似值,循环结束的条件是累加和不再变化(使用双精度进行计算),统计累加次数并比较精度。
2. 编程计算
(1)
计算结果:
Out[6]: ln(1+x)的Taylor展开式;
Out[7]: x=1时,ln2的近似计算结果; Out[8]:计算误差。 (2)
计算结果:
Out[14]: ln(1+x)的Taylor展开式;
Out[15]: x=-1/2时,ln2的近似计算结果;
计算方法上机作业
Out[16]:计算误差。 (3)
计算结果:
Out[22]: ln (1+x)/(1-x)的Taylor展开式; Out[23]: x=1/3时,ln2的近似计算结果; Out[24]:计算误差。
(4) 比较分析
从上述三种计算结果,可以看出方法(3)计算误差最小,即计算精度:方法(1)<方法(2)<方法(3)。原因:利用泰勒公式进行数值的近似计算,根据泰勒公式:
其中
是n阶泰勒公式的拉格朗日余项:
可见近似计算的误差即为
。对于方法(1),方法(3)
种方法下
,方法(2),可见三
的大小关系是:方法(1)>方法(2)>方法(3),所以说方法(3)的计算误
差最小。
此外,方法(3)计算结果out[22]可看出,在相同阶数的导数下,收敛速度更快,在有限的展开项中,原函数的导数收敛越快,结果越精确。
(5) 方法(2)累加求和
1
计算方法上机作业
(6) 方法(3)累加求和
比较分析:
方法(2)需要累加47次,方法(3)需要累加17次,相比来说方法(3)收敛速度更快。
3. 心得体会
1、 不同的运算方法。不同的运算方法或者相同方法在不同的使用场合对数值近似计算造成的误差不同,这个误差不是通过计算时多保留有效数字的位数就可以实现的,所以判断误差收敛的速度对数值计算很重要。
2、 在近似计算过程中,一个好的运算方法可以更快更准确得求得计算结果。选择算法时最好选择收敛快的。
3、 泰勒级数展开求近似值,实际上是用有限过程代替无限过程,产生截断误差。这是计算方法本身出现的误差,也叫方法误差。
2