DataDrivenDiffEq dont work on 1.7.1

when doing the Quick Demonstration from GitHub - SciML/DataDrivenDiffEq.jl: Data driven modeling and automated discovery of dynamical systems for the SciML Scientific Machine Learning organization on Julia1.7.1, the programm stoped at “ddprob = ContinuousDataDrivenProblem(sol)”
given: ERROR: UndefVarError: ContinuousDataDrivenProblem not defined
all the packages are up to date
Julia v1.7.1

[2445eb08] DataDrivenDiffEq v0.5.7
[a93c6f00] DataFrames v1.3.1
[ebbdde9d] DiffEqBayes v2.26.0
[aae7a2af] DiffEqFlux v1.38.0
[0c46a032] DifferentialEquations v6.18.0
[31c24e10] Distributions v0.24.18
[61744808] DynamicalSystems v2.1.3
[587475ba] Flux v0.12.1
[961ee093] ModelingToolkit v5.26.0
[1dea7af3] OrdinaryDiffEq v5.55.1
[91a5bcdd] Plots v1.25.4
[6f49c342] RCall v0.13.12
[4c63d2b9] StatsFuns v0.9.7
[f3b207a7] StatsPlots v0.14.30
[0c5d862f] Symbolics v1.4.2
[fce5fe82] Turing v0.15.1
[3dacf901] jInv v1.0.0
[37e2e46d] LinearAlgebra

using DataDrivenDiffEq

using LinearAlgebra

using ModelingToolkit

using Plots

using OrdinaryDiffEq

using Random

using Symbolics:scalarize

function lorenz(u,p,t)

x, y, z = u

ẋ = 10.0*(y - x)

ẏ = x*(28.0-z) - y

ż = x*y - (8/3)*z

return [ẋ, ẏ, ż]

end

u0 = [1.0;0.0;0.0]

tspan = (0.0,100.0)

dt = 0.1

prob = ODEProblem(lorenz,u0,tspan)

sol = solve(prob, Tsit5(), saveat = dt, progress = true)

Start the automatic discovery

ddprob = ContinuousDataDrivenProblem(sol)

prob = DirectDataDrivenProblem(X, Y)

It may not be your exact problem here, but I notice that you have a Turing dependency. It doesn’t yet work on 1.7

1 Like

Also you say “all packages are up to date”, but the current version of DataDrivenDiffEq is 0.6.9, while your environment shows 0.5.7?

It might well be Turing that’s holding you back, as that’s at version 0.19.1 but not compatible with Julia 1.7 yet so it falls back to an older version.

1 Like

Thank you very much :grin: I am very new to Julia. I remove the Turing and reinstall the DataDrivenDiffEq. However, it still the version 0.5.7. Is there other packages hold the DataDrivenDiffEq back ? How can I update it to 0.6.9?
Here is my packages now
[324734c7] BioMASS v0.5.0
[336ed68f] CSV v0.8.5
[052768ef] CUDA v2.6.3
[2445eb08] DataDrivenDiffEq v0.5.7
[a93c6f00] DataFrames v1.3.1
[ebbdde9d] DiffEqBayes v2.26.0
[0c46a032] DifferentialEquations v6.18.0
[31c24e10] Distributions v0.24.18
[61744808] DynamicalSystems v2.1.3
[587475ba] Flux v0.12.1
[f6369f11] ForwardDiff v0.10.24
[28b8d3ca] GR v0.63.0
[7f56f5a3] LSODA v0.7.0
[961ee093] ModelingToolkit v5.26.0
[1dea7af3] OrdinaryDiffEq v5.55.1
[91a5bcdd] Plots v1.25.4
[6f49c342] RCall v0.13.12
[4c63d2b9] StatsFuns v0.9.7
[f3b207a7] StatsPlots v0.14.30
[0c5d862f] Symbolics v1.4.2
[3dacf901] jInv v1.0.0
[37e2e46d] LinearAlgebra
[9a3f8284] Random

]up

Thank you Chris! I tried the up commond, and then check the version. However it doesnt work, the version is stil the old one. But I just removed the package and reinstll it from the git repo instead of “add DataDrivenDiffEq”. The console told me that the DataDrivenDiffEq was restricted by compatibility requirements with “BioMASS”(first try) and “DiffEqBayes”(Second try). (I didnot rember these information before). I remove these two packages and the leatse version of DataDrivenDiffEq could be installed now.

[336ed68f] CSV v0.9.11
[052768ef] CUDA v3.6.3
[2445eb08] DataDrivenDiffEq v0.6.9 https://github.com/SciML/DataDrivenDiffEq.jl#master
[a93c6f00] DataFrames v1.3.1
[0c46a032] DifferentialEquations v7.0.0
[31c24e10] Distributions v0.25.37
[61744808] DynamicalSystems v2.1.5
[587475ba] Flux v0.12.8

Make sure not to just dump all your packages in the default environment, but use project specific environments to minimise version conflicts

Is there a standard way to do this (or perhaps someone can point out in the docs where it might be explained)? I do this with my python/conda environment by just creating specific environments in conda for tensorflow, etc. I assume in Julia this is done via the Pkg prompt?

https://pkgdocs.julialang.org/v1/environments/