julia - Julia LsqFit 给出了错误的结果,而我可以使用 scipy.optimize 得到正确的结果(几乎等于 exp 结果)
问题描述
我尝试使用 Julia 使用饱和磁化接近定律来拟合磁化与磁场,但无法获得正确的结果。参数 p[2] 显示的值与我假设的值相同。而当我尝试使用 scipy 时,我可以得到很好的结果。
using DataFrames, CSV
df=CSV.read("X00.csv"; delim=",")
xdata=df[!, 1]
ydata=df[!, 2]
using Plots
using LsqFit
@. model(x, p) = p[1]*(1-(p[2]/x)-(p[4]*p[3]^2 /(p[3]^2 *x^2)))
p0=[97.0, 231.0, 250000.0, 0.076]
fit = curve_fit(model, xdata, ydata, p0)
beta_fit = fit.param
yfit = model(xdata, fit.param)
println(beta_fit)
scatter(xdata, ydata, label="data", grid=false)
plot!(xdata, yfit, label="model", grid=false)
如何克服这一点?
解决方案
推荐阅读
- php - PHP:我想计算文本文件中特定单词数的出现次数
- selenium - Selenium 独立服务器给出错误“DefaultRemoteProxy 未知版本,连接到 10.0.2.15:5566 [/10.0.2.15] 失败:连接超时”
- javascript - 制作可自定义的键盘快捷键 chrome 扩展
- unity3d - Unity - 为新创建的游戏对象提供参数
- javascript - Electron 自定义 `window.prompt()` (自定义,因为不支持提示)
- objective-c - 突出显示带有发件人标签的按钮
- python - 来自函数的 TensorFlow 占位符
- python - 过滤 ID 相邻的 SQL 元素
- python - 无法将文本翻译成单元格内的其他语言或 pptx 中的某些表格
- bash - 当使用“WHENEVER SQLERROR EXIT 1”时,为什么 Sqlplus bash 脚本不返回 ORA-02291 完整性约束的错误?