0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

牛顿迭代如何迭代?

FPGA之家 来源:FPGA之家 作者:FPGA之家 2021-03-09 10:52 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

什么是牛顿-拉夫逊方法?

牛顿其人:Isaac Newton(1642年12月25日– 1727年3月20日)是一位英国数学家,物理学家,天文学家,神学家和作家,被公认为有史以来最有影响力的科学家之一,并且是科学革命的关键人物。他的书《自然哲学的数学原理》于1687年首次出版,奠定了古典力学的基础。牛顿还为光学做出了开创性的贡献,并与戈特弗里德·威廉·莱布尼兹(Gottfried Wilhelm Leibniz)发展了无穷微积分的学科。

拉弗森Joseph Raphson 生卒不详,其最著名的著作是1690年出版的《通用分析方程》。它包含一种方法,现在称其为牛顿-拉夫森方法,用于近似方程式的求根。艾萨克·牛顿(Isaac Newton)在1671年写的《通量法》中开发了一个非常相似的公式,但是这项工作要到1736年才出版,这是拉夫森分析之后近50年。但是,该方法的Raphson版本比Newton方法更简单,因此通常被认为是更好的方法。

所以,牛顿迭代法(简写)就是一种近似求解实数域与复数域求解方程的数学方法。那么这个方法是具体是什么原理呢?

牛顿迭代如何迭代?

直接看数学公式描述如何迭代不直观,先来看动图就很容易理解牛顿迭代法为什么叫迭代法以及怎样迭代的:

牛顿迭代法是原理是根据一个初始点在该点做切线,切线与X轴相交得出下一个迭代点的坐标,再在处做切线,依次类推,直到求得满足精度的近似解为止。

由前面描述知道,牛顿迭代法是用来近似求解方程的,这里有两个点需要说明:

为啥要近似求解?很多方程可能无法直接求取其解

迭代法非常适合计算机编程实现,实际上计算机编程对于牛顿迭代法广为应用

来看看,数学上如何描述的?

其中为函数在处的一阶导数,也就是该点的切线。

来简单推一推上面公式的由来,直线函数方程为:

知道一个直线的一个坐标点以及斜率则该直线的方程就很容易可以得知:

那么该直线与轴的交点,就是也即等式的解:

啥时候停止迭代呢?

计算出

给出一个初始假定根值,利用上面迭代式子进行迭代

计算绝对相对迭代近似误差

将绝对相对近似误差与预定的相对误差容限进行比较。如果,则迭代步骤2,否则停止算法。另外,检查迭代次数是否已超过允许的最大迭代次数。如果是这样,则需要终止算法并退出。另一个终止条件是:

如何编码呢?

由于牛顿迭代法主要目的是解方程,当然也有可能用于某一个数学函数求极值,所以无法写出通用的代码,这里仅仅给出一个编代码的思路。相信掌握了思路,对于各种实际应用应该能很快的写出符合实际应用的代码。

假定一函数为

其波形图如下:

其一阶导数为:

那么对于该函数的根:

从图上大致可以知道有两个根,如果直接解方程,则很难求出其根,可以编个代码试试:

#include #include #include /*假定待求根函数如下*/ #defineF(x)(2*(x)*(x)-10*cos(x)+(x)-80) /*其一阶导数为*/ #defineDF(x)(4*(x)+10*sin(x)+1) floatnewton_rooting(floatx0,floatprecision,floatmin_deltax,intmax_iterations) { floatxn,xn1,fn,fn1,dfn; floatdeltax; intstep=0; xn=x0; xn1=x0; do{ xn=xn1; fn=F(xn); dfn=DF(xn); /*判0*/ if(fabs(dfn)<1e-6 )        {             if( fabs(fn)>precision) returnNAN; else returnfn; } xn1=xn-fn/dfn; fn1=F(xn1); deltax=fabs(xn1-xn); step++; if(step>max_iterations) { if(fabs(fn1)precision||deltax>min_deltax); returnxn1; } voidmain() { floatroot_guess=23.0f; floatprecision=0.00001f; floatmin_deltax=0.001f; floatroot; intstep=7; root=newton_rooting(root_guess,precision,min_deltax,step); printf("根为:%f,函数值为:%f ",root,F(root)); root_guess=-23; root=newton_rooting(root_guess,precision,min_deltax,step); printf("根为:%f,函数值为:%f ",root,F(root)); }

