问题标签 [non-linear]

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

python - 用 Python 拟合多条非线性曲线

假设我们有一条曲线,其中有 n 条曲线对其形状做出贡献。在我的基本示例中,使用 NMR 峰,我定义了 3 个峰:

NMR峰拟合

在这里,我使用以下方法一次拟合这三个峰:

可以很好地适应这些峰值的代码。但是,如果我有更复杂的情况:

NMR批次峰

那么情况就不是那么容易了。我必须根据具体情况定义许多具有 1、2、3、6 或任何对总曲线有贡献的峰值的函数。

是否有任何最佳方法可以使用 scipy.optimize.curve_fit 或其他 Python 工具执行 N 曲线的拟合?

谢谢!

0 投票
0 回答
112 浏览

matlab - 非线性有限差分法的Matlab/Octave编码

尽管我阅读了算法,但我对非线性有限差分法的编码有问题。这是《数值分析》 (Burden RL, Faires JD, 2010)一书中的一个例子,第 11.4 节,第 694 页。

下面是我从书中得到的算法。我需要为此编写代码:

非线性有限差分

我成功地为线性问题编写了相同的代码(上面提到的书中的第 11.3 节):

我认为非线性也是一样的,但事实并非如此。请给我一些帮助,我真的很感激。太感谢了!

0 投票
1 回答
81 浏览

matlab - 在MATLAB中查找区间内变量的平均值

我在 MATLAB 中有一些数据。在图片上你可以看到一小部分:-

在此处输入图像描述

我感兴趣的数字是 RPM 和 Lambda。如您所见,它们既不是严格减少也不是严格增加(可以说它们是非线性的)。我想在 RPM 间隔中找到平均 Lambda 值,例如 250-500、500-750、1000-1250 等。但是我不知道如何在 MATLAB 中编写这样的代码,原因是我不知道这会发生在什么索引上,因为 RPM 数字并不是严格地减少/增加。

我也许可以将 RPM 列从最低到最高排序,然后也相应地对 Lambda 列进行排序,尽管我也不知道该怎么做。

有什么方法可以在所有数据的某个 RPM 间隔内找到平均 lambda 值?我希望我的问题足够清楚。

0 投票
1 回答
226 浏览

python - PYOMO 约束 - 对索引变量设置约束

我一直在尝试进入 python 优化,我发现 pyomo 可能是要走的路;作为学生,我有一些使用 GUROBI 的经验,但当然这不再可能,所以我必须研究开源选项。

我基本上想执行一个非线性混合整数问题,我将最小化某个比率。问题本身是在可再生能源方案中建立电力购买协议 (PPA)。根据发电量,您将不得不根据 PPA 购买或出售电力。

唯一的起始数据是世代;PPA 是主要的决策变量,但我需要其他变量。“buy”、“sell”、“b1”和“b2”在没有 PPA 值的情况下是未知的。这些是方程式:

解决问题的方程式(手动)。

使用 pyomo,我试图将问题设置为:

然后是约束;只有第一个,因为我已经收到错误:

这给了我错误:

老实说,我不知道这意味着什么。我觉得这应该是一个简单的问题,但我在语法上苦苦挣扎。我基本上必须对“Generation”中的每个单独数据应用约束,不涉及总和;所有约束都是一对一的约束设置,因此物理能量需求是有意义的。

如何设置这样的约束?

非常感谢

0 投票
0 回答
29 浏览

precision - 如何评价非线性模型的精度?

我读过一些文献提到RMSE、MAE和MSE可以用来衡量模型的准确性,标准差可以用来衡量精度。他们还将标准偏差(std,std equation)定义为预测结果与预测结果平均值的偏差的度量。我的问题是 std 因此取决于真实数据,因为如果真实数据具有高 std(例如 10),我们可以预期具有高 std(例如 10.2)的预测值将比真实数据更接近真实数据较低的(例如,5.5),那么较高的将比较低的更好。

