收藏 分享(赏)

牛顿迭代法及其应用.doc

上传人:weiwoduzun 文档编号:5623949 上传时间:2019-03-10 格式:DOC 页数:29 大小:1.33MB
下载 相关 举报
牛顿迭代法及其应用.doc_第1页
第1页 / 共29页
牛顿迭代法及其应用.doc_第2页
第2页 / 共29页
牛顿迭代法及其应用.doc_第3页
第3页 / 共29页
牛顿迭代法及其应用.doc_第4页
第4页 / 共29页
牛顿迭代法及其应用.doc_第5页
第5页 / 共29页
点击查看更多>>
资源描述

1、重庆理工大学毕业论文 (Newton Raphson 算法及其应用)编号 毕 业 设 计(论文)题目 Newton Raphson 算法及其应用 二级学院 数学与统计学院 专 业 信息与计算科学 班 级 108010101 学生姓名 侯杰 学号 10801010106指导教师 职称 时 间 重庆理工大学毕业论文 (Newton Raphson 算法及其应用)2目 录摘 要 3Abstract31、绪论41.1 选题的背景和意义41.2 牛顿迭代法的优点及缺点4二、Newton Raphson 算法的基本原理52.1 Newton Raphsn 算法52.2 一种修正的 Newton Raphs

2、n 算法72.3 另外一种 Newton Raphsn 算法的修正11三、Newton Raphson 算法在计算方程中的应用18四、利用牛顿迭代法计算附息国债的实时收益率214.1附息国债实时收益率的理论计算公式224.2附息国债实时收益率的实际计算方法224.3利用牛顿迭代法计算23五、结论26致谢27参考文献28重庆理工大学毕业论文 (Newton Raphson 算法及其应用)3摘 要牛顿在 17世纪提出的一种近似求解方程的方法,即牛顿拉夫森迭代法.迭代法是一种不断的用变量的旧值递推新值的过程.跟迭代法相对应的是直接法或被称为一次解法,即一次性解决的问题.迭代法又分为精确迭代以及近似迭

3、代.“牛顿迭代法”就属于近似迭代法,本文主要讨论的就是牛顿迭代法,方法本身的发现到演变到修正的过程,避免二阶导数计算的 Newton迭代法的一个改进,以及用牛顿迭代法解方程,利用牛顿迭代法计算国债的实时收益率。 关键词:Newton Raphson 迭代算法;近似解;收益率;AbstractIn the 17th century, Newton raised by an approximate method of solving equations, that is Newton Iteration, a process of recursion new value constantly wi

4、th the old value of variable. Correspond with the iterative method is a direct method or as a solution, that is a one-time problem solving. Iteration is divided into exact iterative and approximate iterative. “Newton Iterative Method“ are approximate iterative method. This article mainly focuses on

5、the Newton Iteration. The main contents of this article include the discovery, evolution and amendment process of this methods; an improve of avoiding calculating Newton Iteration with second-order derivative; Newton Raphson iterative method of solving equations and Calculating the real-time yield o

