STIR
6.2.0
|
Files | |
file | ArrayFilter2DUsingConvolution.cxx |
Implementations for class ArrayFilter2DUsingConvolution. | |
file | ArrayFilter3DUsingConvolution.cxx |
Implementations for class ArrayFilter3DUsingConvolution. | |
file | buildblock_registries.cxx |
File that registers all stir::RegisterObject children in buildblock. | |
file | ByteOrder.cxx |
This file initialises ByteOrder::native_order. | |
file | DetectorCoordinateMap.cxx |
Implementation of class stir::DetectorCoordinateMap. | |
file | ExamData.cxx |
implementation of stir::ExamData | |
file | ExamInfo.cxx |
implementation of stir::ExamInfo | |
file | GatedDiscretisedDensity.cxx |
Implementation of class stir::GatedDiscretisedDensity. | |
file | GeneralisedPoissonNoiseGenerator.cxx |
Implements stir::GeneralisedPoissonNoiseGenerator. | |
file | interfile_keyword_functions.cxx |
Implementations for stir::standardise_interfile_keyword. | |
file | KeyParser.cxx |
Implementations for class stir::KeyParser. | |
file | line.cxx |
Implementations for class stir::Line. | |
file | ML_norm.cxx |
utilities for finding normalisation factors using an ML approach | |
file | num_threads.cxx |
Implementation of functions related to setting/getting the number of threads. | |
file | overlap_interpolate.cxx |
Implementation of stir::overlap_interpolate. | |
file | ParsingObject.cxx |
Non-linline implementations for class stir::ParsingObject. | |
file | PatientPosition.cxx |
Implementations of class stir::PatientPosition. | |
file | recon_array_functions.cxx |
implementations for functions declared in recon_array_functions.h | |
file | Scanner.cxx |
Implementations for class stir::Scanner. | |
file | TimeFrameDefinitions.cxx |
Implementation of class stir::TimeFrameDefinitions. | |
file | TimeGateDefinitions.cxx |
Implementation of class stir::TimeGateDefinitions. | |
file | Verbosity.cxx |
Declaration of class stir::Verbosity. | |
file | zoom.cxx |
Implementations of the stir::zoom functions. | |
file | AbsTimeIntervalFromDynamicData.cxx |
Declaration of class stir::AbsTimeIntervalFromDynamicData. | |
file | AbsTimeIntervalWithParsing.cxx |
Declaration of class stir::AbsTimeIntervalWithParsing. | |
file | DAVArrayFilter3D.cxx |
file | ModifiedInverseAveragingImageFilterAll.cxx |
Implementations for class ModifiedInverseAveragingImageFilterAll. | |
file | ModifiedInverseAverigingImageFilter.cxx |
Implementations for class ModifiedInverseAverigingImageFilter. | |
file | NonseparableSpatiallyVaryingFilters.cxx |
Implementations for class NonseparableSpatiallyVaryingFilters. | |
file | NonseparableSpatiallyVaryingFilters3D.cxx |
Implementations for class NonseparableSpatiallyVaryingFilters3D. | |
file | Quaternion.cxx |
Implementation of class Quaternion. | |
file | DataSymmetriesForDensels_PET_CartesianGrid.cxx |
non-inline implementations for class stir::DataSymmetriesForDensels_PET_CartesianGrid | |
file | ArrayFilter2DUsingConvolution.h |
Declaration of class ArrayFilter2DUsingConvolution. | |
file | ArrayFilter3DUsingConvolution.h |
Declaration of class ArrayFilter3DUsingConvolution. | |
file | assign.h |
defines the stir::assign function to assign values to different data types | |
file | ByteOrder.h |
This file declares the stir::ByteOrder class. | |
file | ByteOrderDefine.h |
Definition of STIRIsNativeByteOrderBigEndian and STIRIsNativeByteOrderLittleEndian preprocessor symbols. | |
file | common.h |
basic configuration include file | |
file | gcc.h |
configuration for gcc | |
file | visualc.h |
configuration for Visual C++ | |
file | copy_fill.h |
Declaration of stir::copy_to and stir::fill_from templates. | |
file | CPUTimer.h |
declares the stir::CPUTimer class. | |
file | CPUTimer.inl |
inline implementations for stir::CPUTimer | |
file | cross_product.h |
defines the cross-product of 2 CartesianCoordinate3D numbers | |
file | decay_correction_factor.h |
Simple functions to compute the decay correction factor. | |
file | deprecated.h |
This file declares a deprecation macro. | |
file | DetectorCoordinateMap.h |
Declaration of class stir::DetectorCoordinateMap. | |
file | error.h |
Declaration of stir::error() | |
file | ExamData.h |
declaration of stir::ExamData | |
file | ExamInfo.h |
This file declares the class stir::ExamInfo. | |
file | ExamInfo.inl |
This file declares the class stir::ExamInfo. | |
file | extract_line.h |
Declaration of stir::extract_line. | |
file | extract_line.inl |
Implementation of stir::extract_line. | |
file | FactoryRegistry.h |
Declaration of class stir::FactoryRegistry. | |
file | FactoryRegistry.inl |
Inline implementations for stir::FactoryRegistry. | |
file | FilePath.h |
Declaration of class stir::FilePath This is a class implementing basic filesytem functionality. Parts of this class were copied from Functions for filename manipulations. | |
file | FilePath.inl |
Implementations of inline functions for class stir::FilePath. | |
file | GeneralisedPoissonNoiseGenerator.h |
Declares stir::GeneralisedPoissonNoiseGenerator. | |
file | HigherPrecision.h |
class stir::HigherPrecision | |
file | ImagingModality.h |
Declaration of class stir::ImagingModality. | |
file | info.h |
Declaration of stir::info() | |
file | interfile_keyword_functions.h |
Functions useful for manipulating Interfile keywords. | |
file | interpolate.h |
declares functions for interpolation | |
file | is_null_ptr.h |
Definition of stir::is_null_ptr functions. | |
file | KeyParser.h |
Declaration of class stir::KeyParser. | |
file | line.h |
declaration of class stir::Line | |
file | linear_regression.h |
Declaration of stir::linear_regression() | |
file | linear_regression.inl |
Implementation of inline functions for stir::linear_regression() | |
file | min_positive_element.h |
Declares the stir::min_positive_element() function. | |
file | ML_norm.h |
Preliminary things for ML normalisation factor estimation. | |
file | modulo.h |
defines stir::modulo() and related functions | |
file | more_algorithms.h |
Declaration of some functions missing from std::algorithm. | |
file | more_algorithms.inl |
Implementation of some functions missing from std::algorithm. | |
file | NestedIterator.h |
This file declares the stir::NestedIterator class and supporting function objects. | |
file | NestedIterator.inl |
inline implementations for stir::NestedIterator. | |
file | NestedIteratorHelpers.h |
This file defines supporting function objects for stir::NestedIterator. | |
file | NumericInfo.h |
This file declares the class stir::NumericInfo. | |
file | NumericType.h |
This file declares the stir::NumericType class. | |
file | NumericType.inl |
Implementation of inline methods of class stir::NumericType. | |
file | ParsingObject.h |
Declaration of class stir::ParsingObject. | |
file | PatientPosition.h |
Declaration of class stir::PatientPosition. | |
file | recon_array_functions.h |
a variety of useful functions | |
file | DataSymmetriesForBins.inl |
inline implementations for class stir::DataSymmetriesForBins | |
file | DataSymmetriesForDensels.inl |
inline implementations for class stir::DataSymmetriesForDensels | |
file | RegisteredObject.h |
Declaration of class stiir::RegisteredObject. | |
file | RegisteredObject.inl |
Inline implementations for class stir::RegisteredObject. | |
file | RegisteredParsingObject.h |
Declaration of class stir::RegisteredParsingObject. | |
file | RegisteredParsingObject.inl |
Inline implementations for class stir::RegisteredParsingObject. | |
file | round.h |
Declaration of the stir::round functions. | |
file | round.inl |
Implementation of the stir::round functions. | |
file | RunTests.h |
defines the stir::RunTests class | |
file | Scanner.h |
Declaration of class stir::Scanner. | |
file | Scanner.inl |
implementation of inline functions of class Scanner | |
file | CreateTailMaskFromACFs.h |
Compute a mask for the "tails" in the sinogram. | |
file | SeparableGaussianImageFilter.h |
Declaration of class stir::SeparableGaussianImageFilter. | |
file | shared_ptr.h |
Import of std::shared_ptr, std::dynamic_pointer_cast and std::static_pointer_cast (or corresponding boost versions if STIR_USE_BOOST_SHARED_PTR is set, i.e. normally when std::shared_ptr doesn't exist) into the stir namespace. | |
file | stream.h |
Input/output of basic vector-like types to/from streams. | |
file | stream.inl |
Input/output of basic vector-like types to/from streams. | |
file | Succeeded.h |
Declaration of class stir::Succeeded. | |
file | thresholding.h |
Declaration of functions that threshold sequences (specified by iterators). | |
file | TimedBlock.h |
Class stir::TimedBlock. | |
file | TimedObject.h |
declares the stir::TimedObject class | |
file | TimedObject.inl |
inline implementations for stir::TimedObject | |
file | TimeFrameDefinitions.h |
Declaration of class stir::TimeFrameDefinitions. | |
file | TimeGateDefinitions.h |
Declaration of class stir::TimeGateDefinitions. | |
file | Timer.h |
This declares the stir::Timer class. | |
file | Timer.inl |
inline implementations for stir::Timer | |
file | TOF_conversions.h |
Implementations of inline functions for TOF time to mm. | |
file | unique_ptr.h |
Import of std::unique_ptr into the stir namespace, together with work-arounds for other compilers. | |
file | utilities.h |
This file declares various utility functions. | |
file | utilities.inl |
inline implementations for utility.h | |
file | Verbosity.h |
Declaration of class stir::Verbosity. | |
file | warning.h |
Declaration of stir::warning() | |
file | zoom.h |
This file declares various zooming functions. | |
file | ZoomOptions.h |
Declaration of class stir::ZoomOptions. | |
file | AbsTimeInterval.h |
Declaration of class stir::AbsTimeInterval. | |
file | AbsTimeIntervalFromDynamicData.h |
Declaration of class stir::AbsTimeIntervalFromDynamicData. | |
file | AbsTimeIntervalFromECAT7ACF.h |
Declaration of class stir::AbsTimeIntervalFromECAT7ACF. | |
file | AbsTimeIntervalWithParsing.h |
Declaration of class stir::AbsTimeIntervalWithParsing. | |
file | ModifiedInverseAveragingImageFilterAll.h |
This is a messy, first, attempt to design spatially varying filter Given the kernel which in this case is a lospass filter with a DC gain 1 the filter is design such that the output kernel varies depending on the k0 and k1 ( for more details on these factors look at Fessler) | |
file | ModifiedInverseAverigingArrayFilter.h |
This is a messy first attempt to design spatially varying filter Given the kernel which in this case is a lospass filter with a DC gain 1 the filter is design such that the output kernel varies depending on the k0 and k1 ( for more details on these factors look at Fessler) | |
file | ModifiedInverseAverigingImageFilter.h |
This is a messy, first, attempt to design spatially varying filter Given the kernel which in this case is a lospass filter with a DC gain 1 the filter is design such that the output kernel varies depending on the k0 and k1 ( for more details on these factors look at Fessler) | |
file | NonseparableSpatiallyVaryingFilters.h |
This is a messy, first, attempt to design spatially varying filter Given the kernel which in this case is a lospass filter with a DC gain 1 the filter is design such that the output kernel varies depending on the k0 and k1 ( for more details on these factors look at Fessler) | |
file | NonseparableSpatiallyVaryingFilters3D.h |
This is a messy, first, attempt to design spatially varying filter Given the kernel which in this case is a lospass filter with a DC gain 1 the filter is design such that the output kernel varies depending on the k0 and k1 ( for more details on these factors look at Fessler) | |
file | Quaternion.h |
Declaration of class stir::Quaternion. | |
file | Quaternion.inl |
Implementation of class stir::Quaternion. | |
file | SeparableGaussianArrayFilter.h |
file | SeparableGaussianImageFilter.h |
Declaration of class SeparableGaussianImageFilter. | |
file | SeparableLowPassArrayFilter.h |
file | SeparableLowPassImageFilter.h |
Declaration of class SeparableLowPassImageFilter. | |
file | InvertAxis.cxx |
Implementation of function stir::invert_axis. | |
file | warp_image.cxx |
Implementation of function stir::warp_image. | |
file | test_GeneralisedPoissonNoiseGenerator.cxx |
tests for the stir::GeneralisedPoissonNoiseGenerator class | |
Classes | |
class | stir::CPUTimer |
A class for measuring elapsed CPU time. More... | |
class | stir::DynamicDiscretisedDensity |
Class of multiple image frames, one for each time frame Each time frame is a DiscretisedDensity<3,float> More... | |
class | stir::DynamicProjData |
Dynamic projection data. More... | |
class | stir::ExamData |
base class for data objects such as ProjData etcProvides an ExamInfo member. More... | |
class | stir::ExamInfo |
a class for storing information about 1 exam (or scan) More... | |
class | stir::FactoryRegistry< Key, Factory, Compare > |
This class can be used to store 'factories' and their corresponding keys. It is essentially a map, but with some extra embelishments. More... | |
class | stir::FilePath |
The FilePath class. More... | |
class | stir::GeneralisedPoissonNoiseGenerator |
Generates noise realisations according to Poisson statistics but allowing for scaling. More... | |
struct | stir::HigherPrecision< T > |
Helper class to get a type with higher precision. More... | |
class | stir::ImagingModality |
Class for encoding the modality. More... | |
class | stir::KeyArgument |
A class that enumerates the possible types that can be used to store parsed values. Used (only) by KeyParser. More... | |
class | stir::map_element |
Class to store the Interfile keywords and their actions. More... | |
class | stir::KeyParser |
A class to parse Interfile headers. More... | |
class | stir::NestedIterator< topleveliterT, GetRestRangeFunctionT > |
Class NestedIterator implements a (forward) iterator using a pair of 'nested' iterators. More... | |
class | stir::NumericInfo< NUMBER > |
class NumericInfo<NUMBER> defines properties for the type NUMBER. More... | |
class | stir::NumericType |
provides names for some numeric types and methods for finding their properties. More... | |
struct | stir::TypeForNumericType< numeric_type_enum > |
A helper class that specifies the C++ type for a particular NumericType. More... | |
class | stir::ParseAndCreateFrom< OutputT, InputT, ParserT > |
template for adding keywords to a parser and creating an object More... | |
class | stir::ParsingObject |
A base class for objects that want to be able to parse parameter files. More... | |
class | stir::PatientPosition |
class | stir::SymmetryOperation |
Encodes symmetry operation on image coordinates and projection data coordinates. More... | |
class | stir::RegisteredObject< Root > |
Helper class to provide registry mechanisms to a Base classSuppose you have a hierarchy of classes with (nearly) all public functionality provided by virtual functions of the Base (here called Root ) class. The aim is then to be able to select at run-time which of the nodes will be used. More... | |
class | stir::RegisteredObjectBase |
Base class for all classes that can parse .par files (and more?)The only reason that this class exists is such that KeyParser can store different types of objects, and get some basic info from it. More... | |
class | stir::RegisteredParsingObject< Derived, Base, Parent > |
Parent class for all leaves in a RegisteredObject hierarchy that do parsing of parameter files. More... | |
class | stir::RunTests |
A base class for making test classesWith a derived class, an application could look like. More... | |
class | stir::Scanner |
A class for storing some info on the scanner. More... | |
class | stir::TimedBlock< TimerT=Timer > |
Helper class for measuring execution time of a block of code.It starts the timer in ctor, stops in dtor. Do not create unnamed instances of this class, as they are quite useless: you cannot predict destruction time. More... | |
class | stir::TimedObject |
base class for all objects which need timers. At the moment, there's only a CPU timer. More... | |
class | stir::TimeFrameDefinitions |
Class used for storing time frame durations. More... | |
class | stir::TimeGateDefinitions |
Class used for storing time gate durations. More... | |
class | stir::Timer |
A general base class for timers. Interface is like a stop watch. More... | |
class | stir::Verbosity |
This class enables the user to control the on-screen output. More... | |
class | stir::ZoomOptions |
This class enables the user to choose between different zooming optionsThe 3 possible values determine a global scale factor used for the end result: (i) preserve sum (locally) (ii) preserve values (like interpolation) (iii) preserve projections: using a STIR forward projector on the zoomed image will give (approximately) the same projections. More... | |
class | stir::AbsTimeInterval |
Base class for specifying a time interval (in absolute time) More... | |
class | stir::AbsTimeIntervalFromDynamicData |
class for specifying a time interval via a dynamic scan More... | |
class | stir::AbsTimeIntervalFromECAT7ACF |
class for specifying a time interval via an ECAT7 .a file More... | |
class | stir::AbsTimeIntervalWithParsing |
class for specifying a time interval via parsing of explicit times More... | |
class | stir::SeparableArrayFunctionObject2< num_dimensions, elemT > |
This class implements an n -dimensional ArrayFunctionObject whose operation is separable. More... | |
class | stir::ImagingModalityTests |
Test class for ImagingModality. More... | |
class | stir::ByteOrder |
This class provides member functions to find out what byte-order your machine is and to swap numbers. More... | |
Macros | |
#define | STIRIsNativeByteOrderBigEndian 1 |
A macro that is defined to 1 when the compilation is on a big endian machine, otherwise it is set to 0. More... | |
#define | STIRIsNativeByteOrderLittleEndian 0 |
A macro that is defined to 1 when the compilation is on a little endian machine, and to 0 otherwise. More... | |
#define | _PI boost::math::constants::pi<double>() |
The constant pi to high precision. More... | |
Functions | |
template<class NUMBER > | |
NUMBER | stir::square (const NUMBER &x) |
returns the square of a number, templated. More... | |
template<class coordT > | |
CartesianCoordinate3D< coordT > | stir::cross_product (const CartesianCoordinate3D< coordT > &a, const CartesianCoordinate3D< coordT > &b) |
the cross-product for 3-dimensional coordinates. More... | |
double | stir::decay_correction_factor (const double isotope_halflife, const double start_time, const double end_time) |
Compute decay-correction factor for a time frame. More... | |
double | stir::decay_correction_factor (const double isotope_halflife, const double rel_time) |
Computes the decay-correction factor for activity at a given time point. More... | |
void | stir::error (const char *const s,...) |
Print error with format string a la printf and throw exception. More... | |
template<class STRING > | |
void | stir::error (const STRING &string) |
Use this function for writing error messages and throwing an exception. More... | |
template<class elemT > | |
Array< 1, elemT > | stir::extract_line (const Array< 3, elemT > &, const BasicCoordinate< 3, int > &index, const int dimension) |
extracts a line from an array in the direction of the specified dimension. More... | |
template<class STRING > | |
void | stir::info (const STRING &string, const int verbosity_level=1) |
Use this function for writing informational messages. More... | |
template<class Value , class DataType , class CoordinatesType > | |
void | stir::linear_regression (Value &constant, Value &scale, Value &chi_square, Value &variance_of_constant, Value &variance_of_scale, Value &covariance_of_constant_with_scale, const VectorWithOffset< DataType > &measured_data, const VectorWithOffset< CoordinatesType > &coordinates, const VectorWithOffset< float > &weights, const bool use_estimated_variance=true) |
Implements standard linear regression on VectorWithOffset data. More... | |
template<class Value , class DataIter , class CoordinatesIter , class WeightsIter > | |
void | stir::linear_regression (Value &constant, Value &scale, Value &chi_square, Value &variance_of_constant, Value &variance_of_scale, Value &covariance_of_constant_with_scale, DataIter measured_data_begin, DataIter measured_data_end, CoordinatesIter coords_begin, WeightsIter weights_begin, const bool use_estimated_variance=true) |
Implements standard linear regression. More... | |
template<typename ForwardIter_t > | |
ForwardIter_t | stir::min_positive_element (ForwardIter_t start, ForwardIter_t end) |
Finds where the smallest strictly positive element occurs. More... | |
template<class iterT > | |
iterT | stir::abs_max_element (iterT start, iterT end) |
Like std::max_element, but comparing after taking absolute value. More... | |
template<class IterT , class elemT > | |
elemT | stir::sum (IterT start, IterT end, elemT init) |
Compute the sum of a sequence using operator+=(), using an initial value. More... | |
template<class IterT > | |
std::iterator_traits< IterT >::value_type | stir::sum (IterT start, IterT end) |
Compute the sum of a sequence using operator+=(). More... | |
template<class IterT > | |
std::iterator_traits< IterT >::value_type | stir::average (IterT start, IterT end) |
Compute the average of a sequence using sum(start,end). More... | |
char * | stir::strupr (char *const str) |
make C-string uppercase | |
void | stir::warning (const char *const s,...) |
Print warning with format string a la printf . More... | |
template<class STRING > | |
void | stir::warning (const STRING &string, const int verbosity_level=1) |
Use this function for writing warning messages. More... | |
Variables | |
const int | stir::max_filename_length = 1000 |
some large value to say how long filenames can be in the (deprecated) function ask_filename_with_extension(char *,const std::string&, const std::string&) | |
Library with things that are not specific to reconstructions. This includes multi-dimensional arrays, images, image processors, projection data,...
#define STIRIsNativeByteOrderBigEndian 1 |
A macro that is defined to 1 when the compilation is on a big endian machine, otherwise it is set to 0.
This should be used only in the case that you really need to know this at compilation time. Try to use class ByteOrder instead.
The definition of class ByteOrder is independent of this macro.
#define STIRIsNativeByteOrderLittleEndian 0 |
A macro that is defined to 1 when the compilation is on a little endian machine, and to 0 otherwise.
#define _PI boost::math::constants::pi<double>() |
The constant pi to high precision.
Referenced by stir::Scanner::check_consistency(), stir::CListModeDataROOT::CListModeDataROOT(), stir::ScatterSimulation::detection_efficiency_no_scatter(), stir::ScatterSimulation::downsample_scanner(), stir::extend_segment(), stir::ProjDataInfoCylindricalNoArcCorr::find_scanner_coordinates_given_cartesian_coordinates(), stir::from_min_pi_plus_pi_to_0_2pi(), stir::ProjDataInfoCylindricalNoArcCorr::get_bin(), stir::ProjMatrixByDenselUsingRayTracing::get_element(), stir::Ellipsoid::get_geometric_volume(), stir::EllipsoidalCylinder::get_geometric_volume(), stir::ProjDataInfoCylindrical::get_LOR(), stir::inverse_fourier_1d_for_real_data_corrupting_input(), stir::EllipsoidalCylinder::is_inside_shape(), stir::LORInCylinderCoordinates< coordT >::is_swapped(), stir::LORAs2Points< float >::is_swapped(), stir::LORInAxialAndSinogramCoordinates< coordT >::is_swapped(), stir::Scanner::list_names(), stir::LORInAxialAndNoArcCorrSinogramCoordinates< coordT >::LORInAxialAndNoArcCorrSinogramCoordinates(), stir::LORInAxialAndSinogramCoordinates< coordT >::LORInAxialAndSinogramCoordinates(), stir::ProjDataInfoCylindrical::parameter_info(), stir::Scanner::parameter_info(), stir::InterfilePDFSHeaderSPECT::post_processing(), stir::Shape3DWithOrientation::post_processing(), stir::ProjDataInfoCylindrical::ProjDataInfoCylindrical(), stir::FourierRebinning::rebin(), stir::ProjDataInfoTests::run_coordinate_test(), stir::ProjDataInfoTests::run_coordinate_test_for_realistic_scanner(), stir::ProjDataInfoTests::run_lor_get_s_test(), stir::ScannerTests::run_tests(), stir::ProjDataInfoCylindricalArcCorrTests::run_tests(), stir::Scanner::Scanner(), stir::SeparableGaussianArrayFilter< num_dimensions, elemT >::SeparableGaussianArrayFilter(), stir::Shape3DWithOrientation::set_key_values(), stir::ColsherFilter::set_up(), stir::ProjMatrixByBinSPECTUB::set_up(), stir::erfTests::test_FastErf(), stir::to_0_2pi(), and stir::BackProjectorByBinUsingInterpolation::use_piecewise_linear_interpolation().
|
inline |
returns the square of a number, templated.
Referenced by stir::absolute_max_eigenvector_using_power_method(), stir::LogcoshPrior< elemT >::accumulate_Hessian_times_input(), stir::ProjMatrixByDenselOnCartesianGridUsingElement::calculate_proj_matrix_elems_for_one_densel(), stir::LORAs2Points< float >::change_representation_for_block(), stir::coordinate_between_2_lines(), stir::distance_between_line_and_point(), stir::ScatterSimulation::energy_lower_limit(), stir::find_LOR_intersections_with_cylinder(), stir::ProjDataInfoCylindricalNoArcCorr::find_scanner_coordinates_given_cartesian_coordinates(), stir::ProjDataInfo::get_costheta(), stir::ProjMatrixByDenselUsingRayTracing::get_element(), stir::ProjDataInfoGeneric::get_LOR(), stir::ProjDataInfoCylindrical::get_LOR(), stir::RigidObject3DTransformation::get_relative_transformation(), stir::ProjDataInfoCylindrical::get_tantheta(), stir::EllipsoidalCylinder::is_inside_shape(), stir::make_det_pair_data(), stir::ScatterSimulation::max_cos_angle(), stir::randoms_from_singles(), stir::RigidObject3DTransformation::RigidObject3DTransformation(), stir::MatchTrackerAndScanner::run(), stir::QuaternionTests::run_tests(), stir::Shape3DWithOrientation::scale(), stir::SeparableGaussianArrayFilter< num_dimensions, elemT >::SeparableGaussianArrayFilter(), stir::PLSPrior< elemT >::set_anatomical_filename(), stir::RelativeDifferencePrior< elemT >::set_kappa_sptr(), stir::LogcoshPrior< elemT >::set_scalar(), stir::KOSMAPOSLReconstruction< TargetT >::set_sigma_m(), stir::ProjMatrixElemsForOneDensel::square_sum(), stir::ProjMatrixElemsForOneBin::square_sum(), stir::truncate_rim(), and stir::RelativeDifferencePrior< elemT >::value().
CartesianCoordinate3D<coordT> stir::cross_product | ( | const CartesianCoordinate3D< coordT > & | a, |
const CartesianCoordinate3D< coordT > & | b | ||
) |
the cross-product for 3-dimensional coordinates.
|
inline |
Compute decay-correction factor for a time frame.
This function computes the factor needed to convert average number of counts per second to activity at time 0, i.e. it returns
Referenced by stir::DynamicDiscretisedDensity::decay_correct_frames(), stir::PlasmaData::decay_correct_PlasmaData(), stir::randoms_from_singles(), and stir::PatlakPlot::set_model_matrix().
|
inline |
Computes the decay-correction factor for activity at a given time point.
This function computes the correction factor to convert activity at t0 + rel_time to activity at t0, i.e.
void stir::error | ( | const char *const | s, |
... | |||
) |
Print error with format string a la printf
and throw exception.
The arguments are the same as if you would call printf(). The error message is written to stderr, preceeded by "ERROR:", a std::string is constructed with the error message, and throw
is called with the string as argument.
Note that because we throw an exception, the caller can catch it. Prior to STIR 2.1, this was not possible as stir::error directly called std::exit.
Referenced by stir::absolute_max_eigenvector_using_shifted_power_method(), stir::AbsTimeIntervalFromDynamicData::AbsTimeIntervalFromDynamicData(), stir::AbsTimeIntervalFromECAT7ACF::AbsTimeIntervalFromECAT7ACF(), stir::GeneralisedPrior< TargetT >::accumulate_Hessian_times_input(), stir::GeneralisedObjectiveFunction< TargetT >::accumulate_Hessian_times_input(), stir::PoissonLogLikelihoodWithLinearModelForMeanAndListModeDataWithProjMatrixByBin< TargetT >::actual_accumulate_sub_Hessian_times_input_without_penalty(), stir::PoissonLogLikelihoodWithLinearModelForMeanAndProjData< TargetT >::actual_accumulate_sub_Hessian_times_input_without_penalty(), stir::GeneralisedObjectiveFunction< TargetT >::actual_accumulate_sub_Hessian_times_input_without_penalty(), stir::PoissonLogLikelihoodWithLinearModelForMeanAndProjData< TargetT >::actual_add_multiplication_with_approximate_sub_Hessian_without_penalty(), stir::GeneralisedObjectiveFunction< TargetT >::actual_add_multiplication_with_approximate_sub_Hessian_without_penalty(), stir::BackProjectorByBinUsingSquareProjMatrixByBin::actual_back_project(), stir::BackProjectorByBinParallelproj::actual_back_project(), stir::BackProjectorByBin::actual_back_project(), stir::PoissonLogLikelihoodWithLinearModelForMeanAndListModeDataWithProjMatrixByBin< TargetT >::actual_compute_objective_function_without_penalty(), stir::PoissonLogLikelihoodWithLinearModelForMeanAndProjData< TargetT >::actual_compute_objective_function_without_penalty(), stir::PoissonLogLikelihoodWithLinearModelForMeanAndListModeDataWithProjMatrixByBin< TargetT >::actual_compute_subset_gradient_without_penalty(), stir::PoissonLogLikelihoodWithLinearModelForMeanAndProjData< TargetT >::actual_compute_subset_gradient_without_penalty(), stir::ForwardProjectorByBin::actual_forward_project(), stir::PoissonLogLikelihoodWithLinearModelForMeanAndProjData< TargetT >::actual_subsets_are_approximately_balanced(), stir::MultiDynamicDiscretisedDensityOutputFileFormat::actual_write_to_file(), stir::GeneralisedPrior< TargetT >::add_multiplication_with_approximate_Hessian(), stir::GeneralisedObjectiveFunction< TargetT >::add_multiplication_with_approximate_sub_Hessian_without_penalty(), stir::PoissonLogLikelihoodWithLinearModelForMeanAndListModeDataWithProjMatrixByBin< TargetT >::add_subset_sensitivity(), stir::PoissonLogLikelihoodWithLinearModelForMeanAndProjData< TargetT >::add_subset_sensitivity(), stir::FilePath::append(), stir::PatlakPlot::apply_linear_regression(), stir::ArrayFilterUsingRealDFTWithPadding< 2, float >::ArrayFilterUsingRealDFTWithPadding(), stir::OSSPSReconstruction< TargetT >::ask_parameters(), stir::BackProjectorByBinNiftyPET::back_project(), stir::BackProjectorByBin::back_project(), stir::DynamicProjData::calibrate_frames(), stir::ProjectorByBinPair::check(), stir::GeneralisedPrior< TargetT >::check(), stir::BinNormalisation::check(), stir::ForwardProjectorByBin::check(), stir::Reconstruction< DiscretisedDensity< 3, float > >::check(), stir::LogcoshPrior< elemT >::check(), stir::BackProjectorByBin::check(), stir::PLSPrior< elemT >::check(), stir::GE::RDF_HDF5::GEHDF5Wrapper::check_GE_signature(), stir::ecat::ecat7::CListModeDataECAT< CListRecordT >::CListModeDataECAT(), stir::ecat::CListModeDataECAT8_32bit::CListModeDataECAT8_32bit(), stir::GE::RDF_HDF5::CListModeDataGEHDF5::CListModeDataGEHDF5(), stir::CListModeDataLMF::CListModeDataLMF(), stir::CListModeDataPENN::CListModeDataPENN(), stir::CListModeDataROOT::CListModeDataROOT(), stir::CListModeDataSAFIR< CListRecordT >::CListModeDataSAFIR(), stir::SqrtHessianRowSum< TargetT >::compute_approximate_Hessian_row_sum(), stir::RelativeDifferencePrior< elemT >::compute_gradient(), stir::GeneralisedPrior< TargetT >::compute_Hessian(), stir::SqrtHessianRowSum< TargetT >::compute_Hessian_row_sum(), stir::KOSMAPOSLReconstruction< TargetT >::compute_kernelised_image(), stir::GeneralisedObjectiveFunction< TargetT >::compute_objective_function_without_penalty(), stir::PoissonLogLikelihoodWithLinearModelForMean< TargetT >::compute_sensitivities(), stir::GeneralisedObjectiveFunction< TargetT >::compute_sub_gradient(), stir::PoissonLogLikelihoodWithLinearModelForMean< TargetT >::compute_sub_gradient_without_penalty(), stir::PoissonLogLikelihoodWithLinearModelForMean< TargetT >::compute_sub_gradient_without_penalty_plus_sensitivity(), stir::PoissonLLReconstructionTests< target_type >::construct_log_likelihood(), stir::PoissonLLReconstructionTests< target_type >::construct_projector_pair(), stir::DiscretisedShape3D::construct_volume(), stir::ModelMatrix< 2 >::convert_to_total_frame_counts(), stir::DataSymmetriesForBins_PET_CartesianGrid::DataSymmetriesForBins_PET_CartesianGrid(), stir::DataSymmetriesForDensels_PET_CartesianGrid::DataSymmetriesForDensels_PET_CartesianGrid(), stir::ScatterSimulation::detection_efficiency(), stir::ScatterSimulation::detection_efficiency_no_scatter(), stir::DICOM_date_time_to_DT(), stir::DICOM_datetime_to_secs_since_Unix_epoch(), stir::DiscretisedShape3D::DiscretisedShape3D(), stir::DynamicProjData::divide_with_duration(), stir::ScatterSimulation::downsample_density_image_for_scatter_points(), stir::EllipsoidalCylinder::EllipsoidalCylinder(), stir::FBP3DRPReconstruction::FBP3DRPReconstruction(), stir::FilePath::FilePath(), stir::ProjData::fill(), stir::find_centre_of_gravity(), stir::RigidObject3DTransformation::find_closest_transformation(), stir::Scanner::find_detection_position_given_cartesian_coordinate(), stir::FactoryRegistry< Key, Factory, Compare >::find_factory(), stir::find_STIR_config_file(), stir::ForwardProjectorByBin::forward_project(), stir::GeneralisedPoissonNoiseGenerator::generate_random(), stir::FilePath::get_as_string(), stir::ProjMatrixByBinPinholeSPECTUB::get_attenuation_type(), stir::ProjDataInfoCylindricalArcCorr::get_bin(), stir::CListEventSAFIR< CListRecordSAFIR< DataType > >::get_bin(), stir::ProjDataInfoGenericNoArcCorr::get_bin(), stir::ProjDataInfoCylindricalNoArcCorr::get_bin(), stir::BinNormalisationFromProjData::get_bin_efficiency(), stir::BinNormalisationFromAttenuationImage::get_bin_efficiency(), stir::ProjDataFromStream::get_bin_value(), stir::Radionuclide::get_branching_ratio(), stir::BinNormalisationWithCalibration::get_calib_decay_branching_ratio_factor(), stir::Scanner::get_coincidence_window_width_in_ps(), stir::Array< 2, float >::get_const_full_data_ptr(), stir::Scanner::get_coordinate_for_det_pos(), stir::Scanner::get_coordinate_for_index(), stir::DynamicDiscretisedDensity::get_density(), stir::Scanner::get_det_pos_for_index(), stir::ProjMatrixByBinPinholeSPECTUB::get_doi_correction(), stir::PatlakPlot::get_dynamic_image_from_parametric_image(), stir::GE::RDF_HDF5::CListModeDataGEHDF5::get_empty_record_sptr(), stir::ProjDataInfo::get_empty_related_viewgrams(), stir::Radionuclide::get_energy(), stir::ScatterSimulation::get_exam_info_sptr(), stir::Array< 2, float >::get_full_data_ptr(), stir::Radionuclide::get_half_life(), stir::ScatterEstimation::get_iterations_num(), stir::Radionuclide::get_modality(), stir::PatlakPlot::get_model_matrix(), stir::RigidObject3DMotionFromPolaris::get_motion_in_tracker_coords_rel_time(), stir::InputStreamFromROOTFileForCylindricalPET::get_num_axial_crystals_per_singles_unit(), stir::InputStreamFromROOTFileForCylindricalPET::get_num_trans_crystals_per_singles_unit(), stir::ProjDataFromStream::get_offset(), stir::BackProjectorByBin::get_output(), stir::ProjMatrixByBinPinholeSPECTUB::get_psf_correction(), stir::RigidObject3DMotionFromPolaris::get_rel_time_of_samples(), stir::RigidObject3DTransformation::get_relative_transformation(), stir::ProjDataInfoCylindrical::get_ring_pair_for_segment_axial_pos_num(), stir::ProjDataInfoCylindrical::get_ring_radius(), stir::ProjDataFromStream::get_segment_by_sinogram(), stir::ProjDataFromStream::get_segment_by_view(), stir::SinglesRatesForTimeSlices::get_singles(), stir::ProjDataFromStream::get_sinogram(), stir::ProjData::get_subset(), stir::BackProjectorByBinUsingSquareProjMatrixByBin::get_symmetries_used(), stir::BackProjectorByBinUsingProjMatrixByBin::get_symmetries_used(), stir::BackProjectorByBinParallelproj::get_symmetries_used(), stir::ForwardProjectorByBinUsingProjMatrixByBin::get_symmetries_used(), stir::ForwardProjectorByBinParallelproj::get_symmetries_used(), stir::BackProjectorByBinNiftyPET::get_symmetries_used(), stir::ForwardProjectorByBinNiftyPET::get_symmetries_used(), stir::ForwardProjectorByBinUsingRayTracing::get_symmetries_used(), stir::BackProjectorByBinUsingInterpolation::get_symmetries_used(), stir::PatlakPlot::get_time_frame_definitions(), stir::ListModeData::get_total_number_of_events(), stir::ProjDataFromStream::get_viewgram(), stir::InputStreamFromROOTFile::GetEntryCheck(), stir::ListModeData_dummy::has_delayeds(), stir::Reconstruction< DiscretisedDensity< 3, float > >::initialise(), stir::GE::RDF_HDF5::GEHDF5Wrapper::initialise_geo_factors_data(), stir::SingleScatterSimulation::initialise_keymap(), stir::FindMCNormFactors::initialise_keymap(), stir::DistributedCachingInformation::initialise_new_subiteration(), stir::GE::RDF_HDF5::GEHDF5Wrapper::initialise_proj_data(), stir::InputStreamFromROOTFile::InputStreamFromROOTFile(), stir::InputStreamFromROOTFileForCylindricalPET::InputStreamFromROOTFileForCylindricalPET(), stir::InputStreamFromROOTFileForECATPET::InputStreamFromROOTFileForECATPET(), stir::InputStreamWithRecords< RecordT, OptionsT >::InputStreamWithRecords(), stir::Interfile_datetime_to_DICOM(), stir::interpolate_line(), stir::inverse_fourier_1d_for_real_data_corrupting_input(), stir::InvertAxis::invert_axis(), stir::FilePath::is_directory(), stir::GE::RDF_HDF5::GEHDF5Wrapper::is_list_file(), stir::FilePath::is_regular_file(), stir::ProjDataInfo::is_tof_data(), stir::BinNormalisationFromProjData::is_TOF_only_norm(), stir::ArrayFilter1DUsingConvolution< elemT >::is_trivial(), stir::BinNormalisationPETFromComponents::is_trivial(), stir::KOSMAPOSLReconstruction< TargetT >::KOSMAPOSLReconstruction(), stir::LmToProjData::LmToProjData(), stir::LmToProjDataBootstrap< LmToProjDataT >::LmToProjDataBootstrap(), stir::LmToProjDataWithRandomRejection< LmToProjDataT >::LmToProjDataWithRandomRejection(), stir::maximum_location_per_slice(), stir::multiply_crystal_factors(), stir::ModelMatrix< 2 >::multiply_dynamic_image_with_model_and_add_to_input(), stir::PatlakPlot::multiply_dynamic_image_with_model_gradient(), stir::PatlakPlot::multiply_dynamic_image_with_model_gradient_and_add_to_input(), stir::ModelMatrix< 2 >::multiply_parametric_image_with_model(), stir::ModelMatrix< 2 >::multiply_parametric_image_with_model_and_add_to_input(), stir::open_read_binary(), stir::open_write_binary(), stir::DiscretisedShape3D::operator==(), stir::PLSPrior< elemT >::PLSPrior(), stir::CreateTailMaskFromACFs::post_processing(), stir::Ellipsoid::post_processing(), stir::PoissonLogLikelihoodWithLinearModelForMeanAndListModeDataWithProjMatrixByBin< TargetT >::post_processing(), stir::PoissonLogLikelihoodWithLinearModelForMeanAndDynamicProjData< TargetT >::post_processing(), stir::KOSMAPOSLReconstruction< TargetT >::post_processing(), stir::ScatterEstimation::post_processing(), stir::ScatterSimulation::post_processing(), stir::ScatterEstimation::process_data(), stir::ScatterSimulation::process_data_for_view_segment_num(), stir::ProjDataInfoBlocksOnCylindricalNoArcCorr::ProjDataInfoBlocksOnCylindricalNoArcCorr(), stir::ProjDataInfo::ProjDataInfoCTI(), stir::ProjDataInfoCylindrical::ProjDataInfoCylindrical(), stir::ProjDataInfoCylindricalNoArcCorr::ProjDataInfoCylindricalNoArcCorr(), stir::ProjDataInfo::ProjDataInfoGE(), stir::ProjDataInfoGenericNoArcCorr::ProjDataInfoGenericNoArcCorr(), stir::ProjDataInfoSubsetByView::ProjDataInfoSubsetByView(), stir::ProjMatrixByBinFromFile::ProjMatrixByBinFromFile(), stir::BloodFrameData::read_blood_frame_data(), stir::ecat::ecat7::read_ECAT7_exam_info(), stir::read_from_file(), stir::ModelMatrix< 2 >::read_from_file(), stir::PENNListmodeInputFileFormat::read_from_file(), stir::ROOTListmodeInputFileFormat::read_from_file(), stir::ecat::ecat6::ECAT6ImageInputFileFormat::read_from_file(), stir::ecat::ecat7::ECAT7DynamicDiscretisedDensityInputFileFormat::read_from_file(), stir::ecat::ECAT8_32bitListmodeInputFileFormat::read_from_file(), stir::ecat::ecat7::ECAT7ImageInputFileFormat::read_from_file(), stir::ITKImageInputFileFormat< STIRImageType >::read_from_file(), stir::MultiDynamicDiscretisedDensityInputFileFormat::read_from_file(), stir::MultiParametricDiscretisedDensityInputFileFormat::read_from_file(), stir::ecat::ecat7::ECAT962ListmodeInputFileFormat::read_from_file(), stir::ecat::ecat7::ECAT966ListmodeInputFileFormat::read_from_file(), stir::SAFIRCListmodeInputFileFormat< EventDataType >::read_from_file(), stir::GatedSpatialTransformation::read_from_files(), stir::TimeGateDefinitions::read_gdef_file(), stir::read_interfile_dynamic_image(), stir::read_interfile_image(), stir::read_interfile_parametric_image(), stir::GE::RDF_HDF5::GEHDF5Wrapper::read_list_data(), stir::PlasmaData::read_plasma_data(), stir::ecat::ecat7::SinglesRatesFromECAT7::read_singles_from_file(), stir::ecat::ecat7::SinglesRatesFromSglFile::read_singles_from_sgl_file(), stir::FourierRebinning::rebin(), distributed::receive_and_construct_exam_and_proj_data_info_ptr(), distributed::receive_image_values_and_fill_image_ptr(), stir::ReconstructionTests< target_type >::reconstruct(), stir::AnalyticReconstruction::reconstruct(), stir::ListModeData_dummy::reset(), stir::InputStreamWithRecordsFromUPENNtxt::reset(), stir::MatchTrackerAndScanner::run(), stir::TestDataProcessorProjectors::run_tests(), stir::DateTimeTest::run_tests(), stir::TestFBP2D::run_tests(), stir::TestFBP3DRP::run_tests(), stir::TestOSMAPOSL::run_tests(), stir::TestGPUProjectors::run_tests(), stir::ScatterSimulation::sample_scatter_points(), stir::ListModeData_dummy::save_get_position(), stir::InputStreamWithRecordsFromUPENNtxt::save_get_position(), stir::InputStreamWithRecords< RecordT, OptionsT >::save_get_position(), stir::DiscretisedShape3D::scale(), stir::ModelMatrix< 2 >::scale_model_matrix(), stir::ScatterEstimation::ScatterEstimation(), stir::secs_since_Unix_epoch_to_DICOM_datetime(), stir::GeneralisedPoissonNoiseGenerator::seed(), stir::SeparableGaussianArrayFilter< num_dimensions, elemT >::SeparableGaussianArrayFilter(), stir::PoissonLogLikelihoodWithLinearModelForMeanAndListModeData< TargetT >::set_additive_proj_data_sptr(), stir::ProjMatrixByBinSPECTUB::set_attenuation_type(), stir::ProjDataFromStream::set_bin_value(), stir::SqrtHessianRowSum< TargetT >::set_defaults(), stir::DynamicDiscretisedDensity::set_density(), stir::ScatterSimulation::set_density_image_for_scatter_points(), stir::CListEventPENN::set_detection_position(), stir::CListEventCylindricalScannerWithViewTangRingRingEncoding< CListEventECAT966 >::set_detection_position(), stir::ecat::CListEventECAT8_32bit::set_detection_position(), stir::GE::RDF_HDF5::CListRecordGEHDF5::set_detection_position(), stir::DetectorCoordinateMap::set_detector_map(), stir::ListModeData_dummy::set_get_position(), stir::PoissonLogLikelihoodWithLinearModelForMeanAndListModeData< TargetT >::set_input_data(), stir::ScatterEstimation::set_input_data(), stir::ParsingObject::set_key_values(), stir::OSMAPOSLReconstruction< TargetT >::set_MAP_model(), stir::PatlakPlot::set_model_matrix(), stir::SumOfGeneralisedObjectiveFunctions< PoissonLogLikelihoodWithLinearModelForMeanAndProjData< TargetT >, TargetT, PoissonLogLikelihoodWithLinearModelForMean< TargetT > >::set_num_subsets(), stir::ProjDataInfoSubsetByView::set_num_views(), stir::ProjDataInfoGeneric::set_num_views(), stir::Scanner::set_num_virtual_axial_crystals_per_block(), stir::Scanner::set_num_virtual_transaxial_crystals_per_block(), stir::ScatterSimulation::set_output_proj_data(), stir::KeyParser::set_parsing_object(), stir::ProjDataInfoCylindrical::set_ring_radii_for_all_views(), stir::ProjDataFromStream::set_segment(), stir::KeyParser::set_shared_parsing_object(), stir::PoissonLogLikelihoodWithLinearModelForMeanAndListModeData< TargetT >::set_skip_lm_input_file(), stir::IterativeReconstruction< TargetT >::set_start_subset_num(), stir::PoissonLogLikelihoodWithLinearModelForMean< TargetT >::set_subsensitivity_filenames(), stir::ProjDataInfo::set_tof_mash_factor(), stir::ProjMatrixByBinWithPositronRange::set_up(), stir::ProjMatrixByBinUsingSolidAngle::set_up(), stir::ProjMatrixByBinSinglePhoton::set_up(), stir::InputStreamWithRecordsFromUPENNbin::set_up(), stir::ProjMatrixByBinUsingInterpolation::set_up(), stir::ProjMatrixByDenselOnCartesianGridUsingElement::set_up(), stir::ForwardProjectorByBinParallelproj::set_up(), stir::BackProjectorByBinNiftyPET::set_up(), stir::ProjMatrixByDenselUsingRayTracing::set_up(), stir::ForwardProjectorByBinNiftyPET::set_up(), stir::BinNormalisationFromAttenuationImage::set_up(), stir::ProjMatrixByBin::set_up(), stir::ForwardProjectorByBinUsingRayTracing::set_up(), stir::ProjMatrixByBinFromFile::set_up(), stir::InputStreamFromROOTFile::set_up(), stir::GE::RDF_HDF5::BinNormalisationFromGEHDF5::set_up(), stir::ProjMatrixByBinSPECTUB::set_up(), stir::ecat::ecat7::BinNormalisationFromECAT7::set_up(), stir::InputStreamFromROOTFileForECATPET::set_up(), stir::BinNormalisationPETFromComponents::set_up(), stir::GeneralisedObjectiveFunction< TargetT >::set_up(), stir::InputStreamFromROOTFileForCylindricalPET::set_up(), stir::ecat::BinNormalisationFromECAT8::set_up(), stir::FBP2DReconstruction::set_up(), stir::ProjMatrixByBinUsingRayTracing::set_up(), stir::ProjMatrixByBinPinholeSPECTUB::set_up(), stir::ScatterEstimation::set_up(), stir::BackProjectorByBinUsingInterpolation::set_up(), stir::LmToProjData::set_up(), stir::IterativeReconstruction< TargetT >::set_up(), stir::Scanner::set_up(), stir::ScatterSimulation::set_use_cache(), stir::KeyParser::set_variable(), stir::Shape3DWithOrientation::Shape3DWithOrientation(), stir::GE::RDF_HDF5::SinglesRatesFromGEHDF5::SinglesRatesFromGEHDF5(), stir::SSRB(), stir::Timer::start(), stir::DistributedWorker< TargetT >::start(), stir::BackProjectorByBin::start_accumulating_in_new_target(), stir::GeneralisedObjectiveFunction< TargetT >::subsets_are_approximately_balanced(), stir::TestProjDataInfoSubsets::TestProjDataInfoSubsets(), stir::ModelMatrix< 2 >::threshold_model_array(), stir::TimeFrameDefinitions::TimeFrameDefinitions(), stir::truncate_rim(), stir::ModelMatrix< 2 >::uncalibrate(), stir::ScatterEstimation::upsample_and_fit_scatter_estimate(), stir::BackProjectorByBinUsingInterpolation::use_piecewise_linear_interpolation(), stir::HUToMuImageProcessor< TargetT >::virtual_set_up(), stir::ecat::ecat7::SinglesRatesFromSglFile::write(), stir::write_to_file(), stir::ModelMatrix< 2 >::write_to_file(), stir::NumericVectorWithOffset< elemT, elemT >::xapyb(), stir::ProjDataInMemory::xapyb(), stir::Array< 2, float >::xapyb(), stir::ProjData::xapyb(), stir::zoom_viewgram(), stir::zoom_viewgrams(), and stir::ProjMatrixByBinSPECTUB::~ProjMatrixByBinSPECTUB().
|
inline |
Use this function for writing error messages and throwing an exception.
The argument is expected to be a string, but could be anything for which std::ostream::operator<< would work.
This function currently first writes a newline, then ERROR:
, then string
and then another newline to std::cerr. Then it throws an exception.
boost::format
is useful in this context.
|
inline |
extracts a line from an array in the direction of the specified dimension.
References stir::VectorWithOffset< T >::get_max_index(), and stir::VectorWithOffset< T >::get_min_index().
Referenced by stir::interpolate_line().
void stir::info | ( | const STRING & | string, |
const int | verbosity_level = 1 |
||
) |
Use this function for writing informational messages.
The argument is expected to be a string, but could be anything for which std::ostream::operator<< would work.
This function currently first writes a newline, then INFO
, then string
and then another newline to std::cerr.
boost::format
is useful in this context.
References stir::get().
Referenced by stir::AbsTimeIntervalFromDynamicData::AbsTimeIntervalFromDynamicData(), stir::PoissonLogLikelihoodWithLinearModelForMeanAndListModeDataWithProjMatrixByBin< TargetT >::add_subset_sensitivity(), stir::BackProjectorByBin::back_project(), stir::SqrtHessianRowSum< TargetT >::compute_approximate_Hessian_row_sum(), stir::LogcoshPrior< elemT >::compute_gradient(), stir::RelativeDifferencePrior< elemT >::compute_gradient(), stir::PLSPrior< elemT >::compute_gradient(), stir::SqrtHessianRowSum< TargetT >::compute_Hessian_row_sum(), stir::KOSMAPOSLReconstruction< TargetT >::compute_kernelised_image(), stir::Shape3D::construct_volume(), stir::DataSymmetriesForBins_PET_CartesianGrid::DataSymmetriesForBins_PET_CartesianGrid(), stir::ScatterSimulation::detection_efficiency_no_scatter(), stir::ScatterSimulation::downsample_density_image_for_scatter_points(), stir::ScatterSimulation::downsample_scanner(), stir::FilePath::exists(), stir::FBP2DReconstruction::FBP2DReconstruction(), stir::ForwardProjectorByBin::forward_project(), stir::GE::RDF_HDF5::CListModeDataGEHDF5::get_empty_record_sptr(), stir::ecat::CListModeDataECAT8_32bit::get_empty_record_sptr(), stir::CListModeDataROOT::get_empty_record_sptr(), stir::ProjMatrixByBinPinholeSPECTUB::get_mask_image_sptr(), stir::BackProjectorByBinParallelproj::get_output(), stir::FilePath::is_directory(), stir::FilePath::is_regular_file(), stir::KOSMAPOSLReconstruction< TargetT >::KOSMAPOSLReconstruction(), stir::OSMAPOSLReconstruction< TargetT >::OSMAPOSLReconstruction(), stir::OSSPSReconstruction< TargetT >::OSSPSReconstruction(), stir::LogcoshPrior< elemT >::parabolic_surrogate_curvature(), stir::PoissonLogLikelihoodWithLinearModelForMeanAndListModeDataWithProjMatrixByBin< TargetT >::post_processing(), stir::PoissonLogLikelihoodWithLinearModelForMeanAndListModeData< TargetT >::post_processing(), stir::KOSMAPOSLReconstruction< TargetT >::post_processing(), stir::ScatterEstimation::post_processing(), stir::OSSPSReconstruction< TargetT >::precompute_denominator_of_conditioner_without_penalty(), stir::ScatterEstimation::process_data(), stir::ProjDataInfoCylindrical::ProjDataInfoCylindrical(), stir::randoms_from_singles(), stir::ecat::ecat7::ECAT966ListmodeInputFileFormat::read_from_file(), stir::ProjData::read_from_file(), stir::SAFIRCListmodeInputFileFormat< EventDataType >::read_from_file(), stir::FourierRebinning::rebin(), stir::IterativeReconstruction< TargetT >::reconstruct(), stir::CListModeDataSAFIR< CListRecordT >::reset(), stir::SeparableGaussianArrayFilter< num_dimensions, elemT >::SeparableGaussianArrayFilter(), stir::SeparableMetzArrayFilter< num_dimensions, elemT >::SeparableMetzArrayFilter(), stir::PLSPrior< elemT >::set_anatomical_filename(), stir::ProjMatrixByBinSPECTUB::set_attenuation_image_sptr(), stir::ProjMatrixByBinPinholeSPECTUB::set_attenuation_image_sptr(), stir::CListModeDataROOT::set_defaults(), stir::SAFIRCListmodeInputFileFormat< EventDataType >::set_defaults(), stir::ForwardProjectorByBinParallelproj::set_input(), stir::PLSPrior< elemT >::set_kappa_filename(), stir::DynamicProjData::set_start_time_in_secs_since_1970(), stir::ProjMatrixByBinUsingRayTracing::set_up(), stir::ProjMatrixByBinPinholeSPECTUB::set_up(), stir::ScatterEstimation::set_up(), stir::ScatterSimulation::set_use_cache(), stir::InterfileHeader::set_version_specific_keys(), stir::setup_distributable_computation(), stir::LmToProjDataBootstrap< LmToProjDataT >::start_new_time_frame(), stir::PoissonLogLikelihoodWithLinearModelForMeanAndProjDataTests::test_approximate_Hessian_concavity(), stir::ObjectiveFunctionTests< GeneralisedPrior< DiscretisedDensity< 3, float > >, DiscretisedDensity< 3, float > >::test_gradient(), stir::ObjectiveFunctionTests< GeneralisedPrior< DiscretisedDensity< 3, float > >, DiscretisedDensity< 3, float > >::test_Hessian(), stir::GeneralisedPriorTests::test_Hessian_against_numerical(), stir::GeneralisedPriorTests::test_Hessian_convexity_configuration(), stir::TimeFrameDefinitions::TimeFrameDefinitions(), stir::transform_3d_object(), stir::OSSPSReconstruction< TargetT >::update_estimate(), stir::OSMAPOSLReconstruction< TargetT >::update_estimate(), stir::ScatterEstimation::upsample_and_fit_scatter_estimate(), stir::HUToMuImageProcessor< TargetT >::virtual_set_up(), stir::ProjMatrixByBinPinholeSPECTUB::~ProjMatrixByBinPinholeSPECTUB(), and stir::ProjMatrixByBinSPECTUB::~ProjMatrixByBinSPECTUB().
|
inline |
Implements standard linear regression on VectorWithOffset data.
The linear_regression function does straightforward (1 dimensional) weighted least squares fitting.
3 VectorWithOffsets of measured_data, coordinates, weights
1 optional boolean value use_estimated_variance (default=true)
fitted parameters : constant, scale
goodness of fit measures : chi_square and the (co)variances
This solves the minimisation problem:
Find constant, scale such that chi_square = sum_i weights[i]* (constant + scale*coordinates[i] - measured_data[i])^2 is minimal.
When use_estimated_variance == false, the (co)variances are computed assuming that 1/weights[i] is the standard deviation on measured_data[i]. In particular, this means that the (co)variances depend only on the weights and the coordinates.
Alternatively, when use_estimated_variance == true, the weights are considered to be really only proportional to the 1/variance. Then the estimated variance is used to get sensible estimates of the errors:
estimated_variance = chi_square/(measured_data.get_length() - 2) estimated_covariance_matrix = original_covariance_matrix * estimated_variance
References stir::VectorWithOffset< T >::begin(), stir::VectorWithOffset< T >::end(), stir::VectorWithOffset< T >::get_max_index(), and stir::VectorWithOffset< T >::get_min_index().
Referenced by stir::PatlakPlot::apply_linear_regression(), and stir::linear_regressionTests::run_tests().
|
inline |
Implements standard linear regression.
This function takes the data as iterators for maximum flexibility. Note that it is assumed (but not checked) that the measured_data, coordinates and weights iterators run over the same range.
ForwardIter_t stir::min_positive_element | ( | ForwardIter_t | start, |
ForwardIter_t | end | ||
) |
Finds where the smallest strictly positive element occurs.
start | start of the sequence. Usually object.begin(). |
end | end of the sequence in iterator sense (so actually one beyond the last element). Usually object.end(). |
The iterator type has to satisfy the requirements of a forward iterator, and its value_type has to be comparable using < and <=.
Referenced by stir::threshold_min_to_small_positive_value().
|
inline |
Like std::max_element, but comparing after taking absolute value.
This function using stir::norm_squared(), so works for complex numbers as well.
References stir::norm_squared().
Referenced by stir::absolute_max_eigenvector_using_power_method().
|
inline |
Compute the sum of a sequence using operator+=(), using an initial value.
Sadly std::accumulate uses operator+(). For non-trivial objects, this might call an inefficient version for the addition. As an alternative, std::accumulate could be called with a function object that calls operator+=.
Referenced by stir::average(), stir::ParametricQuadraticPrior< TargetT >::compute_value(), stir::ProjData::copy_to(), stir::find_centre_of_gravity(), stir::make_det_pair_data(), stir::Array< 1, elemT >::release_const_full_data_ptr(), stir::SeparableGaussianArrayFilter< num_dimensions, elemT >::SeparableGaussianArrayFilter(), stir::SeparableMetzArrayFilter< num_dimensions, elemT >::SeparableMetzArrayFilter(), stir::sum(), and stir::ModelMatrix< 2 >::write_to_file().
|
inline |
Compute the sum of a sequence using operator+=().
Sadly std::accumulate uses operator+(). For non-trivial objects, this might call an inefficient version for the addition. Alternatively, std::accumulate could be called with a function object that calls operator+=. Still, in that case you need to specify an initial value.
If the range is empty, this function calls operator*=(0) to initialise the object to 0.
References stir::sum().
|
inline |
Compute the average of a sequence using sum(start,end).
References stir::sum().
Referenced by stir::RigidObject3DTransformation::find_closest_transformation().
void stir::warning | ( | const char *const | s, |
... | |||
) |
Print warning with format string a la printf
.
The arguments are the same as if you would call printf(). The warning message is written to stderr, preceeded by "WARNING:".
Referenced by stir::AbsTimeIntervalFromDynamicData::AbsTimeIntervalFromDynamicData(), stir::AbsTimeIntervalFromECAT7ACF::AbsTimeIntervalFromECAT7ACF(), stir::GeneralisedObjectiveFunction< TargetT >::accumulate_Hessian_times_input(), stir::ecat::ecat7::ECAT966ListmodeInputFileFormat::actual_can_read(), stir::PoissonLogLikelihoodWithLinearModelForMeanAndListModeDataWithProjMatrixByBin< TargetT >::actual_subsets_are_approximately_balanced(), stir::MultiDynamicDiscretisedDensityOutputFileFormat::actual_write_to_file(), stir::ecat::ecat7::ECAT7OutputFileFormat::actual_write_to_file(), stir::ecat::ecat6::ECAT6OutputFileFormat::actual_write_to_file(), stir::ecat::ecat7::ECAT7ParametricDensityOutputFileFormat< DiscretisedDensityT >::actual_write_to_file(), stir::ITKOutputFileFormat::actual_write_to_file(), stir::GeneralisedObjectiveFunction< TargetT >::add_multiplication_with_approximate_sub_Hessian_without_penalty(), stir::FactoryRegistry< Key, Factory, Compare >::add_to_registry(), stir::DataProcessor< TargetT >::apply(), stir::KeyParser::ask_parameters(), stir::BinNormalisationSinogramRescaling::BinNormalisationSinogramRescaling(), stir::SAFIRCListmodeInputFileFormat< EventDataType >::can_read(), stir::Scanner::check_consistency(), stir::ProjMatrixElemsForOneDensel::check_state(), stir::ProjMatrixElemsForOneBin::check_state(), stir::ecat::ecat7::CListModeDataECAT< CListRecordT >::CListModeDataECAT(), stir::CListModeDataROOT::CListModeDataROOT(), stir::FilterRootPrior< DataT >::compute_value(), stir::PoissonLogLikelihoodWithLinearModelForMeanAndGatedProjDataWithMotion< TargetT >::construct_target_ptr(), stir::ModelMatrix< 2 >::convert_to_total_frame_counts(), stir::DataSymmetriesForBins_PET_CartesianGrid::DataSymmetriesForBins_PET_CartesianGrid(), stir::BloodFrameData::decay_correct_BloodFrameData(), stir::DynamicDiscretisedDensity::decay_correct_frames(), stir::PlasmaData::decay_correct_PlasmaData(), stir::ecat::ecat7::DiscretisedDensity_to_ECAT7(), stir::DiscretisedShape3D::DiscretisedShape3D(), stir::LmToProjData::do_post_normalisation(), stir::ScatterSimulation::downsample_density_image_for_scatter_points(), stir::FBP2DReconstruction::FBP2DReconstruction(), stir::FBP3DRPReconstruction::FBP3DRPReconstruction(), stir::RigidObject3DTransformation::find_closest_transformation(), stir::DetectorCoordinateMap::find_detection_position_given_cartesian_coordinate(), stir::ecat::find_ECAT_data_type(), stir::ecat::find_ECAT_system_type(), stir::find_level_width(), stir::ForwardProjectorByBin::forward_project(), stir::LmToProjData::get_bin_from_event(), stir::BinNormalisationWithCalibration::get_calib_decay_branching_ratio_factor(), stir::ecat::CListModeDataECAT8_32bit::get_empty_record_sptr(), stir::ScatterEstimation::get_iterations_num(), stir::ImagingModality::get_name(), stir::RigidObject3DMotionFromPolaris::get_rel_time_of_samples(), stir::PlasmaData::get_sample_data_in_frames(), stir::get_scale_factors_per_sinogram(), stir::ProjDataFromStream::get_sinogram(), stir::PatlakPlot::get_time_frame_definitions(), stir::CListTimeROOT::get_time_in_millisecs(), stir::ProjDataInfo::get_tof_bin(), stir::ProjDataFromStream::get_viewgram(), stir::InputStreamWithRecords< RecordT, OptionsT >::InputStreamWithRecords(), stir::inverse_SSRB(), stir::Scanner::list_names(), stir::LmToProjDataBootstrap< LmToProjDataT >::LmToProjDataBootstrap(), stir::LmToProjDataWithRandomRejection< LmToProjDataT >::LmToProjDataWithRandomRejection(), stir::ecat::ecat6::make_ECAT6_Main_header(), stir::ecat::ecat7::make_ECAT7_main_header(), stir::Scanner::operator==(), stir::KeyParser::parse(), stir::InterfilePDFSHeaderSPECT::post_processing(), stir::NonRigidObjectTransformationUsingBSplines< num_dimensions, elemT >::post_processing(), stir::MoveProjData::post_processing(), stir::ecat::ecat7::ECAT7OutputFileFormat::post_processing(), stir::ecat::ecat6::ECAT6OutputFileFormat::post_processing(), stir::ecat::ecat7::ECAT7DynamicDiscretisedDensityOutputFileFormat::post_processing(), stir::MoveImage::post_processing(), stir::ecat::ecat7::ECAT7ParametricDensityOutputFileFormat< DiscretisedDensityT >::post_processing(), stir::RigidObject3DMotionFromPolaris::post_processing(), stir::InterfileHeader::post_processing(), stir::TimeFrameMotion::post_processing(), stir::Ellipsoid::post_processing(), stir::RigidObject3DMotion::post_processing(), stir::Shape3DWithOrientation::post_processing(), stir::MatchTrackerAndScanner::post_processing(), stir::AnalyticReconstruction::post_processing(), stir::ProjDataRebinning::post_processing(), stir::PoissonLogLikelihoodWithLinearModelForMeanAndListModeDataWithProjMatrixByBin< TargetT >::post_processing(), stir::EllipsoidalCylinder::post_processing(), stir::PoissonLogLikelihoodWithLinearModelForMeanAndDynamicProjData< TargetT >::post_processing(), stir::FindMCNormFactors::post_processing(), stir::QuadraticPrior< float >::post_processing(), stir::LogcoshPrior< elemT >::post_processing(), stir::PoissonLogLikelihoodWithLinearModelForMeanAndListModeData< TargetT >::post_processing(), stir::PoissonLogLikelihoodWithLinearModelForMeanAndGatedProjDataWithMotion< TargetT >::post_processing(), stir::RelativeDifferencePrior< elemT >::post_processing(), stir::Reconstruction< DiscretisedDensity< 3, float > >::post_processing(), stir::ScatterEstimation::post_processing(), stir::InterfileImageHeader::post_processing(), stir::InterfilePDFSHeader::post_processing(), stir::LmToProjData::post_processing(), stir::PoissonLogLikelihoodWithLinearModelForMeanAndProjData< TargetT >::post_processing(), stir::OSSPSReconstruction< TargetT >::precompute_denominator_of_conditioner_without_penalty(), stir::ScatterEstimation::process_data(), stir::ProjDataInfo::ProjDataInfoCTI(), stir::ProjDataInfoCylindrical::ProjDataInfoCylindrical(), stir::ProjMatrixByBinFromFile::ProjMatrixByBinFromFile(), stir::ProjMatrixByBinUsingRayTracing::ProjMatrixByBinUsingRayTracing(), stir::ProjMatrixByBinWithPositronRange::ProjMatrixByBinWithPositronRange(), stir::ProjMatrixByDenselUsingRayTracing::ProjMatrixByDenselUsingRayTracing(), stir::RayTraceVoxelsOnCartesianGrid(), stir::detail::read_data_1d(), stir::ecat::ecat7::read_ECAT7_exam_info(), stir::GE::RDF_HDF5::GEHDF5ListmodeInputFileFormat::read_from_file(), stir::ecat::ecat6::ECAT6ImageInputFileFormat::read_from_file(), stir::ecat::ecat7::ECAT7ImageInputFileFormat::read_from_file(), stir::TimeGateDefinitions::read_gdef_file(), stir::ecat::ecat7::SinglesRatesFromECAT7::read_singles_from_file(), stir::ecat::ecat7::SinglesRatesFromSglFile::read_singles_from_sgl_file(), stir::FactoryRegistry< Key, Factory, Compare >::remove_from_registry(), stir::KeyParser::remove_key(), stir::InputStreamWithRecordsFromUPENNtxt::reset(), stir::MatchTrackerAndScanner::run(), stir::ScannerTests::run_tests(), stir::sample_function_on_regular_grid(), stir::sample_function_using_index_converter(), stir::ModelMatrix< 2 >::scale_model_matrix(), distributed::send_exam_and_proj_data_info(), stir::InterfileDynamicDiscretisedDensityOutputFileFormat::set_byte_order(), stir::MultiDynamicDiscretisedDensityOutputFileFormat::set_byte_order(), stir::ecat::ecat7::ECAT7OutputFileFormat::set_byte_order(), stir::ecat::ecat7::ECAT7DynamicDiscretisedDensityOutputFileFormat::set_byte_order(), stir::ecat::ecat6::ECAT6OutputFileFormat::set_byte_order(), stir::ecat::ecat7::ECAT7ParametricDensityOutputFileFormat< DiscretisedDensityT >::set_byte_order(), stir::ParsingObject::set_key_values(), stir::PatlakPlot::set_model_matrix(), stir::set_num_threads(), stir::ProjDataInMemory::set_segment(), stir::ProjDataFromStream::set_segment(), stir::KOSMAPOSLReconstruction< TargetT >::set_sigma_m(), stir::ProjDataInMemory::set_sinogram(), stir::ProjDataFromStream::set_sinogram(), stir::ecat::ecat7::ECAT7OutputFileFormat::set_type_of_numbers(), stir::ecat::ecat7::ECAT7DynamicDiscretisedDensityOutputFileFormat::set_type_of_numbers(), stir::ecat::ecat6::ECAT6OutputFileFormat::set_type_of_numbers(), stir::ecat::ecat7::ECAT7ParametricDensityOutputFileFormat< DiscretisedDensityT >::set_type_of_numbers(), stir::BinNormalisationWithCalibration::set_up(), stir::ProjMatrixByBinUsingInterpolation::set_up(), stir::ProjMatrixByDenselUsingRayTracing::set_up(), stir::BinNormalisationFromML2D::set_up(), stir::ArcCorrection::set_up(), stir::BinNormalisationFromProjData::set_up(), stir::ColsherFilter::set_up(), stir::ForwardProjectorByBinUsingRayTracing::set_up(), stir::GE::RDF_HDF5::BinNormalisationFromGEHDF5::set_up(), stir::ProjMatrixByBinSPECTUB::set_up(), stir::ecat::ecat7::BinNormalisationFromECAT7::set_up(), stir::InputStreamFromROOTFileForECATPET::set_up(), stir::BinNormalisationPETFromComponents::set_up(), stir::GeneralisedObjectiveFunction< TargetT >::set_up(), stir::InputStreamFromROOTFileForCylindricalPET::set_up(), stir::ecat::BinNormalisationFromECAT8::set_up(), stir::FBP2DReconstruction::set_up(), stir::ProjMatrixByBinUsingRayTracing::set_up(), stir::ProjMatrixByBinPinholeSPECTUB::set_up(), stir::OSSPSReconstruction< TargetT >::set_up(), stir::ScatterEstimation::set_up(), stir::CorrectProjDataApplication::set_up(), stir::ScatterSimulation::set_use_cache(), stir::KeyParser::set_variable(), stir::SSRB(), stir::LmToProjDataBootstrap< LmToProjDataT >::start_new_time_frame(), stir::RigidObject3DMotionFromPolaris::synchronise(), stir::transform_3d_object(), stir::ModelMatrix< 2 >::uncalibrate(), stir::ScatterEstimation::upsample_and_fit_scatter_estimate(), stir::ecat::ecat7::write_basic_interfile_header_for_ECAT7(), stir::write_basic_interfile_image_header(), stir::write_basic_interfile_PDFS_header(), stir::detail::write_data_1d(), stir::ScatterSimulation::write_log(), stir::DynamicDiscretisedDensity::write_to_ecat7(), stir::ModelMatrix< 2 >::write_to_file(), stir::ProjMatrixByBinFromFile::write_to_file(), and stir::GatedSpatialTransformation::~GatedSpatialTransformation().
|
inline |
Use this function for writing warning messages.
The argument is expected to be a string, but could be anything for which std::ostream::operator<< would work.
This function currently first writes a newline, then WARNING:
, then string
and then another newline to std::cerr.
boost::format
is useful in this context.
References stir::get().