Medical Imaging Interaction Toolkit  2026.06.00
Medical Imaging Interaction Toolkit
mitk::ExtendedOneTissueCompartmentModel Class Reference

Implementation of the extended one-tissue compartment model for PET pharmacokinetics. More...

#include <mitkExtendedOneTissueCompartmentModel.h>

Inheritance diagram for mitk::ExtendedOneTissueCompartmentModel:
Collaboration diagram for mitk::ExtendedOneTissueCompartmentModel:

Public Types

typedef ExtendedOneTissueCompartmentModel Self
 
typedef AIFBasedModelBase Superclass
 
typedef itk::SmartPointer< Self > Pointer
 
typedef itk::SmartPointer< const Self > ConstPointer
 
- Public Types inherited from mitk::AIFBasedModelBase
typedef AIFBasedModelBase Self
 
typedef ModelBase Superclass
 
typedef itk::SmartPointer< Self > Pointer
 
typedef itk::SmartPointer< const Self > ConstPointer
 
typedef itk::Array< double > AterialInputFunctionType
 Array type for the Arterial Input Function AIF(t). More...
 
- Public Types inherited from mitk::ModelBase
typedef ModelBase Self
 
typedef itk::Object Superclass
 
typedef itk::SmartPointer< Self > Pointer
 
typedef itk::SmartPointer< const Self > ConstPointer
 
typedef ModelTraitsInterface::ModelResultType ModelResultType
 
typedef ModelTraitsInterface::ParameterValueType ParameterValueType
 
typedef ModelTraitsInterface::ParametersType ParametersType
 
typedef itk::Array< double > TimeGridType
 Type defining the time grid used by models. More...
 
typedef ModelTraitsInterface::ParameterNameType ParameterNameType
 
typedef ModelTraitsInterface::ParameterNamesType ParameterNamesType
 
typedef ModelTraitsInterface::ParametersSizeType ParametersSizeType
 
typedef ModelTraitsInterface::DerivedParameterNamesType DerivedParameterNamesType
 
typedef ModelTraitsInterface::DerivedParametersSizeType DerivedParametersSizeType
 
typedef double StaticParameterValueType
 
typedef std::vector< StaticParameterValueType > StaticParameterValuesType
 
typedef std::map< ParameterNameType, StaticParameterValuesType > StaticParameterMapType
 
typedef double DerivedParameterValueType
 
typedef std::map< ParameterNameType, DerivedParameterValueType > DerivedParameterMapType
 
- Public Types inherited from mitk::ModelTraitsInterface
typedef itk::Array< double > ModelResultType
 Type representing the model output signal as an array of doubles. More...
 
using ParameterValueType = double
 Type of a single parameter value. More...
 
typedef itk::Array< ParameterValueType > ParametersType
 Type representing a vector of parameter values. More...
 
typedef std::string ParameterNameType
 Type used for parameter names. More...
 
typedef std::vector< ParameterNameType > ParameterNamesType
 Type for a list of parameter names. More...
 
typedef ParametersType::SizeValueType ParametersSizeType
 Type for the count of parameters. More...
 
typedef ParameterNamesType DerivedParameterNamesType
 Type for a list of derived parameter names. More...
 
typedef ParametersSizeType DerivedParametersSizeType
 Type for the count of derived parameters. More...
 
typedef std::map< ParameterNameType, double > ParamterScaleMapType
 Map type associating parameter names to their scaling factors. More...
 
typedef std::map< ParameterNameType, std::string > ParamterUnitMapType
 Map type associating parameter names to their unit strings. More...
 
typedef std::map< ParameterNameType, double > DerivedParamterScaleMapType
 Map type associating derived parameter names to their scaling factors. More...
 
typedef std::map< ParameterNameType, std::string > DerivedParamterUnitMapType
 Map type associating derived parameter names to their unit strings. More...
 
typedef std::string FunctionStringType
 Type for the function string representation of the model. More...
 
typedef std::string ModellClassIDType
 Type for the unique class identifier of the model. More...
 

Public Member Functions

Pointer Clone () const
 
virtual const char * GetClassName () const
 
std::string GetModelDisplayName () const override
 Default implementation returns GetClassID as display name. More...
 
std::string GetModelType () const override
 Default implementation returns "Unknown" as model type. More...
 
ParameterNamesType GetParameterNames () const override
 Returns the names of parameters that must be defined when using the model to compute the signal (GetSignal()). More...
 
ParametersSizeType GetNumberOfParameters () const override
 Returns the number of parameters that must be defined when using the model to compute the signal (GetSignal()). More...
 
ParamterUnitMapType GetParameterUnits () const override
 Default implementation returns no unit string ("") for every defined parameter. More...
 
