This is the update to using FLoops.jl. There are some breaking changes:
domain_points and image_points for SampledBoxMaps now return points within the box. The caller must ensure that this holds, eg by using the new convenience functions center(b::Box) and vertices(b::Box), also rescale(center, radius, points) which returns a generator that rescales points within [-1,1]^N to be within Box(center, radius). Constructors such as BoxMap, PointDiscretizedMap, AdaptiveBoxMap use these functions.
map_boxes now uses @floop. Every boxset.set must implement a SplittablesBase.halve method. The base julia Set has this, and methods for OrderedSet, BitSet will be added in the next PR through SplitOrderedCollections.jl
There is a temporary working TransferOperator for gpu boxmaps, but it is not very elegant or efficient. The "real" gpu TransferOperator method will be added in the next PR, which is the TransferOperator refactor.
This is the update to using FLoops.jl. There are some breaking changes:
domain_points
andimage_points
forSampledBoxMap
s now return points within the box. The caller must ensure that this holds, eg by using the new convenience functionscenter(b::Box)
andvertices(b::Box)
, alsorescale(center, radius, points)
which returns a generator that rescales points within[-1,1]^N
to be withinBox(center, radius)
. Constructors such asBoxMap
,PointDiscretizedMap
,AdaptiveBoxMap
use these functions.map_boxes
now uses@floop
. Everyboxset.set
must implement aSplittablesBase.halve
method. The base juliaSet
has this, and methods forOrderedSet
,BitSet
will be added in the next PR through SplitOrderedCollections.jlTransferOperator
for gpu boxmaps, but it is not very elegant or efficient. The "real" gpuTransferOperator
method will be added in the next PR, which is theTransferOperator
refactor.