Toeplitz NUFFT, code harmonization
This update adds the Toeplitz NUFFT, a new module that can execute a sequence of forward and backward NUFFTs as much as 80 times faster than a sequence of forward and adjoint NUFFT calls. The update also includes code harmonization and better use of inheritance.
Code harmonization
- Refactored interpolation code to reduce duplication across subroutines.
- Changed testing framework to use fixtures instead of globals.
- Added new
KbModule
class for__repr__
statements. All classes now inherit fromKbModule
, which reduces__repr__
duplication. - Minor performance improvements.
Toeplitz NUFFT
- Added
ToepNufft
andToepSenseNufft
classes. These can be used to execute forward/backward NUFFT operations with an FFT filter and no interpolations. The filter can be calculated using the newcalc_toep_kernel
function innufft.toep_functions
. - The new Toeplitz Nufft routine can be used to execute forward/backward NUFFTs as much as 80 times faster than a sequence of forward and backward NUFFT calls.