nitorch
nitorch copied to clipboard
Add sliding boundary conditions in push/pull
Sliding boundary conditions are specific to displacement fields: they use a mixture of DCT2 and DST2 boundaries, with the DST2 dimension being different in each channel.
Here's an example in 3D:
- Channel [0] = displacement along X --> bound = (DST2, DCT2, DCT2)
- Channel [1] = displacement along Y --> bound = (DCT2, DST2, DCT2)
- Channel [2] = displacement along Z --> bound = (DCT2, DCT2, DST2)
They must be implemented in pushpull_common.cpp
, in different flavours:
- 2D and 3D generic (any interpolation order)
- 2D and 3D isotropic linear
- 2D and 3D isotropic nearest