4

私はジュリアには新しく、現在は微分方程式を解く方法を学んでいます。私はChristopher Rackauckasの単純な事前作成コードを実行しようとしましたが、エラーが発生しました。コードはhereです。また、私はそれをここに書きます:DifferentialEquations.jlのトラブル

using DifferentialEquations 
alpha = 0.5 #Setting alpha to 1/2 
f(y,t) = alpha*y 
u0 = 1.5 
prob = ODEProblem(f,u0) 
timespan = [0,1] # Solve from time = 0 to time = 1 
sol = solve(prob,timespan) # Solves the ODE 
using Plots 
plot(sol) # Plots the solution using Plots.jl 

そして、私はこのようなルックスを取得していますエラー:

LoadError: MethodError: no methof matching DiffEqBase.ODEProblem{uType,tType,isinplace,FC;MM}(::#f, ::Float64)

を私はまた、他の同様のコードを実行しようとさえDifferentialEquations.jlの-packageを取り除き、それを再インストールしましたが、何も変更されませんでした。

誰かが私が間違っているかもしれないアイデアを経験したことがありますか?

答えて

5

ブログの投稿はかなり前からの問題です。または、少なくとも、DifferentialEquations 1.0にはこの部分でいくつかの大きな変更がありました。この例を最新のバージョンに修正するthe tutorial insteadを使用してください。解決策は次のとおりです:

using DifferentialEquations 
alpha = 0.5 #Setting alpha to 1/2 
f(y,t) = alpha*y 
u0 = 1.5 
tspan = (0.0,1.0) # Solve from time = 0 to time = 1 
prob = ODEProblem(f,u0,tspan) 
sol = solve(prob) # Solves the ODE 
using Plots 
plot(sol) # Plots the solution using Plots.jl 

しかし、私は人々がまだその古い投稿を見ていることを知っているので、正しい構文に更新しました。

+0

ありがとう、クリス!これでコードは正常に動作します。 – maikkirapo