gpt4 book ai didi

Julia 使用符号变量在循环中更改名称

转载 作者:行者123 更新时间:2023-12-01 17:20:41 24 4
gpt4 key购买 nike

我想在循环的每次迭代中更改符号变量的名称,然后使用这些符号变量求解方程,例如:

using SymPy
for i in 1:5
p{i} = symbols("p"{i}, real=true,positive=true)
solve(p{i}^2-i^2)
end

所以我希望创建一系列标量符号变量(因为我认为不可能创建向量值符号变量),每个变量都有不同的名称 - p1、p2、p3、p4 和 p5 -然后在方程求解器中使用它们。然而,根据 matlab,大括号符号似乎不适用于 Julia 中的命名。快速谷歌没有给出任何明显的答案。有什么想法吗?

最佳答案

在 julia 和大多数计算机语言中,如果您发现自己需要一堆数字变量 x1, x2, x3, ... ,您可能需要一个数组。在 Julia 中,这可能看起来像这样,(但请注意,我不知道我在用 SymPy 做什么)

using SymPy
pp=Sym[]
for i in 1:5
p = symbols("x$i", real=true,positive=true)
push!(pp,p)
solve(pp[i]^2-i^2)
end

这里我们从 pp 开始,但类型正确;我们将每个符号推到 pp 的末尾;最后我们可以用pp[i]找出pp的第i项,这几乎是你的代码,但没有shift键。

关于Julia 使用符号变量在循环中更改名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30999532/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com