我正在使用 gnuplot 来拟合一些数据,但是我注意到有时我的函数无法拟合。我相信这是由于undefined value
取负数的平方根而引起的。(我的理解是 gnuplot fit 无法处理复数。)
我正在使用循环批处理我的所有数据文件,这个问题导致脚本中止。
我不介意它不适合该功能 - 但脚本不应中止,因为这会使批处理的全部意义变得毫无意义,因为它在数百个数据文件 5 上失败。
我已启用set fit quiet
,但这似乎并不能解决问题。
continue
即使一次拟合失败,我如何强制 gnuplot尝试拟合下一个数据文件?
作为参考,我正在拟合的函数如下:(这不是最简单的代数形式 - 这种形式用于避免被小数除。)
f(x) = (b c) / ( [c 2.0] + c [b 2.0 - c**2.0]*exp(x/e) ) - 其中 b,c,e 是拟合参数
所以要澄清一下 - 有时拟合“收敛到 c 为负的拟合”,这导致底部平方根无法评估 - 这打破了包含 fit 命令的 for 循环 - 我怎样才能阻止拟合失败跳出循环?