所以看起来这个标准不是评估模型精度的合适标准。R 平方似乎可用于评估回归模型的精度(https://onlinelibrary.wiley.com/doi/pdf/10.1002/9781119449515.app1),但对于非线性模型,我不确定是否合适?

有些人使用的另一种是绝对误差的标准差。(https://stats.stackexchange.com/questions/478000/interpretation-of-standard-deviation-and-mean-value-of-mae),它可用于评估预测误差的均匀程度,但似乎已使用非常偶尔。

0 投票
1 回答
41 浏览

pde - 细胞变量*fipy中的扩散

我正在尝试解决fipy 中的以下耦合pde。我尝试了以下

但它不喜欢“f*DiffusionTerm(coeff=1, var=phi)”,我得到了错误。“TermMultiplyError:必须将项乘以 int 或 float。” 有没有办法可以实现单元变量乘以扩散项?

0 投票
2 回答
245 浏览

python - 如何在python中计算多变量非线性回归?

我正在尝试创建一个关于非线性回归的程序。我有三个参数 [R,G,B],我想获得图像上任何像素相对于我的参考颜色代码的温度。例如:

参考文件 R,G,B,温度 = [(157,158,19,300),(146,55,18,320),(136,57,22,340),(133,88,25,460),(141,105,27,500),(210,195, 3,580),(203,186,10,580),(214,195,4,600),(193,176,10,580)]

你可以在上面看到,所有的 RGB 值都是非线性变化的。现在,我使用“最小误差算法”来获得温度 wrt RGB 颜色代码,但我想获得参考文件中不存在的值(即如果我有 (155,200,40) 并且它不存在于参考文件中,我必须获得这三个代码等于哪个温度)。

以下是在给定 RGB 值的情况下选择最接近参考温度的代码:

我真的很想计算参考列表中没有出现的温度值,但是我在使用所有 RGB 值并从中计算/预测合理/准确的温度时遇到问题。

在使用 polyfit 之后,我尝试获取 1 个参数,但存在一些问题,因为每个变量对这个参数都有相同的影响。因此我无法意识到哪个颜色代码最高(即 "oneParameter = 1000 *R + 100 *G + 10 *B" ,在这种情况下,如果我有一个颜色代码为 (2,20,50) 的参数,另一个颜色代码是(2,5,200)。因此它们在“oneParameter”方程中是相等的)

我希望我能清楚地解释我的问题。我在等你的帮助!

谢谢你。

0 投票
0 回答
28 浏览

python - SciPy Curve_fit 仅适合我的非线性数据的直线

我有同样的问题,我对函数的输入有正确的顺序。但由于某种原因,它只适合我的非线性数据的线性线。我期待拟合模型中的某种曲率!我不知道如何解决这个问题。任何帮助,将不胜感激。这是我的代码:

正确的拟合应该如下所示: 预期产出

0 投票
0 回答
40 浏览

r - 在 R 中使用 gosolnp 进行非线性估计

我正在使用 gosolnp 函数估计分布的六个参数。但结果非常奇怪。

这是功能,我想估计:

也就是说,我要估计 Alpha、Sigma、Delta、Eta、Gama 和 Lambda。有时我必须修复一些参数,但 gosolnp 函数的“修复”效果不佳。

生成的样本如下:(随机)

戈索尔普:

出去:

注意参数估计不好,不知道$pars的哪些值相当于Alpha、Sigma、Delta、Eta、Gama或Lambda。

所以我想知道是否有办法知道“pars”值指的是哪个参数,使用 gosolnp 函数的“固定”的正确方法是什么,以及是否有办法改进这种估计。

0 投票
1 回答
39 浏览

classification - 特征重要性可以用来解释模型预测的“为什么以及哪个特征有贡献”?

我有一个 XGBoost(classificaion) 模型,使用 N 变量和模型的特征重要性列表,准确率约为 75%。我的问题是 - 对于给定的行和预测分数 - 我可以解释哪些特征导致 1 或 0 预测?