Torchkbnufft

Latest version: v1.5.2

Safety actively analyzes 706267 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 3 of 4

0.3.3

This includes a few minor improvements that haven't been released to PyPI. This release also tests the new GitHub action that should automatically handle this.

- Documentation and package install for profiling (PR 3)
- 3D radial density compensation and stack of spirals density compensation ([f9ac098c8f122026e8e8866828cb5957118a5679](https://github.com/mmuckley/torchkbnufft/commit/f9ac098c8f122026e8e8866828cb5957118a5679))

0.3.2

This release addressed a couple of code quality items, primarily:

- Removal of various `torch.clone` commands that are no longer necessary with the general lack of in-place operations.
- Alterations to some list statements to reuse references and be more efficient.

0.3.1

Patch for documentation, spurious PyPI files.

0.3.0

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 from KbModule, which reduces __repr__ duplication.
- Minor performance improvements.

Toeplitz NUFFT
- Added ToepNufft and ToepSenseNufft 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 new calc_toep_kernel function in nufft.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.

0.2.1

Updates to KB parameters
- Previously, using KB orders other than 0 and KB widths other than 2.34 were not possible - this is no longer the case.

Updates to initialization
- Initialization has been harmonized. The code should now cleanly determine whether the input a float or a tuple for parameters such as 'order' and then check input dimensions prior to building interpolation tables.

Printing models
- __repr__ commands have been updated for all models, so it should be possible to print(ob) and get a brief summary of that object's attributes instead of a smorgasbord of PyTorch registered buffers. Examples of this have been added to the Jupyter Notebook examples.

Refactoring of nufft utilities
- nufft_utils has been moved into the nufft submodule where it more belongs. Currently torchkbnufft itself will import this and alias it to the old nufft_utils location, but eventually this will no longer be the case.

0.2.0

Speed updates
- Increased adjoint speed in normal operation mode by a factor of 2 (CPU) and 6 (GPU). This was primarily accomplished by replacing calls to torch.bincount with index_add_ and index_put_.
- Added a script for profiling on new systems as well as measured profiles for a workstation with a Xeon E5-1620 CPU and an Nvidia GTX 1080 GPU.
- Removed support for matadj=True and coil_broadcast=True. Coil broadcasting is now done by default. Matrix adjoints for normal operations are no longer necessary with index_add_ and index_put_. Code using these operations will receive deprecation warnings.

Documentation updates
- Adjusted all docstrings to conform with Google style. This mostly involved removing variable names from the "Returns" fields.
- Created html-based API on readthedocs.io.

Testing updates
- Added pytest functions to verify performance across devices (currently CPU and CUDA). This will be necessary going forward as the adjoint operations use different parts of the PyTorch API.
- Added tests for backwards pass matching adjoint layers.

Page 3 of 4

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.