CASToR  3.2
Tomographic Reconstruction (PET/SPECT/CT)
Public Member Functions | List of all members
iLinearPatlakModel Class Reference

This class implements the Patlak model, to model kinetics of irreversible radiotracers. More...

#include <iLinearPatlakModel.hh>

Inheritance diagram for iLinearPatlakModel:
Inheritance graph
Collaboration diagram for iLinearPatlakModel:
Collaboration graph

Public Member Functions

 iLinearPatlakModel ()
 Constructor of iLinearPatlakModel. Simply set all data members to default values. More...
 
 ~iLinearPatlakModel ()
 Destructor of iLinearPatlakModel. More...
 
int CheckSpecificParameters ()
 This function is used to check whether all member variables have been correctly initialized or not. More...
 
int ReadAndCheckConfigurationFileSpecific ()
 This function is used to read options from a configuration file. More...
 
int ReadAndCheckOptionsList (string a_listOptions)
 
int InitializeSpecific ()
 This function is used to initialize Patlak parametric images and basis functions. More...
 
void ShowHelpModelSpecific ()
 Print out specific help about the implementation of the Patlak model and its initialization. More...
 
 iLinearPatlakModel ()
 
 ~iLinearPatlakModel ()
 
int CheckSpecificParameters ()
 This function is used to check whether all member variables have been correctly initialized or not. More...
 
int ReadAndCheckConfigurationFileSpecific ()
 This function is used to read options from a configuration file. More...
 
int ReadAndCheckOptionsList (string a_listOptions)
 
int InitializeSpecific ()
 This function is used to initialize the parametric images and basis functions for all Linear Models. More...
 
void ShowHelpModelSpecific ()
 This function is used to print out specific help about the dynamic model and its options. It is pure virtual so must be implemented by children. More...
 
- Public Member Functions inherited from iLinearModel
 iLinearModel ()
 Constructor of iLinearModel. Simply set all data members to default values. More...
 
 ~iLinearModel ()
 Destructor of iLinearModel. More...
 
int CheckSpecificParametersForAllLinearModels ()
 This function is used to check parameters for all Linear Models.
. More...
 
int ReadAndCheckConfigurationFileSpecificToAllLinearModels ()
 This function is used to read parameters that are generic for all Linear Models.
. More...
 
int InitializeSpecificToAllLinearModels ()
 This function is used to initialize the parametric images and basis functions for all Linear Models. More...
 
void ShowBasisFunctions ()
 This function is used to print the basis functions. More...
 
int EstimateModelParameters (oImageSpace *ap_Image, int a_ite, int a_sset)
 
int EstimateImageWithModel (oImageSpace *ap_Image, int a_ite, int a_sset)
 
int NestedEM (oImageSpace *ap_ImageS, int a_ite)
 
int EstimateParametersWithNNLS (oImageSpace *ap_ImageS, int a_ite)
 
int Patlak_LS (oImageSpace *ap_ImageS, int a_ite)
 
 iLinearModel ()
 
 ~iLinearModel ()
 
int CheckSpecificParametersForAllLinearModels ()
 
int ReadAndCheckConfigurationFileSpecificToAllLinearModels ()
 
int InitializeSpecificToAllLinearModels ()
 
void ShowBasisFunctions ()
 
int EstimateModelParameters (oImageSpace *ap_Image, int a_ite, int a_sset)
 
int EstimateImageWithModel (oImageSpace *ap_Image, int a_ite, int a_sset)
 
int NestedEM (oImageSpace *ap_ImageS, int a_ite)
 
int EstimateParametersWithNNLS (oImageSpace *ap_ImageS, int a_ite)
 
int Patlak_LS (oImageSpace *ap_ImageS, int a_ite)
 
- Public Member Functions inherited from vDynamicModel
 vDynamicModel ()
 Constructor of vDynamicModel. Simply set all data members to default values. More...
 
virtual ~vDynamicModel ()
 Destructor of vDynamicModel. More...
 
void SetImageDimensionsAndQuantification (oImageDimensionsAndQuantification *ap_ImageDimensionsAndQuantification)
 
void SetVerbose (int a_verbose)
 
virtual int CheckParameters ()
 This function is used to check parameters after the latter have been all set using Set functions. More...
 
int ReadAndCheckConfigurationFile (string a_fileOptions)
 
int Initialize ()
 A public function used to initialize the dynamic model. More...
 