结果:

根为:6.457232, 函数值为:0.000004 根为:-6.894969,函数值为:-0.000008

函数值已经很接近于0了,如果还需要更为精确的值,则可以选择在此基础上进一步求解,比如利用二分法逼近。

需要注意些啥?

求斜率可能为0,如为0时,则可能找到了函数的极值,比如:

如果选择的初始猜测根的接近方程f(x)=0中函数f(x)的拐点 ,Newton-Raphson方法可能开始偏离根。然后,它可能会又收敛回到根。例如:

5435866

如果选择的初值不合适,可能会跳掉一些根,比如:

所以实际应用时,需要知道自己待求解模型的大致情况,在合理的加以调整。

有哪些应用?

比如知道某系统的传递函数,求解传函的参数,可以将上述方法推而广之,求解多维变量方程组,求导就变成求偏导了

又比如设计一电路测量某物质的阻抗

....

总结一下

牛顿迭代法在解决实际问题时,利用迭代求方程近似根的数学原理,在工程中有着很好的实用价值。比如求一个趋势的极值,传递函数参数辨识等都有广泛的实际应用。本文抛砖引玉,有可能文章也有很多错误疏漏的地方,如有不同看法或者发现错误,欢迎留言交流指正。

—END—

责任编辑:lq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 函数
    +关注

    关注

    3

    文章

    4421

    浏览量

    67822
  • 迭代
    +关注

    关注

    0

    文章

    21

    浏览量

    8933
  • 牛顿
    +关注

    关注

    0

    文章

    6

    浏览量

    6502

原文标题:数学之美:牛顿-拉夫逊迭代法原理及其实现