6、f government bonds.Keywords: Newton Iterative Algorithm; approximate solution; Yield; 重庆理工大学毕业论文 (Newton Raphson 算法及其应用)4一、 绪论1.1 选题的背景和意义牛顿拉夫森迭代法是牛顿在 17世纪提出的一种在实数域和复数域上近似求解方程的方法。多数方程不存在求根公式,因此求精确根非常困难,甚至不可能,从而寻找方程的近似根就显得特别重要。方法使用函数 的泰勒级数的前面几项来寻)(xf找方程 的根。牛顿迭代法是求方程根的重要方法之一,其最大优点是在方0)(xf程 的单根附近具有平方收敛

7、,而且该法还可以用来求方程的重根、复根 ,此时线性收敛,但是可通过一些方法变成超线性收敛。利用牛顿迭代法来解决问题需要做好的工作:(1)确定迭代变量。在可以用迭代算法解决的问题中,至少存在一个直接或间接地不断由旧值递推出新值的变量,这个变量就是迭代变量。 (2)建立迭代关系式。所谓迭代关系式,指如何从变量的前一个值推出其下一个值的公式(或关系) 。迭代关系式的建立是解决迭代问题的关键,通常可以使用递推或倒推的方法来完成。 (3)对迭代过程进行控制。在什么时候结束迭代过程?这是编写迭代程序必须考虑的问题。不能让迭代过程无休止地重复执行下去。迭代过程的控制通常可分为两种情况:一种是所需的迭代次数是

8、个确定的值,可以计算出来;另一种是所需的迭代次数无法确定。对于前一种情况,可以构建一个固定次数的循环来实现对迭代过程的控制;对于后一种情况,需要进一步分析出用来结束迭代过程的条件。1.2 牛顿迭代法的优点及缺点迭代法是求方程近似根的一个重要方法,也是计算方法中的一种基本方法,它的算法简单,是用于求方程或方程组近似根的一种常用的算法设计方法。牛顿迭代重庆理工大学毕业论文 (Newton Raphson 算法及其应用)5法是求方程根的重要方法之一,其最大优点是在方程 的单根附近具有平方0)(xf收敛,而且该法还可以用来求方程的重根、复根。牛顿法是方程求根的一个有力方法,常常能快速求出其他方法求不出

9、或者难以求出的解。假定有一个函数 ,)(xfy方程 在 处有一个根,对于此根,先估计一个初始值 (可以是猜测的)0)(xfr 0x。得到一个更好的估计值 。为此 处作该曲线切线,并将其延长与 轴相1x0)(xf交。切线与 轴的交点通常很接近 ,我们用它作为下一个估计值 ,求出 后,用xr 1x1代替 。重复上述过程,在 处作曲线的另一条切线,并将其延长至与 轴相1x0 1x x交,用切线的 轴截距作为下一个近似值 这样继续下去,所得出的这个 轴x2截距的序列通常迅速接近根 。r缺点:选定的初值要接近方程的解,否则有可能的不到收敛的结果。再者,牛顿迭代法计算量比较大。因每次迭代除计算函数值外还要

10、计算微商值。2、Newton Raphson 算法的基本原理2.1 Newton Raphsn算法牛顿迭代法(Newton method)又称为牛顿-拉夫森方法(Newton-Rapfson method),它是牛顿在 17世纪提出的一种近似求解方程的方法.多数方程不存在的求根公式,因此求精确根相当困难甚至不可能,从而寻找方程的近似根就会显得特别重要.方法在使用函数 的泰勒级数的前面几项来寻找方程 的根.牛顿迭代法是求方)(xf 0)(xf程的根的重要方法之一,其最大的优点是在方程 的单根附近具有平方收敛性,而且该法还可以用来求方程的重根、复根.牛顿迭代法方法简单,每次迭代都是简单的去重复运算

11、,易于编制程序;与求解线性方程的精确法相比较,简单迭代法对于字长位数较少的计算机更加的适用,重庆理工大学毕业论文 (Newton Raphson 算法及其应用)6它可以用增加迭代的次数来弥补字长位数少的不足.初值可以任意的取,因而中间结果偶然的错误不影响最后结果的获得。多数情况下是得不到一般的数学方法所需的函数表达式,或者难以找到原函数。线性方程组中的求解更是让人望而生畏,往往因为计算机的工作量太大而无法实施。对于这些问题,都可以利用数值的方法来求解,在计算机中实现的数值方法也被称之为数值算法。牛顿迭代法是数值分析中一个重要的计算方法和思想。迭代法的一个主要功能:计算方程时可以比较的快速。解非

12、线性方程 的 Newton-Rapfson 算法是把非线性的方程线性化为一种0)(xf近似方法.把 的 点附近展开泰勒(Taylor )级.!2)()()( 0000 xfxffxf取其线性部分用来作为非线性方程 的近似方程,则有:f.0)()(00xxf设 ,则其解为:0)(xf.)(001xfx再把 在 附近展开泰勒 (Taylor)级数,取其现行部分作为 的近似)(xf1 0)(xf方程.若 ,则得:0.)(12xfx这样,得到牛顿(Newton-Rapfson )算法的一个迭代的序列:.)(1nnxfx牛顿迭代法有十分明显的几何意义,如下图所示:重庆理工大学毕业论文 (Newton R

13、aphson 算法及其应用)7当选取初值 以后,过( , )做 的切线,其切线的方程为:0x0x)(0f)(xf.0y求此切线方程和 轴的交点,即得:.)(001xfx牛顿迭代法正因为有这一明显的几何意义,所以也叫切线法.:2.2 一种修正的 Newton Raphsn算法给出了牛顿(Newton-Rapfson )算法的一种修正的形式,并证明了当 时修正21r的牛顿(Newton-Rapfson) 算法是二阶收敛的,当参数 时是三阶收敛时,数值实21r验得出结果,与经典牛顿迭代法相比,该修正牛顿(Newton-Rapfson)算法具有一定的优势.众所周知的,数值求解非线性方程 的根的方法很多

14、.经典的牛顿迭0)(xf图 1重庆理工大学毕业论文 (Newton Raphson 算法及其应用)8代法是非线性方程组求根的一个基本的方法,它二次收敛到单根,线性收敛到重根.牛顿法因收敛速度快而得到广泛应用,也倍受学者的重视,近年来很多文献中提出各种改进的牛顿方法.文献8中利用 Newton-Rapfson 迭代法和微分中值定理“中值点”的渐进性,提出的一种多点迭代的算法.设 满足下述条件:)(xf, .bacxf,)(20)(f, 在 上保号。 (A) 0)(xf,根据微分中值定理,即存在 ,使得: ,而)()(fabf.21limab因此,当 与 的距离无限接近时有:OAD CPyx.也就

15、是说,在区间 不甚大的时候,中值点 一定在其渐近的位)(21ab ),(ba置 附近,并随区间变小而趋于其渐近的位置 .图所示的迭代算法构造图本方案基于上述考虑,给出一种通过迭代点而选取另一个点,利用两个点进行迭代求近似根的新方法.这种方法虽然在迭代中又只利用了一个其它的点,但其计算精图 2重庆理工大学毕业论文 (Newton Raphson 算法及其应用)9度却相当的高,它的某一种特殊情形恰是通常的 Newton-Rapfson 迭代算法.为了更加直观起见,我们通过几何直观图来构造这种迭代算法.设 满足条件(A),当选)(xf定初值 0x(仅要求 ),如图所示,作交点的切线交 轴于 B 0(

16、)0xf x0,)(0xf, AQ 线段的斜率为:. )()()(000xfxfff由微分中值定理得知,存在 使得:00,)(f.)()(00xfxfff )(0xf而 ,因此,我们取数 ,在点)(21)(0000xfxf 1,2r作切线 PC,图中 AD平行于 PC.即用点)(,)(000 frffrPP的导数 取代点 A的导数,而继续用点 的迭代格式得到的点)(100 xfxf AD的坐标.0,)(100xfrxfD重庆理工大学毕业论文 (Newton Raphson 算法及其应用)10重复上述过程,得到多点迭代公式:. (1) )(11 kkkk xfrxfx其中 , .baxk,2下面

17、我们对上述事实,从理论上加以严格的证明.定理 设 满足条件 (A),则由多点迭代公式 (1)产生的序列 必收敛于)(f nx上的唯一 ,这里 , .ba,abaxn,0)(f证明: 函数 在 上连续,由连续函数根的存在定理,从 知)(f 0)(bfa道 在 上的根存在,又由条件 以及 保号知道, 在)(xf, )(xf)(xfx上不变号,故 在 上是单调函数,因此 在 上的根 存在且唯ba, )(xfba, b,一.由定理条件曲线 可有如下四种不同的情况:y(1) , , ,则 单调上升, ;0)(f)(f0)(xf)(xf 0)( fa(2) , , ,则 单调下降, ;ab b(3) ,

18、, ,则 单调上升, ;)(f)(f)(xf)(xf )(f(4) , , ,则 单调下降, .00 0 a通过对自变量的变号或者对函数的变号可将四种情况归结为一种情况,所以我们只需对其情况(一)证明迭代过程(1)收敛就可以了.若初值 , ,所以 ,故有baxn,x00)(xf 001 )(1(xfrf )()(0001 xfrxfx重庆理工大学毕业论文 (Newton Raphson 算法及其应用)11. )(1)( )()()( 0000 0000 xfrxfafx fxrfxf一方面, ,且 .下证 .若),(0xa)()00aff )(10 xfr,由 的单调性有: , ,又因)(1)