void ShowHelp ()
 This function is used to print out general help about dynamic models. More...
 
virtual int EstimateModel (oImageSpace *ap_Image, int a_ite, int a_sset)
 
virtual int EstimateImage (oImageSpace *ap_Image, int a_ite, int a_sset)
 
int SaveParametricImages (int a_iteration, int a_subset=-1)
 
virtual int ApplyOutputFOVMaskingOnParametricImages ()
 Mask the outside of the transaxial FOV based on the m_fovOutPercent. More...
 
bool GetAICflag ()
 
bool GetModelBasisFunctionsRequiredFlag ()
 
int GetNbTimeBasisFunctions ()
 
FLTNB ** GetTimeBasisFunctions ()
 
virtual void ComputeOutputParImage ()
 Compute output image using the m2p_parametricImages matrix Store the result in the m2p_outputParImages matrix. More...
 
void SetUseModelInReconstruction (bool a_useModelInReconstruction)
 
int NNLS (FLTNB **A, int m, int n, FLTNB *B, FLTNB *X, FLTNB *rnorm, FLTNB *wp, FLTNB *zzp, int *indexp)
 
 vDynamicModel ()
 
virtual ~vDynamicModel ()
 
void SetImageDimensionsAndQuantification (oImageDimensionsAndQuantification *ap_ImageDimensionsAndQuantification)
 
void SetVerbose (int a_verbose)
 
virtual int CheckParameters ()
 
int ReadAndCheckConfigurationFile (string a_fileOptions)
 
int Initialize ()
 
void ShowHelp ()
 
virtual int EstimateModel (oImageSpace *ap_Image, int a_ite, int a_sset)
 
virtual int EstimateImage (oImageSpace *ap_Image, int a_ite, int a_sset)
 
int SaveParametricImages (int a_iteration, int a_subset=-1)
 
virtual int ApplyOutputFOVMaskingOnParametricImages ()
 
bool GetAICflag ()
 
bool GetModelBasisFunctionsRequiredFlag ()
 
int GetNbTimeBasisFunctions ()
 
FLTNB ** GetTimeBasisFunctions ()
 
virtual void ComputeOutputParImage ()
 
void SetUseModelInReconstruction (bool a_useModelInReconstruction)
 
int NNLS (FLTNB **A, int m, int n, FLTNB *B, FLTNB *X, FLTNB *rnorm, FLTNB *wp, FLTNB *zzp, int *indexp)
 

Additional Inherited Members

- Protected Attributes inherited from iLinearModel
int m_OptimisationMethod
 
int m_nbRgateBF
 
int m_nbCgateBF
 
FLTNB ** m2p_respBasisFunctions
 
FLTNB ** m2p_cardBasisFunctions
 
FLTNBmp_corrBasisCoeffs
 
FLTNBmp_corrBasisFunctions
 
uint32_t m_nbLinearModelCycles
 
int m_basisFunctionsUpdStartIte
 
int m_basisFunctionsUpdRatio
 
int m_basisFunctionsUpdIdx
 
- Protected Attributes inherited from vDynamicModel
oImageDimensionsAndQuantificationmp_ID
 
int m_verbose
 
int m_nbTimeBF
 
int m_nbWeightFactors
 
int m_nbModelParam
 
int m_nbRGModelParam
 
int m_nbCGModelParam
 
string m_AICfile
 
oArterialInputCurvemp_ArterialInputCurve
 
FLTNB ** m2p_parametricImages
 
FLTNBmp_blackListedvoxelsImage
 
FLTNB ** m2p_nestedModelTimeBasisFunctions
 
FLTNB ** m2p_outputParImages
 
FLTNB ** m2p_RGParametricImages
 
FLTNB ** m2p_CGParametricImages
 
string m_fileOptions
 
string m_listOptions
 
bool m_checked
 
bool m_initialized
 
bool m_useModelInReconstruction
 
bool m_saveParImageFlag
 
bool m_saveBlacklistedImageMaskFlag
 
bool m_AICfileProvided
 
bool m_ModelSpecificBasisFunctionsRequired
 
bool m_noImageUpdateFlag
 
bool m_noParametersUpdateFlag
 
int m_startIteUpdateFlag
 
FLTNBmp_maskModel
 
INTNB m_nbVoxelsMask
 
FLTNBmp_w
 
FLTNB *** m3p_nnlsA
 
FLTNB ** m2p_nnlsB
 