- Public Member Functions inherited from mitk::AIFBasedModelBase
virtual const AterialInputFunctionType & GetAterialInputFunctionValues ()
 Returns the currently set AIF concentration values. More...
 
virtual const TimeGridType & GetAterialInputFunctionTimeGrid ()
 Returns the currently set AIF time grid. More...
 
virtual void SetAterialInputFunctionValues (AterialInputFunctionType _arg)
 Sets the AIF concentration values. More...
 
virtual void SetAterialInputFunctionTimeGrid (TimeGridType _arg)
 Sets the AIF time grid. More...
 
std::string GetXAxisName () const override
 Returns the X axis name ("Time"). More...
 
std::string GetXAxisUnit () const override
 Returns the X axis unit ("s"). More...
 
std::string GetYAxisName () const override
 Returns the Y axis name ("Concentration"). More...
 
std::string GetYAxisUnit () const override
 Returns the Y axis unit ("mM"). More...
 
const TimeGridType & GetCurrentAterialInputFunctionTimeGrid () const
 Returns the time grid currently used for the AIF. More...
 
const AterialInputFunctionType GetAterialInputFunction (TimeGridType currentTimeGrid) const
 Returns the AIF values interpolated to the given time grid. More...
 
ParameterNamesType GetStaticParameterNames () const override
 Returns the names of all static parameters (AIF, AIF time grid). More...
 
ParametersSizeType GetNumberOfStaticParameters () const override
 Returns the number of static parameters (always 2). More...
 
ParamterUnitMapType GetStaticParameterUnits () const override
 Returns the unit map for all static parameters. More...
 
- Public Member Functions inherited from mitk::ModelBase
ParamterScaleMapType GetParameterScales () const override
 Default implementation returns a scale of 1.0 for every defined parameter. More...
 
DerivedParamterScaleMapType GetDerivedParameterScales () const override
 Default implementation returns a scale of 1.0 for every defined derived parameter. More...
 
DerivedParamterUnitMapType GetDerivedParameterUnits () const override
 Default implementation returns no unit string ("") for every defined derived parameter. More...
 
FunctionStringType GetFunctionString () const override
 Default implementation returns an empty function string. More...
 
ModellClassIDType GetClassID () const override
 Default implementation returns the class name of the concrete instance as ID. More...
 
std::string GetXName () const override
 Default implementation returns an empty string. More...
 
DerivedParameterNamesType GetDerivedParameterNames () const override
 Returns the names of derived parameters that can be computed by the model. More...
 
DerivedParametersSizeType GetNumberOfDerivedParameters () const override
 Returns the number of derived parameters that can be computed by the model. More...
 
void SetStaticParameters (const StaticParameterMapType &parameters, bool allParameters=true)
 Sets the static parameters of the model before it is used. More...
 
StaticParameterMapType GetStaticParameters () const
 Retrieves the static parameters of the model (e.g. for serialization). More...
 
DerivedParameterMapType GetDerivedParameters (const ParametersType &parameters) const
 Computes all derived parameters for the given model parameters. More...
 
virtual void SetTimeGrid (const TimeGridType &grid)
 Sets the time grid of the model. More...
 
virtual const TimeGridType & GetTimeGrid ()
 Gets the time grid of the model. More...
 
ModelResultType GetSignal (const ParametersType &parameters) const
 Computes and returns the model signal for the given parameters. More...
 

Static Public Member Functions

static Pointer New ()
 

Static Public Attributes

static const std::string MODEL_DISPLAY_NAME
 
static const std::string NAME_PARAMETER_K1
 
static const std::string NAME_PARAMETER_k2
 
static const std::string NAME_PARAMETER_vb
 
static const std::string UNIT_PARAMETER_K1
 
static const std::string UNIT_PARAMETER_k2
 
static const std::string UNIT_PARAMETER_vb
 
static const unsigned int POSITION_PARAMETER_K1
 
static const unsigned int POSITION_PARAMETER_k2
 
static const unsigned int POSITION_PARAMETER_vb
 
static const unsigned int NUMBER_OF_PARAMETERS
 
static const std::string MODEL_TYPE
 
- Static Public Attributes inherited from mitk::AIFBasedModelBase
static const std::string NAME_STATIC_PARAMETER_AIF
 Name identifier for the AIF static parameter ("Arterial Input Function"). More...
 
static const std::string NAME_STATIC_PARAMETER_AIFTimeGrid
 Name identifier for the AIF time grid static parameter. More...
 
static const std::string UNIT_STATIC_PARAMETER_AIF
 Unit string for the AIF static parameter (mM). More...
 
static const std::string UNIT_STATIC_PARAMETER_AIFTimeGrid
 Unit string for the AIF time grid static parameter (s). More...
 