19、(00 frfxf )(xfx)(00f,因此就有 ,与 Newton迭代算)()(000fxfr )()(00 fff法的收敛性矛盾.由(一)的假设及 可得:)(1)(00 xfrxff. axfrxfax )()()(00001一般地,若 ,同样可以证明由式(1)得到 满足 .依极限理论axn 1nnx1的必有极限.对式(1)两边取极限,由极限理论可求得 .再由 ,0)(af 0)(f,可知函数方程 在 上的根是唯一的,因此有 .baxn,0)(xfba, a当 时,式 (1)即为 Newton-Rapfson 迭代公式.1r本文给出的这种多点迭代方法不仅可以广泛应用于方程的近似求根,更重

20、要的是它为人们提供了一种新的迭代算法思想,拓宽人们求方程近似求根方面的思路.2.3 另外一种 Newton Raphsn算法的修正Newton-Rapfson 迭代算法是方程求根的一种简单而直观的近似方法,但在实际运用中,我们常常发现到,这种方法仅是利用了迭代点及该点的导数值,而没有充分利用其他点及其导数的值.是否存在可利用的点,这些点我们应怎样的去确定.文重庆理工大学毕业论文 (Newton Raphson 算法及其应用)121给出了一种新的方法,但这种方法求根的关键在适当地去选取 和 或 .选取0xrn不适当时,就会出现某次迭代的值不是迭代序列中的值.因此,我们会问这些值特别是 能否不依靠

21、人为选取,而通过迭代点来选取,本文将利用 Newton-Rapfson 迭代0x算法和微分中值定理“中值点”的渐近性,来寻找除迭代点以外的可以利用点,给出一种多点迭代方法.设 满足下列叙述条件:)(xf, ;bac,20)(f, 在 上保号. (A)0)(xf)(xf,根据微分中值定理,存在 ,使 而 .因此,),(ba)()(faf21limab当 与 a的距离无限接近时就有: .也就是说,在区间 不甚大的b 21,时候,中值点 一定在其渐近的位置 附近,并随区间变小而趋于其渐)(近的位置.本方案基于上述考虑,给出一种通过其迭代点选取另一个点,利用两个点去迭代求近似根的新方法.设 满足下列的

22、条件 (A):)(xf(1) 在区间在区间 上存在二阶导数;ba,(2) 在 上不等于零;)(xf,(3) 在 上不变号;(4) ;0)(bfa为了更为直观,我们通过几何直观图来构造多点迭代算法.设 满足条件(A),)(xf当选定初值 (仅要求 )后,如图所示:0x0)(0xf重庆理工大学毕业论文 (Newton Raphson 算法及其应用)13OyxD CAPBQ做 A点的切线交 X轴于 B ,AQ 线段斜率为:0,)(0xf;由微分中值定理可知,存在 使得:)()()(000xfxfff 00,)(xfx. )()()()( 0000xfxfxfff 而 ,因此,我们可以取数 ,就在点)