FLTNB ** m2p_nnlsMat
 
FLTNB ** m2p_nnlsX
 
FLTNB ** m2p_nnlsWp
 
int ** m2p_nnlsIdx
 
uint16_t m_nnlsN =0
 

Detailed Description

This class implements the Patlak model, to model kinetics of irreversible radiotracers.

Definition at line 25 of file code/include/dynamic/iLinearPatlakModel.hh.

Constructor & Destructor Documentation

◆ iLinearPatlakModel() [1/2]

iLinearPatlakModel::iLinearPatlakModel ( )

Constructor of iLinearPatlakModel. Simply set all data members to default values.

Definition at line 19 of file code/src/dynamic/iLinearPatlakModel.cc.

◆ ~iLinearPatlakModel() [1/2]

iLinearPatlakModel::~iLinearPatlakModel ( )

Destructor of iLinearPatlakModel.

Definition at line 40 of file code/src/dynamic/iLinearPatlakModel.cc.

◆ iLinearPatlakModel() [2/2]

iLinearPatlakModel::iLinearPatlakModel ( )

◆ ~iLinearPatlakModel() [2/2]

iLinearPatlakModel::~iLinearPatlakModel ( )

Member Function Documentation

◆ CheckSpecificParameters() [1/2]

int iLinearPatlakModel::CheckSpecificParameters ( )
virtual

This function is used to check whether all member variables have been correctly initialized or not.

Returns
0 if success, positive value otherwise.

Reimplemented from iLinearModel.

Definition at line 174 of file code/src/dynamic/iLinearPatlakModel.cc.

Here is the call graph for this function:

◆ CheckSpecificParameters() [2/2]

int iLinearPatlakModel::CheckSpecificParameters ( )
virtual

This function is used to check whether all member variables have been correctly initialized or not.

Returns
0 if success, positive value otherwise.

Reimplemented from iLinearModel.

◆ InitializeSpecific() [1/2]

int iLinearPatlakModel::InitializeSpecific ( )
virtual

This function is used to initialize Patlak parametric images and basis functions.

Returns
0 if success, other value otherwise.
0 if success, other value otherwise.

Reimplemented from iLinearModel.

Definition at line 198 of file code/src/dynamic/iLinearPatlakModel.cc.

Here is the call graph for this function:

◆ InitializeSpecific() [2/2]

int iLinearPatlakModel::InitializeSpecific ( )
virtual

This function is used to initialize the parametric images and basis functions for all Linear Models.

Returns
0 if success, other value otherwise.
0 if success, other value otherwise.

Reimplemented from iLinearModel.

◆ ReadAndCheckConfigurationFileSpecific() [1/2]

int iLinearPatlakModel::ReadAndCheckConfigurationFileSpecific ( )
virtual

This function is used to read options from a configuration file.

Returns
0 if success, other value otherwise.

Reimplemented from iLinearModel.

Definition at line 126 of file code/src/dynamic/iLinearPatlakModel.cc.

Here is the call graph for this function:

◆ ReadAndCheckConfigurationFileSpecific() [2/2]

int iLinearPatlakModel::ReadAndCheckConfigurationFileSpecific ( )
virtual

This function is used to read options from a configuration file.

Returns
0 if success, other value otherwise.

Reimplemented from iLinearModel.

◆ ReadAndCheckOptionsList() [1/2]

int iLinearPatlakModel::ReadAndCheckOptionsList ( string  a_listOptions)
virtual

Reimplemented from iLinearModel.

◆ ReadAndCheckOptionsList() [2/2]

int iLinearPatlakModel::ReadAndCheckOptionsList ( string  a_listOptions)
virtual

Reimplemented from iLinearModel.

Definition at line 152 of file code/src/dynamic/iLinearPatlakModel.cc.

◆ ShowHelpModelSpecific() [1/2]

void iLinearPatlakModel::ShowHelpModelSpecific ( )
virtual

This function is used to print out specific help about the dynamic model and its options. It is pure virtual so must be implemented by children.

Reimplemented from iLinearModel.

◆ ShowHelpModelSpecific() [2/2]

void iLinearPatlakModel::ShowHelpModelSpecific ( )
virtual

Print out specific help about the implementation of the Patlak model and its initialization.

Reimplemented from iLinearModel.

Definition at line 60 of file code/src/dynamic/iLinearPatlakModel.cc.

Here is the call graph for this function:

The documentation for this class was generated from the following files: