数学实验报告——利用maltab计算非线性方程近似解

数学实验报告——利用maltab计算非线性方程近似解

ID:18773088

大小:129.07 KB

页数:19页

时间:2018-09-23

数学实验报告——利用maltab计算非线性方程近似解_第1页
数学实验报告——利用maltab计算非线性方程近似解_第2页
数学实验报告——利用maltab计算非线性方程近似解_第3页
数学实验报告——利用maltab计算非线性方程近似解_第4页
数学实验报告——利用maltab计算非线性方程近似解_第5页
资源描述:

《数学实验报告——利用maltab计算非线性方程近似解》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验四非线性方程近似解一、按揭还贷㈠问题描述(1)小张夫妇以按揭方式贷款买了一套价值20万元的房子,首付5万元,每月还款1000元,15年还清。问贷款利率是多少?(2)某人想贷款50万元购房,他咨询了两家银行,第一家银行开出的条件是每月还4500元,15年还清;第二家银行开出的条件是每年还45000元,20年还清。从利率方面看,哪家银行较优惠?(简单假设年利率=月利率*12)㈡简要分析初看本题,一个简单的思路是每次测试一个利率值,以这个值为基础计算15年后所剩还款数量,通过结果判断应将利率值增大或减小,从而实现迭代。这其实是一个二重迭代的过程,之所以这样是因为不容易一眼看出本题的非

2、线性方程。事实上,转换思路后,可以利用一个简单的方程描述整个迭代过程。这样就将二重迭代转化为了一层迭代。使得处理更加简便。㈢方法与公式1、解题方法(1)二次迭代给定总的本金,从每一次还款中扣去这段时间中增加的利息,再将其还到本金,使本金总量逐渐减少。代码:fori=1:time*12less=(repay-left*interest);left=left-less;(2)方程描述虽然并不是所有本金都在还款的整个期间中产生了相应的利息,但是可以设想成这样,与此同时,还款从在相应的还款时间开始产生利息,这样可以得出,两者最终的“本息和”相等,即A(1+q)n=i=1nP(1+q)n-i

3、其中A为总还款金额,q为了利率,P为每次还款金额。192、解方程方法(1)牛顿法xk+1=xk-f(xk)f'(xk)(2)直接使用公式fzero()㈣结果与分析1、第一问:(1)二次迭代[i,q]=iterate(150000,1000,15,2,0,1,100,10^-6);公式表意为:总贷款量=200000-50000=150000;每月还款100元;还款期限15年;还款方式为按月还款;迭代区间设定为[0,1];最大迭代次数为100次;精度要求为10^-6;最终结果为:迭代次数:45;使用时间0.003030989435705s;利率为0.002081163889457。(2

4、)公式A(1+q)n=i=1nP(1+q)n-i=P(1+q)n-1q由于函数中出现q在分母位置的情况,故不能将迭代区间设为[0,1],为了能够更好地比较各种方法,因此,这里设置一端为1,一端尽量小。经测试,当设置值比10-15还小时,matlab自动认为其为0,故取10-15。所得结果如下:迭代次数:20使用时间不稳定,最长使用0.0066s,最短使用0.0014s。利率为0.002081163889460(3)使用自己编写的牛顿迭代公式按照书中给出的牛顿迭代公式,进行迭代。19迭代次数随初值的设定而不断变化,初值的设置要求更加复杂,不能达到10-15这样小。这里仅实验了10-6

5、的情况,事实上,此时的迭代次数已经相当大,用时也不短。具体数据如下:迭代次数:33703使用时间:1.290408747434996s利率为0.002081163888815(4)简要小结从以上三种计算方法可以看出,各种计算方法的结果均相差不多,可见各种方法的正确性都是有保障的。与此同时不同的方法有着自己不同的特性:a.由于涉及公式的使用,第二、三种方法都出现了初值设置的问题。当然这个问题视具体情况而定,不能一概而论;b.本次实验中发现,前两种办法在给定区域较广的情况下能够较快地收敛到所求的位置,而牛顿法使用的时间反而较多。为了进一步确认,我将牛顿法的迭代初值置为1,此时共迭代39

6、5次,使用时间为0.030859880251168。可以发现仍旧较大。可见自己编写的迭代方法距matlab所用的混合方法相差较远。2、第二问(1)月付款仍旧使用三种方法并进行比较 二次迭代fzero自编牛顿法用时0.015869799889130.008483559658840.02216196240263迭代次数4723170结果0.0058507925828440.0058507925828450.00585079258286(2)年付款用时0.008084423899200.007891136835900.01815115453564迭代次数442353结果0.0639487

7、77092410.063948777092390.06394877709245从实验结果可以看出,各种方法所得的最终数据基本一致。由题目假设:年利率=月利率*12得到第一中按揭方式的年利率约为0.070209511,比第二种方法大。故第二家银行开出的条件较优惠。3、总结a.二分迭代和牛顿迭代法通常都能通过迭代收敛得到所要的结果;b.使用Matlab自带的fzero通常能够更快地得到结果,相比之下牛顿迭代法所用时间较长;㈤程序清单191、二重迭代(1)计算剩余本金的函数

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。