问题标签 [nonlinear-functions]

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 回答
880 浏览

python - 在python中求解非线性方程的动态数量

FsolveinScipy似乎是合适的人选,我只需要动态传递方程的帮助。我提前感谢任何想法。

通过动态,我的意思是方程的数量从一次运行到另一次运行不同,例如我有一种情况:

我还有另一种情况:

alpha, beta, A, B, C,DE都是常数。x, y, z,w是变量。

0 投票
2 回答
1677 浏览

math - 如何求解非线性联立方程组(在 Matlab、Python 或 Fortran 中)

我正在研究一个非线性联立方程组。这两个变量是 u>0 和 b>0。如何在 Matlab、Python 或 Fortran 中解决这个问题?谢谢。

非线性联立方程

0 投票
4 回答
7417 浏览

java - Java中非线性多变量函数的约束优化

我正在寻找一种方法的开源实现,该方法对Java中的非线性多变量函数进行约束优化。

0 投票
1 回答
1676 浏览

algorithm - 检查非线性函数 f 是否始终为正的算法

是否有一种算法来检查给定的(可能是非线性的)函数 f 是否总是正的?

我目前的想法是找到函数的根(使用 newton-raphson 算法或类似技术,请参阅http://en.wikipedia.org/wiki/Root-finding_algorithm)并检查导数,或找到最小值f,但它们似乎不是这个问题的最佳解决方案,而且求根算法也存在很多收敛问题。

比如在 Maple 中,function verify可以做到这一点,但是我需要在自己的程序中实现。Maple 验证帮助:http ://www.maplesoft.com/support/help/Maple/view.aspx?path=verify/function_shells Maple 示例:assume(x,'real'); 验证(x^2+1,0,'大于');--> 返回真,因为对于每个 x 我们都有 x^2+1 > 0

[编辑] 问题的一些背景:函数 $f$ 是电路的右手边微分非线性模型。非线性电路可以通过应用修正节点分析 (MNA) 建模为一组常微分方程,为简单起见,我们只考虑一维系统,因此 $x' = f(x)$ 其中 $f$ 描述电路,例如 $f$ 可以是 $f(x) = 10x - 100x^2 + 200x^3 - 300x^4 + 100x^5$ (非线性隧道二极管的模型)或 $f=10 - 2sin (4x)+ 3x$(约瑟夫森结的模型)。

$x$ 是有界的,$f$ 只在区间 $[a,b] \in R$ 中定义。$f$ 是连续的。我也可以假设 $f$ 是 Lipschitz 且 Lipschitz 常数 L>0,但我不想这样做,除非我必须这样做。

0 投票
3 回答
14587 浏览

python - 用 scipy 的 fsolve 求解方程

我正在尝试解方程f(x) = x-sin(x) -n*t -m0

在这个等式中,nm0是属性,在我的班级中定义。此外,t是等式中的常数整数,但每次都必须更改。

我已经解决了这个方程,所以我得到了一个“新方程”。我已经导入了 scipy.optimize

有什么更正和建议可以让它发挥作用吗?

0 投票
1 回答
1013 浏览

matlab - 在 MATLAB 中求解大量定义不明确的非线性方程

我将尝试描述我的问题,但最后有一些具体问题。

我在解决 Matlab 中的涡轮机械问题时遇到了一些麻烦。目标是计算具有已知物理测量和运行条件的涡轮机的效率。为此,我使用科学论文中给出的方程式:http ://www.sciencedirect.com/science/article/pii/S0196890409003124

我的问题是,要知道效率,我需要出口气体参数(温度压力速度......),这又取决于效率。我主要在一个名为 EES(工程方程求解器)的软件中解决了这个问题,其中方程可以按任何顺序编写,程序将它们分组并自动求解。由于程序中的限制不允许我扩展问题,我切换到 Matlab。

在 matlab 中,我首先以可解的顺序将所有方程编写为函数,但解决问题所需的两个退出参数除外。两个退出参数被设置为函数的输入。我使用了两个基本方程(质量守恒和计算出的损失)作为输出,正确的解决方案会将这些方程设置为零。然后我尝试用 fsolve 解决这个问题。

这并没有真正解决,我找不到解决方案。现在我将问题(27)的所有方程都提供给matlab,并尝试以类似的方式解决它们。这也不好用。(“未找到解决方案。fsolve 停止,因为最后一步无效”)。

在方程中有一些逻辑和 if 语句,我还使用流体参数库作为 com-server,以获取不同压力和温度下的气体参数。这些都不允许从 -inf 到 +inf 的输入,并且可能还存在一些不连续性......我想这可能是我的问题的一个原因。

所以,我想这不是典型的编程问题。我不知道代码本身会有多大帮助。如果您对解决此问题的方法有任何想法,那将有很大帮助!我也有一些具体的问题:

  1. 是否有可能以某种方式向 fsolve 发送一个参数,告诉它某些方程超出范围?(在这种情况下,com-server 会发送错误消息,但我不知道如何自动使用它。)

  2. 是否可以给 fsolve 一个范围,类似于 fzero?

  3. 我试图将其设置为零向量的函数的结果向量具有来自非常不同的方程的结果,因此值变化很大。等式之间的误差容限也非常不同。有什么聪明的方法可以解决这个问题吗?我刚刚将结果与不太精确的方程相除以减少值。

0 投票
1 回答
2940 浏览

algorithm - Mathematica 在 NonlinearModelFit[] 中使用什么拟合算法?

我需要知道它使用的算法,因为我必须编写自己的程序。Levenberg-Marquardt 并没有真正做同样的事情。是否有一个算法列表,Mathematica 可以从中选择用于特定问题的算法?

谢谢你。

0 投票
2 回答
3264 浏览

shell - 执行 shell 脚本后退出 applescript 应用程序

我想知道 applescript 应用程序是否可以运行 shell 脚本,然后在 shell 脚本执行完成之前退出。在给定时间运行服务器时,这将很有用。不需要applescript在后台不断运行,有没有办法独立运行一个函数?

当上述作为应用程序运行时,它将正确启动服务器。但是,应用程序runScript.app将继续运行。即使 applescript 被强制退出,服务器也会继续运行。有没有办法让它在服务器启动后自动退出?

谢谢

0 投票
1 回答
480 浏览

matlab - Matlab中非线性方程的交叉特性

我想根据施加的电流创建一个螺旋桨角速度的 Matlab 图。关键是,这需要结合两组相互依赖的数据。

首先,阻力系数c_d取决于角速度omega(我没有公式,只有数据),如下图所示 - 特征c_d(omega)可以很容易地线性化为c_d(omega) = p*omega + p_0

其次,omega不仅取决于施加的电流i,还取决于阻力系数c_d(omega)

解决这种情况的脚本,c_d下面是常量。必须以某种方式使用 Matlab 命令将这两者结合起来。谢谢你的帮助。

在此处输入图像描述

编辑:

试图遵循bdecaf 的解决方案。所以我创建了一个函数c_d_find,如下所示:

我对 Matlab 函数句柄一无所知,但似乎理解这个想法......在 Matlab 命令窗口中,我键入:

我希望创建正确的函数句柄。接下来我该怎么做?执行以下不起作用:

0 投票
5 回答
686 浏览

java - Java中非线性方程的最大化

我想确定某个函数(类似于下一个函数)最大化的 x 值: 在此处输入图像描述

很明显,当 x = 0 时达到 A 的最大值,然后 A = 200。

我如何在 Java 中解决这个问题?

更新:很抱歉从一开始就没有说清楚。x 是一个 int,但是当 x 不是下一个示例中的上限时,我也需要一种方法来找到最大值: 在此处输入图像描述