comparison src/Grids/grid.jl @ 1343:fa3695f634de refactor/grids

More clean up of todos and notes
author Jonatan Werpers <jonatan@werpers.com>
date Mon, 15 May 2023 22:37:33 +0200
parents c0c1189c5f2e
children 760a4a1ec4b7
comparison
equal deleted inserted replaced
1342:c0c1189c5f2e 1343:fa3695f634de
80 80
81 Lazy evaluation `f` on the grid. `f` can either be on the form `f(x,y,...)` 81 Lazy evaluation `f` on the grid. `f` can either be on the form `f(x,y,...)`
82 with each coordinate as an argument, or on the form `f(x̄)` taking a 82 with each coordinate as an argument, or on the form `f(x̄)` taking a
83 coordinate vector. 83 coordinate vector.
84 84
85 TODO: Mention map(f,g) if you want a concrete array 85 If the goal is a concrete array `map(f,g)` can be used instead.
86 """ 86 """
87 eval_on(g::Grid, f) = eval_on(g, f, Base.IteratorSize(g)) # TBD: Borde f vara först som i alla map, sum, och dylikt 87 eval_on(g::Grid, f) = eval_on(g, f, Base.IteratorSize(g))
88 function eval_on(g::Grid, f, ::Base.HasShape) 88 function eval_on(g::Grid, f, ::Base.HasShape)
89 if hasmethod(f, (Any,)) 89 if hasmethod(f, (Any,))
90 return LazyTensors.LazyFunctionArray((I...)->f(g[I...]), size(g)) 90 return LazyTensors.LazyFunctionArray((I...)->f(g[I...]), size(g))
91 else 91 else
92 return LazyTensors.LazyFunctionArray((I...)->f(g[I...]...), size(g)) 92 return LazyTensors.LazyFunctionArray((I...)->f(g[I...]...), size(g))