This version is 100% backwards compatible with STIR 6.0 for the user, except for the bug-fix in the RDP (see below).
This version adds capability of using Parallelproj (CPU and GPU versions) for TOF data. In addition, the list-mode objective function has several improvements, including speed-up by using multi-threading if caching was not enabled.
Of course, there is also the usual code-cleanup and improvements to the documentation.
This release contains mainly code written by Nicole Jurjew (UCL) and Kris Thielemans (UCL).
PoissonLogLikelihoodWithLinearModelForMeanAndListModeDataWithProjMatrixByBin
can now compute the value
as well as accumulate_Hessian_times_input
.
GeneralisedObjectiveFunction
has 2 new members to compute the full gradient
(compute_gradient
and compute_gradient_without_penalty
). Previously,
only subset gradients were available.
PoissonLogLikelihoodWithLinearModelForMeanAndListModeDataWithProjMatrixByBin
now computes the gradient
multi-threaded (if OpenMP is enabled), even if caching to file of the list-mode file is not enabled.
CMAKE_CXX_BYTE_ORDER
(available since CMake 3.20). This could potentially affect reading of list-mode data
(which would otherwise be garbled).
See our issue tracker.
GeometryBlocksOnCylindrical
scanner configuration, which may lead to an
error being raised, while previously the code silently proceeded.
PoissonLogLikelihoodWithLinearModelForMeanAndProjData
had a (minor?) problem with TOF data
that when computing the gradient, the normalisation object was not set-up with the TOF data,
but non-TOF instead. This did not happen in our normal reconstruction code, and would have thrown an error
if it occured.
root-config
.
accumulate_Hessian_times_input