Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
By comparison with #34, this is probably a better approach: rather than defining a new boundary condition
Interior
and then making the indexing rules treat padding differently for this condition, this PR adds apad
parameter toBSplineInterpolation
: for instance,pad=0
for anything other thanQuadratic
, for which it is typically 1 unless (1) usingReflect
or (2) usinginterpolate!
. The code generation uses this parameter to compute appropriate index offsets.The first commit in this PR also improves the type-stability (and adds tests for it) of several key functions. Also, I think the
size
function was broken (it included the consequences of padding, which I assume is not what you wanted?); this is fixed in the 2nd commit by exploiting the newpad
parameter.