algorithm - 用 Julia 求解非线性方程

标签 algorithm dynamic-programming julia

我正在尝试用 Julia 求解非线性方程,

我有以下非线性方程

Nfoc(k,k1,z,n)=(1-α)*exp(z)*(k/n)^α/(exp(z)*(k^α)*(n^(1-α))+k*(1-δ)-k1) - A/(1-n)

我有一个 k、k1 和 z 值的网格,我试图通过使用此循环找到 x 的值,这些值是每个 k、k1 和 z 的该方程的根:

MatrixN=zeros(nkk,M,nkk)

for i=1:nkk,j=1:M

  for i2=1:nkk
    MatrixN[i,j,i2]=roots(Nfoc[K[i],K[i2],z(j),n])
  end
end

但是,很明显,该命令无法正常运行。

如果能以不太技术性的方式提供任何帮助,我将不胜感激!

最佳答案

我没有足够的知识来处理您的用例,但总的来说,找到参数函数根的一种方法可能是:

using FastAnonymous # Creating efficient "anonymous functions" in Julia
using Roots
f(x,k,k1,z,n) = exp(x) - x^4 + k + k1 + z + n
function f_gen(k,k1,z,n)
    @anon x -> f(x,k,k1,z,n) 
end
fzero(f_gen(0,0,0,0), 1) # => finds x so f(x,0,0,0,0) = 0 using a derivative free method

关于algorithm - 用 Julia 求解非线性方程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37286697/

相关文章:

javascript - 对列表进行排序和删除重复项的最有效算法?

python - 如何将和转换为二进制

algorithm - 背包任务中所有组合的数量

algorithm - 有效括号的数量

julia - 在 Julia 中以特定格式解压二进制数据

dataframe - 在 julia-0.5 中将基本数学运算符与 Julia Nullables 结合使用

algorithm - 如何在删除/添加/更新元素后连续检查数组是否已排序

java - 改进循环赛以在不同的 table 上进行比赛

algorithm - 如何在DP表中实现这个递归算法?

dataframe - 在 Julia Juno 中查看类似函数