I tried to convert the docstring example into a proper testcase because aggregate and interpolate are not yet tested.
The code in the docstring goes through but on compute I get the following error.
a = [i+j+k for i in 1:4, j in 1:5, k in 1:6]
#source coordinates
x = 5.0:5.0:20.0
y = 2.0:3.0:14.0
#target coordinates
x2 = 5.0:0.5:20.0
y2 = 1.5:1.0:14.5
r = interpolate_diskarray(a,(1=>(x,x2),2=>(y,y2)))
compute(r)
ERROR: BoundsError: attempt to access 4×5×6 Array{Int64, 3} at index [1:4, 0:6, 1:6]
Stacktrace:
[1] throw_boundserror(A::Array{Int64, 3}, I::Tuple{UnitRange{Int64}, UnitRange{Int64}, UnitRange{Int64}})
@ Base ./essentials.jl:15
[2] checkbounds
@ ./abstractarray.jl:699 [inlined]
[3] _getindex
@ ./multidimensional.jl:955 [inlined]
[4] getindex
@ ./abstractarray.jl:1342 [inlined]
[5] read_range(r::Tuple{…}, ia::InputArray{…}, buffer::Array{…})
@ DiskArrayEngine ~/Documents/SindbadAnywhere/dev/DiskArrayEngine/src/buffers.jl:134
[6] _broadcast_getindex_evalf(::typeof(DiskArrayEngine.read_range), ::Tuple{…}, ::InputArray{…}, ::Array{…})
@ Base.Broadcast ./broadcast.jl:699
[7] _broadcast_getindex(bc::Base.Broadcast.Broadcasted{…}, I::Int64)
@ Base.Broadcast ./broadcast.jl:672
[8] (::Base.Broadcast.var"#copy##0#copy##1"{Base.Broadcast.Broadcasted{…}})(k::Int64)
@ Base.Broadcast ./broadcast.jl:1124
[9] ntuple(f::Base.Broadcast.var"#copy##0#copy##1"{Base.Broadcast.Broadcasted{…}}, ::Val{3})
@ Base ./ntuple.jl:52
[10] copy(bc::Base.Broadcast.Broadcasted{Base.Broadcast.Style{…}, Nothing, typeof(DiskArrayEngine.read_range), Tuple{…}})
@ Base.Broadcast ./broadcast.jl:1124
[11] materialize
@ ./broadcast.jl:894 [inlined]
[12] default_loopbody(inow::Tuple{…}, op::GMDWop{…}, inbuffers_pure::Tuple{…}, outbuffers::Tuple{…}, threaded::Bool, outars::Tuple{…}, cb::Tuple{…}, runfilter::Tuple{}, piddir::Nothing)
@ DiskArrayEngine ~/Documents/SindbadAnywhere/dev/DiskArrayEngine/src/runner.jl:174
[13] run_loop(::DiskArrayEngine.LocalRunner, op::GMDWop{…}, inbuffers_pure::Tuple{…}, outbuffers::Tuple{…}, threaded::Bool, outars::Tuple{…}, loopranges::DiskArrayEngine.ProductArray{…}, cb::Tuple{…}, runfilter::Tuple{}; groupspecs::Nothing)
@ DiskArrayEngine ~/Documents/SindbadAnywhere/dev/DiskArrayEngine/src/runner.jl:186
[14] run_loop(runner::DiskArrayEngine.LocalRunner, loopranges::DiskArrayEngine.ProductArray{…}; groupspecs::Nothing)
@ DiskArrayEngine ~/Documents/SindbadAnywhere/dev/DiskArrayEngine/src/runner.jl:166
[15] run_loop
@ ~/Documents/SindbadAnywhere/dev/DiskArrayEngine/src/runner.jl:165 [inlined]
[16] run_group(::DiskArrayEngine.DiskEngineScheduler{…}, ::Nothing)
@ DiskArrayEngine ~/Documents/SindbadAnywhere/dev/DiskArrayEngine/src/distribute.jl:127
[17] run(runner::DiskArrayEngine.LocalRunner)
@ DiskArrayEngine ~/Documents/SindbadAnywhere/dev/DiskArrayEngine/src/distribute.jl:153
[18] compute!(ret::Nothing, a::DiskArrayEngine.GMWOPResult{…}; runner::Type{…}, threaded::Bool, max_cache::Float64, lr::Nothing, kwargs::@Kwargs{})
@ DiskArrayEngine ~/Documents/SindbadAnywhere/dev/DiskArrayEngine/src/diskarrayresults.jl:67
[19] #compute#194
@ ~/Documents/SindbadAnywhere/dev/DiskArrayEngine/src/diskarrayresults.jl:71 [inlined]
[20] compute(a::DiskArrayEngine.GMWOPResult{Union{…}, 3, GMDWop{…}, DiskArrays.Unchunked{…}, 1})
@ DiskArrayEngine ~/Documents/SindbadAnywhere/dev/DiskArrayEngine/src/diskarrayresults.jl:70
[21] top-level scope
@ REPL[14]:1
Some type information was truncated. Use `show(err)` to see complete types.
I tried to convert the docstring example into a proper testcase because aggregate and interpolate are not yet tested.
The code in the docstring goes through but on compute I get the following error.