朱莉娅是否有办法解决未知的variables

在朱莉娅有一个函数类似Excel中的求解器函数,我可以提供和方程,它会解决未知的variables? 如果没有,是否有人知道Excel的解算器function背后的math? 我不希望有人解决这个问题,但是如果有帮助:

价格=(Earnings_1 /(1 + r)^ 1)+(Earnings_2 /(1 + r)^ 2)++(Earnings_3 /(1 + r)^ 3)+(Earnings_4 /(1 + r) +(Earnings_5 /(1 + r)^ 5)+(((Earnings_5) (RiskFreeRate))/((1 + r)^ 5) (1-RiskFreeRate))

已知variables是:价格,所有收入和RiskFreeRate。 我只是想弄清楚如何解决r。

把它写成一个expression式f(r) = 0 ,把Price减去另一边。 现在这是一个查找问题。 如果你只有一个你正在解决的variables(看起来是这样),那么Roots.jl是一个不错的select。

 fzero(f, a::Real, b::Real) 

将searchab之间的解决scheme,例如,当您不知道开始的范围并且仅给出初始条件时,文档对algorithm有更多的select。

另外,当你知道你开始接近多维根时,Sundials.jl中的KINSOL是很好的。 对于多维和需要一些健壮的初始条件,我build议使用NLsolve.jl 。

没有什么不可以的。 根本发现本身就是一门科学。

幸运的是,你的函数对r有一个parsing一阶导数。 这意味着你可以使用牛顿拉夫森,这将是非常稳定的function。

我相信你知道你的函数在r = -1左右时performance不好。