下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、牛顿迭代法(简写)就是一种近似求解实数域与复数域求解方程的数学方 法。那么这个方法是具体是什么原理呢?牛顿迭代如何迭代?直接看数学公式描述如何迭代不直观,先来看动图就很容易理解牛顿迭代 法为什么叫迭代法以及怎样迭代的:牛顿迭代法是原理是根据一个初始点在该点做切线,切线与X轴相交得出 下一个迭代点的坐标,再在处做切线,依次类推,直到求得满足精度的近似解为啥要近似求解?很多方程可能无法直接求取其解迭代法非常适合计算机编程实现,实际上计算机编程对于牛顿迭代法广为应用 来看看,数学上如何描述的?_/(孙)“”+1 二帀y其中f仗为函数f仗):在处的一阶导数,也就是该点的切线。来简单推一推上面公式的山来
2、,直线函数方程为:y = kx知道一个直线的一个坐标点(劭以及斜率则该直线的方程就很容 易可以得知:y f f + /(n)那么该直线与轴的交点,就是y=0也即仏M- f (务层=0等式X的解f仏) =一 Rrf仏) 啥时候停止迭代呢?1. 计算出/佃)2. 给出一个初始假定根值xO,利用上面迭代式子进行迭代3计算绝对相对迭代近似误日曾W。4.将绝对相对近似误差与预定的相对误差容限g进行比较。如果IgIaG,则迭 代步骤2,否则停止算法。另外,检査迭代次数是否已超过允许的最大迭代次 数。如果是这样,则需要终止算法并退出。穷一个终止条件是:|幺+1)| e如何编码呢?山于牛顿迭代法主要u的是解方
3、程,当然也有可能用于某一个数学函数求 极值,所以无法写出通用的代码,这里仅仅给出一个编代码的思路。相信掌握 了思路,对于各种实际应用应该能很快的写出符合实际应用的代码。假定一函数为f(x) - 22 - 10co5a?) + X 80其波形图如下:f(x)=2x2 lOcos(z) + z 80fx) = 4X + lQsin(x) + 120406080那么对于该函数的根:2/ - lQcosx) + X 一 80 = 0从图上大致可以知道有两个根,如果直接解方程,则很难求出其根,可以编个 代码试试:#include #include #include 产假定待求根函数如F*/#define
4、 F(x) (2*(x)*(x)- 10*cos(x)+(x)-80)产其一阶导数为派/#define DF(x) (4*(x)+10*sin(x)+1)float newton_rooting(float xOfloat precision,float inin_deltax4nt max_iterations)float xmxn 1 JnJn 1 .dfn; float deltax;int step = 0;xn = xO;xnl = xO;doxn = xnl;fn =F(xn);dfn = DF(xn); 产判的if( fabs(dfn) precision ) return NA
5、N;elsereturn fn;xnl = xn - fn/dfn; fnl = F(xnl);deltax = fabs(xnl-xn);step+;if( stepmax_herations)if( fabs(fnl)precision II deltaxinin_cieltax );return xnl;void inainOfloat root_guess = 230f; float precision = 0.0000If; float inin_deltax = 0.00If: float root:int step = 7;root = newton_rooting( root_
6、guess,precisionunin_deltax,step ); printf(根为:f,函数值为:rool,F(root);root_guess = -23;root = newton_rooting( root_guess,precisionunin_deltax,step ); printf(根为:f,函数值为:root,F(root);结果:根为:6.457232,函数值为:0.000004根为:-6.894969”函数值为:-0.000008函数值已经很接近于0了,如果还需要更为精确的值,则可以选择在此基础上 进一步求解,比如利用二分法逼近。需要注意些啥?求斜率可能为0,如为0时,则可能找到了函数的极值,比如:如果选择的初始猜测根的接近方程f(x)=0中函数f(x)的拐点,NewiomRaphson 方法可能开始偏离根。然后,它可能会乂收敛回到根。例如=03456O O O O O O O O OM 吃 W8642 4 ZTS.O+mui)2X5435866 如果选择的初值不合适,可能会跳掉一些根,比如:所以实际应用时,有哪些应用?需要知道自己待求解模型的大致悄况,在合理的加以调整。比如知道某系统的传递函数,求解传函的参数,可以将上述方法推而广之,求 解多维变量方程组
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度云南省高校教师资格证之高等教育学题库综合试卷B卷附答案
- 2024年度云南省高校教师资格证之高等教育法规测试卷(含答案)
- 福建省福州市2024-2025学年八年级上学期期中适应性测试物理模拟试卷2(拔高)(含答案)
- 2024年度云南省高校教师资格证之高校教师职业道德考前冲刺试卷B卷含答案
- 数据中心日常维护方案
- 赣南师范大学《思想政治教育方法论》2022-2023学年第一学期期末试卷
- 赣南师范大学《合唱指挥》2021-2022学年第一学期期末试卷
- 阜阳师范大学《武术表演》2021-2022学年第一学期期末试卷
- 阜阳师范大学《教学系统设计》2022-2023学年第一学期期末试卷
- 阜阳师范大学《语文教学论》2021-2022学年第一学期期末试卷
- SC200200施工升降机拆除施工方案
- DBJ50T-396-2021山地城市地下工程防渗堵漏技术标准
- 订单登记表模板
- 班主任工作经验交流课件1
- (完整)斯坦福-国际标准智商测试(45分钟60题)标准答案
- 沪科版八年级上册数学教学计划及进度表
- 咳嗽(急性支气管炎)中医临床路径住院表单
- 以“感动”为话题作文-完整版PPT
- 标签打印管理办法及流程
- 规范和改进农村宅基地管理业务培训课件
- 特殊疑问词期末复习课件(共29张PPT)
评论
0/150
提交评论