20 #ifndef __stir_recon_buildblock_ProjMatrixByBinUsingInterpolation__ 21 #define __stir_recon_buildblock_ProjMatrixByBinUsingInterpolation__ 31 template <
int num_dimensions,
typename elemT>
32 class DiscretisedDensity;
63 void set_up(
const shared_ptr<const ProjDataInfo>& proj_data_info_ptr,
70 bool do_symmetry_90degrees_min_phi;
71 bool do_symmetry_180degrees_min_phi;
72 bool do_symmetry_swap_segment;
73 bool do_symmetry_swap_s;
74 bool do_symmetry_shift_z;
81 shared_ptr<const ProjDataInfo> proj_data_info_ptr;
104 class JacobianForIntBP
116 float backprojection_normalisation;
118 bool use_exact_Jacobian_now;
122 JacobianForIntBP() {}
125 float operator()(
const float delta,
const float s)
const 128 if (use_exact_Jacobian_now)
129 tmp = 4 * (R2 - s * s);
134 return (arccor ? tmp : pow(tmp, 1.5F)) / pow(tmp + ring_spacing2 * delta * delta, 1.5F) * backprojection_normalisation;
138 JacobianForIntBP jacobian;
139 bool use_piecewise_linear_interpolation_now;
140 bool use_exact_Jacobian_now;
144 void set_defaults()
override;
145 void initialise_keymap()
override;
146 bool post_processing()
override;
151 void find_tang_ax_pos_diff(
float& tang_pos_diff,
static const char *const registered_name
Name which will be used when parsing a ProjMatrixByBin object.
Definition: ProjMatrixByBinUsingInterpolation.h:55
Import of std::shared_ptr, std::dynamic_pointer_cast and std::static_pointer_cast (or corresponding b...
Declaration of class stir::ProjDataInfoCylindrical.
declaration of stir::ProjMatrixByBin and its helpers classes
A class for storing coordinates and value of a single projection bin.
Definition: Bin.h:48
Parent class for all leaves in a RegisteredObject hierarchy that do parsing of parameter files...
Definition: RegisteredParsingObject.h:77
This stores the non-zero projection matrix elements for every 'densel' that contributes to a given bi...
Definition: ProjMatrixElemsForOneBin.h:68
projection data info for data corresponding to a 'cylindrical' sampling.
Definition: ProjDataInfoCylindrical.h:48
Computes projection matrix elements for VoxelsOnCartesianGrid images by using an interpolation model...
Definition: ProjMatrixByBinUsingInterpolation.h:50
defines the stir::CartesianCoordinate3D<coordT> class
Declaration of class stir::RegisteredParsingObject.