static const unsigned int NUMBER_OF_STATIC_PARAMETERS
 Number of static parameters (AIF values + AIF time grid = 2). More...
 
static const std::string X_AXIS_NAME
 Display name for the X axis ("Time"). More...
 
static const std::string X_AXIS_UNIT
 Unit for the X axis ("s"). More...
 
static const std::string Y_AXIS_NAME
 Display name for the Y axis ("Concentration"). More...
 
static const std::string Y_AXIS_UNIT
 Unit for the Y axis ("mM"). More...
 

Protected Member Functions

 ExtendedOneTissueCompartmentModel ()
 
 ~ExtendedOneTissueCompartmentModel () override
 
 ExtendedOneTissueCompartmentModel (const ExtendedOneTissueCompartmentModel &source)
 
 mitkCloneMacro (ExtendedOneTissueCompartmentModel)
 
ModelResultType ComputeModelfunction (const ParametersType &parameters) const override
 Computes the model function for the given parameters. More...
 
void PrintSelf (std::ostream &os, ::itk::Indent indent) const override
 
- Protected Member Functions inherited from mitk::AIFBasedModelBase
 AIFBasedModelBase ()
 
 ~AIFBasedModelBase () override
 
 AIFBasedModelBase (const AIFBasedModelBase &source)
 
bool ValidateModel (std::string &error) const override
 
void PrintSelf (std::ostream &os, ::itk::Indent indent) const override
 
void SetStaticParameter (const ParameterNameType &name, const StaticParameterValuesType &values) override
 Sets a single static parameter by name. More...
 
StaticParameterValuesType GetStaticParameterValue (const ParameterNameType &name) const override
 Retrieves a single static parameter value by name. More...
 
- Protected Member Functions inherited from mitk::ModelBase
virtual DerivedParameterMapType ComputeDerivedParameters (const ParametersType &parameters) const
 Computes derived parameters from the given model parameters. More...
 
 ModelBase ()
 
 ~ModelBase () override
 
 ModelBase (const ModelBase &source)
 
void PrintSelf (std::ostream &os, ::itk::Indent indent) const override
 
- Protected Member Functions inherited from mitk::ModelTraitsInterface
 ModelTraitsInterface ()
 
virtual ~ModelTraitsInterface ()
 

Additional Inherited Members

- Protected Attributes inherited from mitk::AIFBasedModelBase
TimeGridType m_AterialInputFunctionTimeGrid
 
AterialInputFunctionType m_AterialInputFunctionValues
 
- Protected Attributes inherited from mitk::ModelBase
TimeGridType m_TimeGrid
 

Detailed Description

Implementation of the extended one-tissue compartment model for PET pharmacokinetics.

Extends the standard one-tissue compartment model with an additional blood volume fraction parameter (vb). Models the tissue concentration as a combination of the blood contribution and a single-compartment residue function.

Fitted parameters: K1 (influx rate constant), k2 (efflux rate constant), vb (blood volume fraction).

See also
OneTissueCompartmentModel, TwoTissueCompartmentModel, AIFBasedModelBase

Definition at line 34 of file mitkExtendedOneTissueCompartmentModel.h.

Member Typedef Documentation

◆ ConstPointer

◆ Pointer

◆ Self

◆ Superclass

Constructor & Destructor Documentation

◆ ExtendedOneTissueCompartmentModel() [1/2]

mitk::ExtendedOneTissueCompartmentModel::ExtendedOneTissueCompartmentModel ( )
protected

◆ ~ExtendedOneTissueCompartmentModel()

mitk::ExtendedOneTissueCompartmentModel::~ExtendedOneTissueCompartmentModel ( )
overrideprotected

◆ ExtendedOneTissueCompartmentModel() [2/2]

mitk::ExtendedOneTissueCompartmentModel::ExtendedOneTissueCompartmentModel ( const ExtendedOneTissueCompartmentModel &  source)
protected

Member Function Documentation

◆ Clone()

Pointer mitk::ExtendedOneTissueCompartmentModel::Clone ( ) const

◆ ComputeModelfunction()

ModelResultType mitk::ExtendedOneTissueCompartmentModel::ComputeModelfunction ( const ParametersType &  parameters) const
overrideprotectedvirtual

Computes the model function for the given parameters.

Must be implemented by derived classes.

Parameters
parametersThe model parameters.
Returns
The computed model result.

Implements mitk::ModelBase.

◆ GetClassName()

virtual const char* mitk::ExtendedOneTissueCompartmentModel::GetClassName ( ) const
virtual

Run-time type information (and related methods).

Reimplemented from mitk::AIFBasedModelBase.

◆ GetModelDisplayName()

