-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Issues with DIVAnd under Julia 1.0.4 and onwards. #43
Comments
Hello, (in the package REPL mode): (v1.1) pkg> status Can you also run the tests on Pkg.test("DIVAnd") |
I'm using DIVAnd v2.3.1 on Julia v1.1.1 DIVAnd passes all tests. I think I was still on DIVAnd v2.3.0 on Julia v1.0.3. Again passed all tests. Also, note that I'm using the Julia pre-compiled linux x86 binaries. Anyway, I've remove the .julia folder form my home directory and reinstalled DIVAnd and all associated packages... And now I'm getting the same problem with Julia v1.0.3... Reviewing the error, it points to the part of DIVAnd_obs that deals with removing NaN values... And I know the input data contains NaNs (issues regarding interpolation near coasts). Adding some extra code to my scripts to remove the NaN values before running DIVAndrun fixes things in both Julia v1.0.3 and v1.1.1. Still, doesn't explain why I'm getting the error... |
Could you post your code or a minimum working example (failing in this case) with a subset of the data, so we can try to reproduce the issue on our machines? I guess you already tried to de-activate the velocity and the modim? Indeed DIVAnd can deal with NaN's, in fact they are replaced by zeros and a warning is issued, so that should not be an issue. |
In the last released version, there is indeed a issue when some observations are equal to NaN in DIVAnd.DIVAndrun. It is fixed in the master version which will be released soon. If you want to try the "master version" of DIVAnd, you can use: ]dev DIVAnd We only merge changes in the master version when all test pass. So it is reasonable stable. Thank you for reporting this issue. |
For your information, I just released a new version of DIVAnd where this problem should be solved. |
Okay, I've been using DIVAnd to create a new global atlas of oxygen concentration. A few months back I migrated form the matlab to julia versions. My script runs fine on Julia 1.0.3 but using Julia v1.0.4, v1.1.0 and v1.1.1 (just tried upgrading in the last few days) it instead crashes with a message MethodError: no method matching setindex_shape_check(::Float64, ::Int64). I've tried this on two different machines (one remote VM and a local compute server) with the same results.
The error (shown below) occurs somewhere in DIVAndrun (currently called as: fij, si = DIVAndrun(maski,(pmi,pni,pti),(xj,yj,tj),(xo,yo,to),resid,(lenx,leny,lent),epsilon; velocity=(ui,vi,0*ui), moddim=mdi) )...
Running several of the tests included in DIVAnd (notably DIVAnd_simple_example_big3D.jl) work fine, which would suggest it is either associated with the moddim input (mostly likely given the error complaining about int64s) or possibly the velocity field.
notably, a number of other packages got broken in the Julia v1.0 to v1.1 update...JuliaLang/julia#30374
The text was updated successfully, but these errors were encountered: