Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • 10:02
    fredrikekre commented #529
  • 10:01
    ChrisRackauckas commented #529
  • 10:00
    fredrikekre commented #529
  • 10:00
    fredrikekre commented #529
  • 09:59
    ChrisRackauckas commented #529
  • 09:57
    fredrikekre commented #529
  • 09:56
    ChrisRackauckas commented #529
  • 09:30
    mortenpi commented #529
  • 09:29
    fredrikekre commented #529
  • 09:28
    mortenpi commented #529
  • 09:26

    ChrisRackauckas on master

    Update README.md (compare)

  • 09:26
    ChrisRackauckas commented #529
  • 09:26
    ChrisRackauckas closed #529
  • 09:26
    ChrisRackauckas commented #529
  • 09:25
    fredrikekre commented #529
  • 09:24
    mortenpi commented #529
  • 09:23
    ChrisRackauckas edited #529
  • 09:23
    ChrisRackauckas commented #529
  • 09:22

    ChrisRackauckas on master

    Update README.md (compare)

  • 09:14
    ChrisRackauckas opened #529
Christopher Rackauckas
@ChrisRackauckas
Though Interval{Float64} would be faster for small calculations, Interval{BigFloat} would do better than ArbReals if you need 500+ bits of accuracy.
But in the middle, 64-~500 bits, ArbReals is the way to go.
I kow Sanders and Benet have been on the emails with Jeffrey Sarnoff on ArbFloats/ArbReals, so I wonder if that's why.
Felix Henneke
@fhenneke
I might be mistaken, but should the name fehlberg in runge-kutta-fehlberg not be spelled with an E instead of a U?
Christopher Rackauckas
@ChrisRackauckas
Yes.
Where's do I have the error?
Felix Henneke
@fhenneke
everywhere? e.g. on the first page of the documentation and in the ode_tableaus.jl in the source code
Christopher Rackauckas
@ChrisRackauckas
oh...
:worried:
Thanks for letting me know!
Felix Henneke
@fhenneke
btw: keep up the good work! :)
Christopher Rackauckas
@ChrisRackauckas
Thanks!
Romain Veltz
@rveltz
HI,
I tried the simple code
'using DifferentialEquations

function vanDerPolExample(u₀=[0,sqrt(3)])
f1(u,t) = (1-u[2].^2)*u[1] - u[2]
f2(u,t) = u[1]
f(u,t) = [f1(u,t);f2(u,t)]
return(ODEProblem(f,u₀))
end
prob = vanDerPolExample()
Δt = 1//2^(4) #The initial timestepping size. It will automatically assigned if not given.
tspan = [0,20] # The timespan. This is the default if not given.
sol = solve(prob::ODEProblem,tspan,Δt=Δt,alg=:RK4)'

but it gives the error (line 12 is the solve):