23、(21)(0000xfxf 1,2r作切线 PC,图中的 AD平行于 PC.即用点 P)(,)(1000 frffrxP的导数 代替点 A的导数,而仍用点 A的迭代格式去得到点 D的)(00 xff坐标图 3重庆理工大学毕业论文 (Newton Raphson 算法及其应用)14(2)0,)(100kxfrxfD主要对(2)式的分子 用 与 的和取代,这)(0xf)(kf )(1 kkkk xfrxff样就能得到新的迭代公式:. (3) )(1)()( 1 kk kkkkkk xfrxfffxffx如果令 . .则:)()(kxfrx )(1fwkk. )(11xfkk从而可知(3)式中迭代函

24、数为: . )()(wfx引理 15 对于迭代公式 ,如果 在所求根 的邻近连续并且:1kkp*x, ,则该公式在 的邻近是 阶收0)()()( xxp 0)(*xp p敛的.定理 1 设方程 的根为 ,函数 在 的的邻域内有至少四阶连续的导)(f*)(f*数,且 ,则就迭代公式(3)在的 邻近至少是三阶收敛的.0)(xf *x证明 迭代公式(3)的迭代函数为: ,在其中)()(xwfx,由于方程 的根为 所以 ,从而可知 ,)()(fxxwkk)(xf*0)(*f *重庆理工大学毕业论文 (Newton Raphson 算法及其应用)15;0)(*xw对 求导数得:3* )(xf)(x;0)