文章出处:【微信号:zhuyandz,微信公众号:FPGA之家】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    工业4.0下,舵机技术迭代加速!高德诚舵机应用的3大主流应用赛道!

    世界的“神经枢纽”,舵机的性能迭代直接决定了设备的智能化上限。本文将以高德诚智能舵机为例,解析技术趋势,揭秘扫地机、具身机器人/AI桌面机器人、灵巧手这三大爆发场景,为企业决策者提供战略级参考。 一、行业背景:舵机
    的头像 发表于 04-03 14:00 180次阅读

    基站散热器CNC加工:如何支撑“高功率”的快速迭代

    随着5G通信技术全面普及、6G技术研发持续推进,通信基站朝着高密度集成、高功率输出、小型化轻量化方向快速迭代,基站内部射频单元、AAU、基带模块等核心部件的发热量呈几何级增长,散热系统成为保障基站
    的头像 发表于 03-18 14:19 772次阅读

    政策驱动 + 技术迭代,安科瑞 ADW300 筑牢智能用电基础设施底座

    角色   从行业发展来看,低压表行业正处于从传统机械式向智能电子式加速迭代的关键阶段,安科瑞ADW300三相四线智能电表
    的头像 发表于 02-05 13:28 232次阅读
    政策驱动 + 技术<b class='flag-5'>迭代</b>,安科瑞 ADW300 筑牢智能用电基础设施底座

    玄景以模块化重构AI眼镜,挑战行业迭代即淘汰铁律

    行业性能、重量、续航的“不可能三角”,并挑战消费电子产品“快速迭代、即购即落后”的行业惯例。   本次Tech Open Day详细解读了已于CES 2026首发的玄景M6系列。该产品由基础AI拍摄眼镜M6 Air与可磁吸叠加的单绿或全彩显示模块(Mini AR屏)组成。用户可根据需要,在
    发表于 01-25 10:26 2219次阅读
    玄景以模块化重构AI眼镜,挑战行业<b class='flag-5'>迭代</b>即淘汰铁律

    【技术贴】解密艾为飞天™DSP黑科技(二):产品迭代与性能飞跃

    为飞天DSP目前的产品迭代与演进。艾为飞天DSP产品的演进其中下图是展示了第一代艾为飞天DSP产品到最新一代的主要特性和重点参数的变化。图1艾为飞天DSP产品的计
    的头像 发表于 10-29 18:47 466次阅读
    【技术贴】解密艾为飞天™DSP黑科技(二):产品<b class='flag-5'>迭代</b>与性能飞跃

    Newton-Raphson算法实现浮点除法(七)

    牛顿迭代算法,一直逼近于f(x) = 0的点,则有xi+1 = xi (2 - xi b),这样我们能够用下述步骤实现a/b: 1)把b移位,使其满足0.5≤b&lt;1; 2
    发表于 10-24 07:53

    基于 SRT4 的整数除法器的优化

    主要的除法运算优化方法是使用基本的SRT-4算法进行除法运算,以模拟SRT-64除法运算: 为了减少时钟周期并提高运算频率,极大基法是SRT算法中提出的一种方法。在该方法中,每次迭代的位数取决于所
    发表于 10-23 07:23

    千视解读NDI 6.2:小版本迭代,大理念跨越,赋能下一代IP视频工作流

    2025年6月,NDI团队推出了新迭代版本NDI6.2,标志着NDIIP视频技术在能力、稳定性与扩展性上再进一步。NDI6.2的发布虽然只是在NDI6.0大版本上的一次常规迭代,但其中的几个重要更新
    的头像 发表于 08-12 16:04 1362次阅读
    千视解读NDI 6.2:小版本<b class='flag-5'>迭代</b>,大理念跨越,赋能下一代IP视频工作流

    固态电池时代:PACK生产线如何提前布局技术迭代

    在新能源汽车渗透率突破25%、动力电池成本占比超35%的当下,固态电池凭借高能量密度、高安全性等特性,正成为下一代动力电池的核心方向。从半固态电池的规模量产到全固态电池的工程化验证,技术迭代已进入
    的头像 发表于 07-28 18:01 1070次阅读

    飒特红外GF5000多功能消防热像仪迭代升级

    在消防救援现场,每一秒都关乎生命,每一个数据都影响决策。作为中国消防红外热像仪行业标准起草单位,飒特红外始终以 “让救援更高效、让消防员更安全” 为目标。近日,GF5000 多功能消防热像仪完成迭代
    的头像 发表于 07-21 16:55 1044次阅读

    聚徽厂家分享通过软件迭代提升工业平板电脑性能的策略

    在工业领域,工业平板电脑广泛应用于生产控制、数据采集、设备监控等关键环节。随着使用时间的增加以及业务需求的不断变化,工业平板电脑可能会出现性能下降的情况。通过软件迭代来提升其性能,是一种相对低成本且高效的设备升级策略,能有效延长设备使用寿命,满足工业生产对设备稳定性和高效性的要求。
    的头像 发表于 07-11 18:13 864次阅读

    今日看点丨传小米玄戒芯片会持续迭代;台积电美国厂将量产英伟达AI芯片

    1. 传小米玄戒芯片会持续迭代,并逐步覆盖高端产品线   6月3日,博主数码闲聊站发文透露了小米芯片相关进展信息:“小米汽车芯片在做了,车规级芯片验证时间更长。再结合5G基带在研,可以确定的是,玄戒
    发表于 06-04 11:23 2617次阅读

    老旧工控机升级策略:硬件迭代与软件兼容性的平衡之道

    在工业自动化领域,老旧工控机的升级是一个常见且具有挑战性的任务。随着技术的不断进步,硬件性能的提升成为必然需求,但与此同时,软件兼容性问题却常常成为升级过程中的绊脚石。如何在硬件迭代的同时确保软件
    的头像 发表于 05-29 16:05 1482次阅读

    OptiSystem应用:光放大器EDFA的仿真

    可以定义模拟中的迭代次数和引入初始延迟的重要参数。 这些参数是Iterations和Initial delay,可以在全局参数窗口中获得(图1) 图1 全局参数:Signals 标签 本次教程中,除了一些
    发表于 05-23 08:47

    从防爆PDA终端看工业移动设备:如何平衡安全与功能迭代

    从防爆PDA终端看工业移动设备,平衡安全与功能迭代需要从设计标准、功能模块化、硬件冗余、软件动态更新、认证与测试五大维度构建技术框架,并结合行业场景需求进行动态优化。以下为具体分析:一、安全是功能
    的头像 发表于 05-22 14:46 952次阅读
    从防爆PDA终端看工业移动设备:如何平衡安全与功能<b class='flag-5'>迭代</b>?