ERROR: LoadError: BoundsError
in getindex at ./number.jl:21 [inlined]
in (::#f1#10)(::Rational{Int64}, ::Array{Float64,1}) at /Users/rveltz/Downloads/ode.jl:4
in (::#f#12{#f1#10,#f2#11})(::Rational{Int64}, ::Array{Float64,1}) at /Users/rveltz/Downloads/ode.jl:6
in (::DifferentialEquations.##500#507{DifferentialEquations.ODEProblem{Array{Float64,1},Float64}})(::Rational{Int64}, ::Array{Float64,1}, ::Array{Float64,1}) at /Users/rveltz/.julia/v0.5/DifferentialEquations/src/ode/ode_solve.jl:79
in ode_solve(::DifferentialEquations.ODEIntegrator{:RK4,Array{Float64,1},Float64,2,Rational{Int64}}) at /Users/rveltz/.julia/v0.5/DifferentialEquations/src/ode/ode_integrators.jl:376
in #solve#499(::Array{Any,1}, ::Function, ::DifferentialEquations.ODEProblem{Array{Float64,1},Float64}, ::Array{Int64,1}) at /Users/rveltz/.julia/v0.5/DifferentialEquations/src/ode/ode_solve.jl:134
in (::DifferentialEquations.#kw##solve)(::Array{Any,1}, ::DifferentialEquations.#solve, ::DifferentialEquations.ODEProblem{Array{Float64,1},Float64}, ::Array{Int64,1}) at ./<missing>:0
in include_from_node1(::String) at ./loading.jl:426
in include_from_node1(::String) at /Applications/Julia-0.5.app/Contents/Resources/julia/lib/julia/sys.dylib:?
while loading /Users/rveltz/Downloads/ode.jl, in expression starting on line 12

Do you have any idea?

Thank you,



Christopher Rackauckas
@ChrisRackauckas
Are you on master? Then the API changed to (t,u) and (t,u,du) to match ODE.jl, ODEInterface.jl, and Sundials.jl. IF you're not on master, than it's okay.
Christopher Rackauckas
@ChrisRackauckas
You may want to look at the updated docs if you're on master (/ the new version is coming out). That's pretty much the only user facing change.
Christopher Rackauckas
@ChrisRackauckas
But that's gotta be it: the error happened on 376 of ode_integrators which is just f(t,u,k₁), which is just k₁[:]=f(t,u), so the error is inside the function call, and it's likely erroring because if u and t are flip then there's no t[1].
Romain Veltz
@rveltz
That was it! The inplace modification is still available then?
Christopher Rackauckas
@ChrisRackauckas
Yes. It's (t,u,du). Julia usually has the in-place moded variable first, but all the Fortran codes that we have wrapped have them last. So it's slightly more efficient for the Fortran codes to just have everything be (t,u,du). ODE.jl for some reason already had that ordering, so that means all DE packages (that I know of) are standardized on it now.
So it's different from the Julia standard, but at least all DE packages are the same? I'm not sure about it still, but that's mostly because of the Fortran wrappers.
Romain Veltz
@rveltz
One last thing if I may. I have trouble using sundials. Do you have a working example? I looked for linearODEExample() in your code but could not put my finger on it. Can you give me a little push please?
Christopher Rackauckas
@ChrisRackauckas
In v0.3.0 the example problems changed to prob_ode_... (since anonymous functions in the sense they are used there actually compile for full performance. Not necessary for most things, but required for the threading tests)
So it's now prob = prob_ode_linear
The docs should all be updated for that.
That needs to be updated though.
One sec on that.
Christopher Rackauckas
@ChrisRackauckas
The testing for conditional dependencies will get turned back on tonight FYI. They had to be disabled for tests to pass on v0.4 due to Travis/AppVoyer issues (but they work on v0.5)
Romain Veltz
@rveltz

When using sundials, I always get:

ERROR: UndefVarError: cvode_fulloutput not defined
in #solve#499(::Array{Any,1}, ::Function, ::DifferentialEquations.ODEProblem{Float64,Float64}, ::Array{Int64,1}) at /Users/rveltz/.julia/v0.5/DifferentialEquations/src/ode/ode_solve.jl:255
in (::DifferentialEquations.#kw##solve)(::Array{Any,1}, ::DifferentialEquations.#solve, ::DifferentialEquations.ODEProblem{Float64,Float64}, ::Array{Int64,1}) at ./<missing>:0

Christopher Rackauckas
@ChrisRackauckas

Oh, did you check the conditional deps docs? There's a PR that needs to go through, so right now it's compatible with the branch for that PR (since it's right about to merge and change everything). Either use the branch handles from alyst/Sundials.jl, i.e.

Pkg.clone("https://github.com/alyst/Sundials.jl")
Pkg.checkout("Sundials","handles")

or just wait for the PR. It's here: JuliaDiffEq/Sundials.jl#67. It should've gone through, but Travis hasn't been working and we can't merge until it does...

It'll go through whenever Travis works again. Likely within a day or so? Lots of things are changing there, but it should settle down once that PR goes through.
Romain Veltz
@rveltz
thx, i got it to work!
Christopher Rackauckas
@ChrisRackauckas
:+1: . One all of this goes through that should just happen by default. Sorry for the friction.
Chris Binz
@crbinz
This message was deleted

Hi there. I'm trying to get this package to replace ODE.jl in my code, since I really like the design of it. My first attempt results in the following error:

ERROR: LoadError: LoadError: ArgumentError: argument is not a generic function
 in methods at reflection.jl:180
 in numparameters at /Users/cbinz/.julia/v0.4/DifferentialEquations/src/general/problems.jl:460
 in call at /Users/cbinz/.julia/v0.4/DifferentialEquations/src/general/problems.jl:395
...

Here's the line that throws the error:

        p = ODEProblem( (t,y)->vopeom(t, y, sat, propOpt), x)
Chris Binz
@crbinz
am I doing something obviously wrong here?
Christopher Rackauckas
@ChrisRackauckas
@crbinz Are you on master? v0.4 is only supported on the last release because of this issue.
On v0.4, you'd want to use "generic functions" anyways because they are a lot faster. Anonymous functions (in v0.4) have a lot of overhead (they are kept as code, and don't compile). So a quick fix would be:
f(t,y) = vopeom(t, y, sat, propOpt)
p = ODEProblem(f, x)
(In v0.5 you don't have to worry about this). But if you're on Julia v0.4 with DifferentialEquations v0.3.0 this issue shouldn't be there (according to Travis and AppVoyer?).
Chris Binz
@crbinz
Thanks, that helped. I think I was a version behind, probably
Christopher Rackauckas
@ChrisRackauckas
No problem.
Christopher Rackauckas
@ChrisRackauckas
@/all Hello all. This chatroom will be deprecated. Please use the shared JuliaDiffEq chat for further discussions. Thanks! https://gitter.im/JuliaDiffEq/Lobby
fuying
@fuyingfuying
Hello, Thanks for your wonderful projects, I like DifferentialEquations.jl very much, I'm a newer to julia and DifferentialEquations.jl, but i want to use julia, DifferentialEquations, and FluxML to continue my scientific projects moving on. I have a question to ask:
Can DifferentialEquations.jl support Cudanative???
fuying
@fuyingfuying
My projects refers to Power system security analysis and prediction, as power system is generally modeled to a huge and complicated DAE. So parallel computing is necessary
Christopher Rackauckas
@ChrisRackauckas
Hey, this is the wrong channel. This is our older channel. Our current channel is https://gitter.im/JuliaDiffEq/Lobby

Can DifferentialEquations.jl support Cudanative???

Yes it did in v0.6, but we do need to fix it.

Basically, the broadcast changes are going to be a bit complicated to unravel with some of the setups
Christopher Rackauckas
@ChrisRackauckas
@fuyingfuying
fuying
@fuyingfuying
@ChrisRackauckas thanks very much