朱莉娅。指定fzero的容差(在Roots包中)

时间:2015-10-09 10:36:46

标签: julia

在给定范围内使用fzero时,我似乎无法找到指定收敛容差级别的选项,例如

的内容
wageresult= fzero(fbargsolve, wageguess0, [wagemin,wagemax], ftol=1e-5,xtol=1e-5)

有什么想法吗?

当我以下面指定的方式使用它时,我会收到收敛失败,我认为是因为我的目的默认容差过于严格:

wageresult= fzero(fbargsolve, wageguess0, [wagemin,wagemax])

错误消息是“收敛失败(收敛前超过15次迭代”)“

1 个答案:

答案 0 :(得分:1)

在括号内使用fzero初始猜测时,控制收敛的唯一选项是maxevalxtolmaxeval控制最大迭代次数并且它的默认值为15,您可以将其设置为更高的值。 xtol 可接受的错误,默认为zero(float(a)),表示机器精度,因此它已经尽可能低

另一种方法是使用fzeros函数,它会尝试在f [a,b]的{​​{1}} fzeros no_pts=251 ftol=10*eps() {{1} } 子间隔计数reltol=0.0struts.xml

Roots v0.1.18