25、()()()( *2 xxuf uxfwwx同理可得: . 0)()( * x由引理可知迭代公式(3)在 邻近至少是三阶收敛的.引理 24 假设函数 在区间 上存在二阶导数,且满足下列条件)(xfba,(1) 在 上不等于零;)(xfba,(2) 在 上不变号;(3) ;0)(f(4) 设 ,且满足条件 ;bax,0)(xf则由 Newton-Rapfson 迭代法 得到序列 收敛于 的惟)(01fnnnx0)(xf一根 .*x定理 2 假设函数 在区间 上存在二阶导数,且满足下列条件)(xfba,(1) 在 上不等于零;)(xfba,(2) 在 上不变号;(3) ;0)(f(4) 设 ,且满

26、足条件 .bax,0)(xf则由多点迭代公式(3)得到的序列 收敛于 的惟一根 .n)(f*x证明 函数 在 上连续,由连续函数根的存在的定理,从)(xf,知道 在 上的根存在,又由条件 及 的保号性可以0)(bfaba0)(xf)(xf知道, 在 上不变号,因此 在 上是单调函数,因此 在 上x, )(xfba, ba,重庆理工大学毕业论文 (Newton Raphson 算法及其应用)16的根 存在并且惟一.*x由定理条件,曲线 可有如下四种不同的情况:)(xfy(a) ,则 单调上升, ;0,)(,0)(bfaf )(xf 0)( afbf(b) ,则 单调下降, ;)(xf (c) ,

27、则 单调上升, ;,)(,)(ff )(xf )( ff(d) ,则 单调下降, .0)(0xfba 0ab通过对自变量的变号或着对函数的变号可以将四种情况归结为一种情况,所以我们只需对其中一种情况证明迭代过程(3)是收敛的就可以了.下面仅就情况(a)证明定理 2,其余情况的证明也就类似.对情况(a)来说此时在 上的根存在并且惟一,且 在 上单调递增.首先证明,对任0)(xfba, )(xfba,何初始的近似 ,由迭代公式 (3)求出的逐次近似 都属于 ,并且单调),(*xkxb,*递减. 事实上,由引理 2的证明我们可以知道,只要,就有 ,即 ,再由(2),()1()( * bxfrxkk

28、),(*1bxk kkxu)(1式可以得 ,另一方面(2)式可化为:1k. )(1)()(*1*1 *1*1 kkkkkkk xfxfxfxx其中的 .由 单调递增且 知 ,故)(,*1*1kkx )(f 0f1)(kxf因而由(3)式产生的序列 单调递减并且有下界,故 存在.0*1xk nx nlim设 , (3)式两边当 时求极限可得:nlimk重庆理工大学毕业论文 (Newton Raphson 算法及其应用)17. (1)0(1)fxfxxffxfxrrfx . (1)(1)fxfxfxf fxrrfx 可知 . 0(1)fxfxfrfx , 在 上单调递增,且bxfrxff,)1(,

29、 * )(xfba, 0)(*xf所以: ;因此得: .0)1(,0 xfrxffxf x*重庆理工大学毕业论文 (Newton Raphson 算法及其应用)18本方法代方法比 Newton-Rapfson 算法的收敛速度明显要快,而且对于 ,1,2r越大效果越差!当 时,在 之前迭代格式会产生负值.所以,格式r21r0*xk(3)的收敛速度和 的选取有关. 3、Newton Raphson 算法在计算方程中的应用非线性方程求根最为常用的是迭代法。 迭代法是计算方法中的一种基本方法,主要有简单迭代法、牛顿迭代法和弦割法。本文主要通过借助非线性方程求解,介绍优化程序的方法,能够提高数值计算程序

30、的质量。它对处理科学工程问题或企事业管理中的数值计算问题有一定的启发意义。首先,常用非线性方程解法的对比与分析对于收敛的迭代过程,只要迭代足够多次,就可以得到满足制定精度要求的结果。但有时迭代过程收敛缓慢,计算效率很低。如何改进迭代法使之加快收敛速度,是实际应用中需要解决的问题。弦截法与牛顿迭代法都是线性化方法;但两者有本质的区别。牛顿迭代法与一般迭代法在计算 时只用到前一步的值,故称之为单点迭代法;而弦截法在求 时1kx 1kx要用到前两步的结果 和 ,使用这种方法必须给出两个初始近似根 , ,这kx 0种方法称为多点迭代法。另外,弦截法比牛顿迭代法收敛速度较慢,但它的计算量比牛顿迭代法小。

31、3.1 Newton Raphson 算法求解方程的根 例 1:用牛顿法求下面方程的根; 3210fxx解:因为 ,所以其迭代公式为: 23410fx;3223410nxxx选取 计算结果列表如下:01x重庆理工大学毕业论文 (Newton Raphson 算法及其应用)19N 牛顿法 弦位法 抛物线法0123456711.4117647058823531.3693364705882351.3688081886175321.3698081078213751.3688081078213731.36880810782137311.5000000000000001.3544303797468361.

32、3682702596546871.3688103503938871.3688081074722171.3688081078213731.36880810782137311.5000000000000001.2500000000000001.3685358577213671.3688079068201801.3688081078216811.3688081078213731.368808107821373从结果可以看出,牛顿法的收敛是明显很快的, 误差 .但用牛顿法计算工作5x150量会比较大,因每次计算迭代除了计算函数值外还要计算微商值.为此我们提出了简化的牛顿迭代算法:其公式为 ;用上面的公

33、式计算,不再需10nnxff要每步重新去计算微商值,所以计算量要小一些,但收敛也要慢一些.为了避免计算导数还可以采用差商代导数的方案来算:; 1 11nn nfxxx 关于牛顿迭代算法的收敛有下面结果:如果 在零点附近存在的连续的二阶f微商, 是 的一重零点,并且初始 充分接近于 ,那么牛顿迭代算法是收敛fx0x的,并且有; 2 1/2n nff这表明牛顿法是二阶收敛的(平方收敛的).最后考虑 是多项式的特殊的情况,而此时 , 在某个 值,比如fx fxfx时的计算可以用综合除法.xc设 ,除以 ,得商 ,余 :11nnfaax cqr; fxc(4)其中:; 12021nnqxbxbx;rf

34、c比较(4)式两边 的系数便知这些 可以按下表来进行:kxk0a1a2a1nana重庆理工大学毕业论文 (Newton Raphson 算法及其应用)200bc1bc2nbc1nbc0ba10a21a12a1na这一过程就是秦九韶算法,计算多项式值的嵌套算法: ;0121nnfccc 每个括号的值就是这里的 .nb1至于导数的计算,我们注意到(4)式可得:; fxqxc于是:;fc因此再对 进行上述的过程,或者再用一次秦九韶算法即可.nb1例 2:计算 在 区间内的一个实根.3250fx(2,3)我们已知 有一个精确到十二位有效数字的实根 .2.094518a取 ,以 Newton 迭代法计算

35、(记作 ),取 , 以式(4)计算(记03x 1nx03r作 ),其结果列表如表 1.2n表 1 计算结果:迭代次数 N nx101234532.3600000000002.1271967801592.0951360369342.0945516738242.094551482154从这个数值例子,我们能看出,式(4)比 Newton迭代算法的收敛速度快得多,只进行三次迭代就可以得到满足精度要求的值了,而 Newton迭代算法需迭代 5次才可以得到满足精度要求的值.式(4)可以被广泛应用,特别是编成数学软件后,用计算机求解方程近似根时效果会更加显著.重庆理工大学毕业论文 (Newton Raph

36、son 算法及其应用)21例 3:计算 的近似值。 78265.06108.x解: 令 问题转化为求 的正根x 07265)(f由牛顿迭代公式kkk xxfx28.)(1迭代结果迭代次数 迭代结果012345670.8800000.8836300.8844460.8846250.8846640.8846730.8846750.884675满足了精度要求 =0.884675 78265.0例 4:用牛顿迭代法球方程 =a(a0)的近似正实根。由此我们建立一种求平方根x的计算方法。解:首先计算可知迭代公式为 1.5()nnxa通过编写 matlab程序计算得出, 比如 5的平方根,初始值取做 2,

37、只需输入命令:it(5,2),立即可得结果 y=2.2361四、利用牛顿迭代法计算附息国债的实时收益率随着证券市场规模的扩大和机构投资者的增多,加上市场格局的变化,国债在重庆理工大学毕业论文 (Newton Raphson 算法及其应用)22证券市场中的地位和作用逐渐提高,许多投资者逐渐把目光转向国债市场。国债实时收益率是反映市场利率变化和衡量国债投资价值的重要指标,但是许多投资者对附息国债的实时收益率计算却无从下手。本文将介绍利用牛顿迭代法计算附息国债的实时收益率。4.1附息国债实时收益率的理论计算公式附息国债实时收益率也就是附息国债的内含收益率(或内部收益率,IRR ),内含收益率以下面的

38、公式为基础计 :10算. (5)b12111wwwwnwncccMPyyyy式中: :附息国债实时收益率(内含收益率);w:交易结算日至下一利息支付日的天数以上一利息支付日(LIPD)至下一利息支付日(NIPD)之间的天数,即:.365交 易 结 算 日 至 下 一 利 息 支 付 日 的 天 数天 ( 天 )c:每次支付的利息额;n:剩余的利息支付次数; :交易结算日的市场价格(全价,bP即:净价+累积利息)。4.2附息国债实时收益率的实际计算方法下面以 696券(696 券于 1996年 6月 14日发行,10 年期,票面年利率为 11. 83%,附息国债)为例,介绍附息国债实时收益率的具

39、体计算方法。设 1997年 6月14日之前的某一天购入 696券的价格为 ,每百元每年的实时收益率为 x,离第一0P次发放利息(1997 年 6月 14日)的时间为 t(年数),则:发行一年后的除权价: 10(1.83tpx发行二年后的除权价: 2) 发行九年后的除权价: 98(1).3px最后一年的到期本息为: 908上面一共 10个方程可决定 10个未知数: , , , , ,将以上 10个方程0p12 9p整理,消去 , , , 得到1p2 9p.01299.8383.8310ttt ttxxx从以上例子可以看出,设距离兑付期为 n年(取整数)的附息国债到期本金为重庆理工大学毕业论文 (

40、Newton Raphson 算法及其应用)23M,每年票面利息为:,购入价格为 的国债的到期收益率为 x,那么:0P.01nitnticMpx此方程式中已知购入价格 ,每年票面利息为 c,到期本金 M,剩余年数取整为n(注:这里的 n和(5)式中的 n有区别),t 为当前交易日至下一附息日的天数除以上一次利息支付日至下次利息支付日的天数,即 t为当前日至下一个利息支付日的年数。这是一个非线性代数方程,一般不能直接求解,只能采用逐次通近的迭代方法求解,即当知道解的某一初始近似值 后,从它开始逐步逼近所要求的解 x,我们选0x用牛顿迭代法解以上方程。4.3利用牛顿迭代法计算牛顿迭代法是迭代法的一

41、种,是求解函数方程的一种有效方法,其基本特征是计算格式简单且收敛较快。给定方程 f(x) =0。以及根 的初始近似值 ,并假设函数 f (x)在 的邻域内0x0x导数存在。设 是方程 f(x) =0。的根,即 成立,将0x0()f其在 处按泰勒公式展开得:0.2000()()!()xfxff略去含 及以后各项得近似等式:2x0f因而得 的近似表达式: 0()xf以 作为初始近似根 的改正值得:x0x 0100()fxx重复应用以上做法可得:.1()0,12)nnfxx此即为牛顿迭代公式。对于方程: ,设 y=1+x,整理得:01nitnticMpx.120 0ntycycyM重庆理工大学毕业论

42、文 (Newton Raphson 算法及其应用)24设: 120()ntnfypcycyMc则: )()2t ny应用牛顿迭代公式: ,选取误差 ,y 的初始近似值为 ,有:1()nnfyycw0y.01()f若 ,则停止迭代,取 ,否则继续迭代10cyw1y.12()fy 对于 ,如果 则继续 ,否则停止迭代,11()nnfyy1ncyw1()nnfyy得到方程的根 ,国债收益率 。1nx根据以上牛顿迭代公式编计算程序,可求得附息国债的实时收益率。程序编写如下(C 语言)#include#includefloat gznewton (float,float,float,int,float,float,float);void main() float x;float a,b,d,e,f,g;int k;a=155.45;b=11.83;d=100.0;k=6;e=0.85;f=1.1;g=0.00001;x=gznewton(a,b,d,k,e,f,g)-1;printf

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

当前位置:首页 > 企业管理 > 经营企划

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报