问题标签 [newtons-method]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3809 浏览

matlab - Matlab中三变量非线性系统的Newton-Raphson方法

我正在尝试使用 MATLAB 中的 Newton-Raphson 方法解决 3 个非线性系统的 3 个变量。以下是3个非线性方程:

我需要使用 Newton-Raphson 方法找到cs和的值。q

这是我到目前为止所拥有的:

有人可以检查我的代码,有一些错误,所以它不起作用。提前致谢。

0 投票
1 回答
874 浏览

matlab - MATLAB中方程组的牛顿法

我试图为方程组实现牛顿方法,但我认为它不能正常工作。我应该得到 [60 22.5 -60] 度左右的角度,但现在我得到 [995 90 -230] 度。有人可以看到我的代码有什么问题吗?

0 投票
1 回答
597 浏览

python - 使用 Matlab 代码在 Python 中使用反步法对牛顿法进行编程

我正在尝试使用我在 Matlab 中编写到 Python 的后退代码来编写牛顿法,但在 Python 语法上遇到了一些问题。Matlab 大约需要 5 次迭代,但我的 Python 代码循环到最大迭代 1000 次,并且由于后退机制不起作用(尝试计算负对数)而出现域错误。我有一段时间没有使用 Python,所以我很可能会混淆某种语法。

这是正常工作的 Matlab 代码:

这是Python代码:

0 投票
3 回答
4525 浏览

c - 在 C 中计算小数指数

我正在尝试评估 a^n,其中 a 和 n 是有理数。我不想使用任何预定义的函数,例如sqrt()pow()

所以我正在尝试使用牛顿法来获得使用这种方法的近似解:

3^0.2 = 3^(1/5) ,所以如果 x = 3^0.2,x^5 = 3。

解决这个问题的最好方法(没有计算器但仍然使用基本的算术运算)可能是使用“牛顿法”。牛顿求解方程 f(x)= 0 的方法是建立一个数字序列 xn,通过将 x0 作为一些初始“猜测”,然后 xn+1= xn- f(xn/f '(xn) 其中 f '(x) 是 f 的导数。

发表在物理论坛上

这种方法的问题是,如果我想计算5.2^0.33333,我需要找到这个方程的根x^10000 - 5.2^33333 = 0。我最终得到了大量的数字,并且大多数时候都会inf出错nan

有人可以就如何解决这个问题给我建议吗?或者,有人可以提供另一种算法来计算 a^n 吗?

0 投票
2 回答
433 浏览

c - 为 scanf() 输入一个值,但没有任何反应

我正在编写一些代码作为从绝对基础学习 C 编程的一些作业练习的一部分,我遇到了一个问题,这可能很容易解决,但我完全卡住了!我正在编写一个程序来实现基本的牛顿微分方法。每当我向 scanf() 输入初始值时,程序就会停止,不返回任何内容,终止或冻结。任何帮助都会很棒。这是我的代码开始:

0 投票
1 回答
541 浏览

sas - proc iml中的平方误差总和

我正在尝试创建一个代码来运行 Newton Raphson 优化。我正在使用 proc iml,但是当我需要评估错误 (e) 时,我需要总结所有平方差并且不知道如何告诉 SAS 在这种情况下我需要向量分量的总和而不是向量。代码如下:

谢谢!

0 投票
1 回答
651 浏览

python - Pandas 中的牛顿法

我正在尝试使用 scipy.newton 方法在熊猫数据框中进行优化。

首先,我的数据框创建如下。其次,创建函数 Px。第三,创建另一个函数 YieldCalc,在其中我使用 scipy.newton 进行优化以找到 Rate 的值,使得 Px = 0。然后我尝试将该值添加到新列“Yield”,但出现以下错误。任何帮助将非常感激。提前致谢。

错误/输出:

0 投票
3 回答
1415 浏览

matlab - 使用 Newton-Raphson 迭代法进行浮点除法时出错

我正在使用 Newton-Raphson 算法使用单精度硬件来划分 IEEE-754 单精度浮点值。

我正在使用这两个链接中描述的方法:

  1. 维基百科牛顿-拉夫森分部
  2. 我正在使用的 Newton-Raphson 方法

然而,尽管计算 Xi 到 X_3(即使用 3 次迭代),我的答案仍然有点偏离。我想知道为什么会这样?我正在使用 MATLAB 比较我的结果。

这是显示不正确结果示例的输出

我在这里附上了我的 MATLAB 代码:

这是包含测试输入的文件(应该存储在名为 generatefloats_for_fpdiv.txt 的文件中):

0 投票
1 回答
934 浏览

python - Python中带有mpmath.findroot的高精度多维牛顿法

我正在尝试使用 mpmath.findroot 的多维牛顿法以高精度数值求解方程组。这是一个示例系统:

不幸的是,它没有给我解决方案,但会引发错误

ZeroDivisionError:矩阵在数值上是奇异的

发生这种情况是因为 findroot 正在尝试计算雅可比吗?这是否意味着系统未确定?

我使用 scipy 的 fmin_cg 找到了起点,但我想将解决方案打磨到更高的精度。作为 fmin_cg 的函数,我最小化了函数 f 的 27 个条目的平方和。

如果 mpmath.findroot 的问题无法避免,有没有更好的方法来解决这个系统的高精度问题?

0 投票
2 回答
40923 浏览

matlab - Matlab 中的 Newton-Raphson 方法

我是 matlab 新手,我需要创建一个函数,该函数使用初始近似值 x = a 对 Newton-Raphson 方法进行 n 次迭代。这个起始近似值不算作一个交互,另一个要求是需要一个 for 循环。我查看了发布的其他类似问题,但就我而言,我不想使用 while 循环。

这就是我的输入应该是:

到目前为止,这是我的代码。

当我尝试调用该函数时,我收到一条错误消息:

问题是如何使用这个 VPA 功能?当然,我的其余代码可能也不是 100% 正确,但任何解决 vpa 问题或修复我的代码其他部分的帮助将不胜感激。

谢谢!