牛顿法与Continuation Method

牛顿法与Continuation Method

计算结果:

x 0 = − 2.17731898 x_0=-2.17731898 x0=2.17731898:

方法新的初值 x ^ \hat{x} x^迭代次数 k k k最终近似解 x x x
直接Newton迭代null18-1.7875e-04
显式Euler0.088332.1833e-17
隐式Euler-0.07423-1.2746e-16
梯形公式法0.00393-2.0296e-16
4级4阶Runge-Kutta方法0.01323-1.0407e-16

x 0 = − 4 x_0=-4 x0=4:

方法新的初值 x ^ \hat{x} x^迭代次数 k k k最终近似解 x x x
直接Newton迭代nullnull不收敛
显式Euler0.66574-1.0015e-17
隐式Euler-0.211931.0647e-16
梯形公式法0.09883-1.5607e-16
4级4阶Runge-Kutta方法0.066931.1912e-16

以上算法在求解常微分方程非显示格式时,使用Newton迭代法,精读tol’=1e-3.

总结:

  1. 在求解非线性方程组时,在选取初值不甚恰当的情况下直接使用Newton迭代法会导致迭代步数多但精度低的问题(如第一个表中 k = 18 ,   x = − 1.7875 e − 04 k=18,\ x=-1.7875e-04 k=18, x=1.7875e04),甚至可能出现更坏的情况:不收敛( x 0 = − 4 x_0=-4 x0=4)。
  2. 倘若能根据上课提到的“预处理”的方法,根据最开始的初值 x 0 x_0 x0得到一个较为精确的初值 x ^ \hat{x} x^,比如这次作业中先将求解方程的根的问题转化为求解一个常微分方程的问题,得到一个近似解 x ^ \hat{x} x^, 再把它作为初值使用Newton迭代,就可以减少迭代次数而大大增加最终求得解的精度(当然在实际中应将计算常微分方程的代价考虑在内),而相比于第二种情况下较远的初值不收敛的问题有了巨大的改进。
  3. 常微分方程求解方法的选择会影响 x ^ \hat{x} x^的精度,进而影响Newton法迭代次数和最终解的精度。从数值实验结果来看,一般来说常微分方程求解方法精度越高,求得的 x ^ \hat{x} x^越精确,最终Newton法迭代次数越小,解的精度越高。这是符合理论分析的。
  4. 在问题的分析中还应考虑计算常微分方程的代价。综合考虑得出结论:实际问题中可以先“粗略地”(步长 h h h不必很小,同时选取合适的解法)求解常微分方程,再将解作为初值进行Newton迭代,这样既能提高精度、减少迭代次数、减小对初值选取的依赖,又能使计算代价不至于太大。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值