std::string mitk::ExtendedOneTissueCompartmentModel::GetModelDisplayName ( ) const
overridevirtual

Default implementation returns GetClassID as display name.

Reimplemented from mitk::ModelBase.

◆ GetModelType()

std::string mitk::ExtendedOneTissueCompartmentModel::GetModelType ( ) const
overridevirtual

Default implementation returns "Unknown" as model type.

Reimplemented from mitk::ModelBase.

◆ GetNumberOfParameters()

ParametersSizeType mitk::ExtendedOneTissueCompartmentModel::GetNumberOfParameters ( ) const
overridevirtual

Returns the number of parameters that must be defined when using the model to compute the signal (GetSignal()).

Returns
The number of model parameters.

Implements mitk::ModelTraitsInterface.

◆ GetParameterNames()

ParameterNamesType mitk::ExtendedOneTissueCompartmentModel::GetParameterNames ( ) const
overridevirtual

Returns the names of parameters that must be defined when using the model to compute the signal (GetSignal()).

Returns
A vector of parameter name strings.

Implements mitk::ModelTraitsInterface.

◆ GetParameterUnits()

ParamterUnitMapType mitk::ExtendedOneTissueCompartmentModel::GetParameterUnits ( ) const
overridevirtual

Default implementation returns no unit string ("") for every defined parameter.

Reimplemented from mitk::ModelBase.

◆ mitkCloneMacro()

mitk::ExtendedOneTissueCompartmentModel::mitkCloneMacro ( ExtendedOneTissueCompartmentModel  )
protected

◆ New()

static Pointer mitk::ExtendedOneTissueCompartmentModel::New ( )
static

Method for creation through the object factory.

◆ PrintSelf()

void mitk::ExtendedOneTissueCompartmentModel::PrintSelf ( std::ostream &  os,
::itk::Indent  indent 
) const
overrideprotected

Member Data Documentation

◆ MODEL_DISPLAY_NAME

const std::string mitk::ExtendedOneTissueCompartmentModel::MODEL_DISPLAY_NAME
static

Definition at line 50 of file mitkExtendedOneTissueCompartmentModel.h.

◆ MODEL_TYPE

const std::string mitk::ExtendedOneTissueCompartmentModel::MODEL_TYPE
static

Definition at line 66 of file mitkExtendedOneTissueCompartmentModel.h.

◆ NAME_PARAMETER_K1

const std::string mitk::ExtendedOneTissueCompartmentModel::NAME_PARAMETER_K1
static

Definition at line 52 of file mitkExtendedOneTissueCompartmentModel.h.

◆ NAME_PARAMETER_k2

const std::string mitk::ExtendedOneTissueCompartmentModel::NAME_PARAMETER_k2
static

Definition at line 53 of file mitkExtendedOneTissueCompartmentModel.h.

◆ NAME_PARAMETER_vb

const std::string mitk::ExtendedOneTissueCompartmentModel::NAME_PARAMETER_vb
static

Definition at line 54 of file mitkExtendedOneTissueCompartmentModel.h.

◆ NUMBER_OF_PARAMETERS

const unsigned int mitk::ExtendedOneTissueCompartmentModel::NUMBER_OF_PARAMETERS
static

Definition at line 64 of file mitkExtendedOneTissueCompartmentModel.h.

◆ POSITION_PARAMETER_K1

const unsigned int mitk::ExtendedOneTissueCompartmentModel::POSITION_PARAMETER_K1
static

Definition at line 60 of file mitkExtendedOneTissueCompartmentModel.h.

◆ POSITION_PARAMETER_k2

const unsigned int mitk::ExtendedOneTissueCompartmentModel::POSITION_PARAMETER_k2
static

Definition at line 61 of file mitkExtendedOneTissueCompartmentModel.h.

◆ POSITION_PARAMETER_vb

const unsigned int mitk::ExtendedOneTissueCompartmentModel::POSITION_PARAMETER_vb
static

Definition at line 62 of file mitkExtendedOneTissueCompartmentModel.h.

◆ UNIT_PARAMETER_K1

const std::string mitk::ExtendedOneTissueCompartmentModel::UNIT_PARAMETER_K1
static

Definition at line 56 of file mitkExtendedOneTissueCompartmentModel.h.

◆ UNIT_PARAMETER_k2

const std::string mitk::ExtendedOneTissueCompartmentModel::UNIT_PARAMETER_k2
static

Definition at line 57 of file mitkExtendedOneTissueCompartmentModel.h.

◆ UNIT_PARAMETER_vb

const std::string mitk::ExtendedOneTissueCompartmentModel::UNIT_PARAMETER_vb
static

Definition at line 58 of file mitkExtendedOneTissueCompartmentModel.h.


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