【发布时间】:2016-04-27 12:12:01
【问题描述】:
我有一组 (Xi,Yi) 点,应该由通过零的 3 次多项式函数拟合。
我考虑使用 MathNet.Numerics 来完成这项任务,但在 documentation 中没有看到 强制拟合函数通过原点的选项。如果不支持此选项,请建议使用最新版本 MathNet.Numerics 中包含的函数的解决方案。
【问题讨论】:
标签: curve-fitting mathnet-numerics
我有一组 (Xi,Yi) 点,应该由通过零的 3 次多项式函数拟合。
我考虑使用 MathNet.Numerics 来完成这项任务,但在 documentation 中没有看到 强制拟合函数通过原点的选项。如果不支持此选项,请建议使用最新版本 MathNet.Numerics 中包含的函数的解决方案。
【问题讨论】:
标签: curve-fitting mathnet-numerics
我假设您知道这是在 Math.Net 中拟合某些数据的方式
Func<Double, Double> MyFunc = Fit.PolynomialFunc(xDataArr, yDataArr, 3);
至于强制它通过原点,我从未见过这样的选择。我认为唯一真正的解决方案是将点 (0, 0) 放入您的数据集中并希望获得最好的结果?
您可以尝试的一些在数学上完全没有意义的方法是将点 (0, 0) 多次放入您的数据集中。
【讨论】:
Fit 几次了,我从未见过允许这种约束的东西。是的,我知道在数据中添加(0, 0) 并不会严格限制它。 // 您可能有的另一个选择是获取函数系数而不是 Func,然后根据需要修改系数?