【问题标题】:How can I choose the right numerical solution from NEQNF?如何从 NEQNF 中选择正确的数值解?
【发布时间】:2015-10-04 19:17:03
【问题描述】:

我正在使用我调用的函数 (NEQNFmanual page here)

call neqnf(SYSTEM_OF_EQUATIONS, x, xguess=x_GUESS, itmax = 10000)

其中SYSTEM_OF_EQUATIONS 是包含方程式的子程序

f(1)=...x(2)...x(1)...
f(2)=...x(1)...x(4)...
f(3)=...x(3)...x(4)...
f(4)=...x(1)...x(5)...
f(5)=...x(1)...x(5)...

来自 Fortran 上的 IMSL 库,它让我能够求解具有五个方程中的五个未知数的非线性系统。因为存在不止一个解决方案(解决我的系统的五个实数或复数),我如何选择“使用”哪一对作为解决方案?

我将一个在线求解器与已输入的系统的一部分(两个方程中只有两个未知数,本示例中其他变量是常数)链接起来,这很容易向您表明存在多个解决方案。

example

要结束我的问题,我可以说我必须选择让其他变量为正的几个变量,所以选择这对夫妇的方法很简单。

【问题讨论】:

  • 你使用哪个库函数?你怎么称呼它?手册是否说明了解决方案?就目前而言,这些问题与 Fortran 甚至编程无关。
  • 是的,你说得对,我只在标题中提到过。现在 OP 包含该信息。我知道这不是一个“纯粹的”编程问题,但恕我直言,这更像是一个编程问题而不是数学问题......
  • 我不只是询问它的名称和链接。你怎么称呼它?您在手册中发现了哪些关于不同解决方案的信息?
  • 我没有找到任何关于多种解决方案的信息

标签: fortran numerical-methods imsl


【解决方案1】:

我不认为这个问题与编程有任何关系,但我会展示我是如何理解这个问题的。

您提供了一个初步猜测。然后该方法通过修改牛顿方法收敛到某个解。

您可以通过初始猜测的位置来选择根。但是,收敛模式可能非常难以预测(甚至是分形 - https://en.wikipedia.org/wiki/Newton_fractal),并且使用初始猜测来选择特定的根可能非常困难。

【讨论】:

  • 这让我无法选择想要的解决方案!
  • 这是数学。如果您认为这个方法不好,请数学家向您推荐其他方法...
猜你喜欢
  • 2020-07-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-01-29
  • 1970-01-01
  • 1970-01-01
  • 2013-06-02
  • 2020-11-18
相关资源
最近更新 更多