【问题标题】:Julia ODE package example failJulia ODE 包示例失败
【发布时间】:2014-10-19 21:21:44
【问题描述】:

我想使用 Julia ODE 包。我在网上看到了这个例子:

tspan = [0 2*pi()] y_0 = [1 0]' F = (t, y) -> [0 1; -1 0]*y ode23(F, tspan, y_0)

(来源:https://github.com/JuliaLang/julia/blob/84757050b26ed549b9aee77ac7c204d9963285a2/j/ode.j

但当我运行它时,我收到以下错误:

ERROR: DimensionMismatch("*")
 in generic_matmatmul! at linalg/matmul.jl:372
 in * at linalg/matmul.jl:117
 in anonymous at none:1
 in ode23 at /home/rm/.julia/v0.4/ODE/src/ODE.jl:67

一个简单的例子会有所帮助。

【问题讨论】:

    标签: julia ode


    【解决方案1】:

    您链接到的示例来自 2011 年。代码至少有两个错误。一、调用pi()不正确; pi 现在是一个常数。第二个是将代码从 base 移至 ODE 包。可以在以下位置看到一个工作示例(使用 Julia 0.4):

    https://github.com/JuliaLang/ODE.jl/blob/master/src/ODE.jl#L36-39

    using ODE
    tspan = [0, 2*pi]
    y0 = [1, 0]
    F = (t, y) -> [0 1; -1 0]*y
    ode23(F, tspan, y0)
    

    请注意,我对求解这些类型的方程一无所知,我只知道将事物从基础转移到单独的包中的一些历史。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-02-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-19
      • 1970-01-01
      • 2012-02-18
      相关资源
      最近更新 更多