Medical Imaging Interaction Toolkit  2023.12.99-27cb8410 Medical Imaging Interaction Toolkit
mitk::TwoCompartmentExchangeModel Class Reference

Implementation of the analystical model function of the Physiological Pharmacokinetic Brix model, using an Aterial Input Function The Model calculates the Concentration-Time-Curve as a convolution of the Aterial Input funciton CA(t) and a tissue specific residue function R(t). The Residue funktion consists of two parts: The Residue funktion Qp(t) of the Blood Plasma p and the residue funktion Qi(t) of the interstitial volume I. Ctotal(t) = vp * Cp(t) + fi * Ci(t) = [vp * Qp(t) + fi * Qi(t)] conv CA(t) = Qtotal(t) conv CA(t) where vp=Vp/VT and fi=Vi/VT are the portion of Plasma/interstitial volume Vp/VI of the total volume VT respectively. The Residuefunctions are described by Qp(t) = F/Vp * PS/Vp * 1/(l2 - l1) [ µ2 exp(l1*t) - µ1 exp(l2*t)] sig(t) Qi(t) = F/Vp * PS/Vi * 1/(l1 - l2) [ exp(l1*t) - exp(l2*t)] sig(t) = F/Vp * PS/Vp * vp/fi * 1/(l1 - l2) [ exp(l1*t) - exp(l2*t)] sig(t) with l1/2 = -1/2 (PS/Vp * vp/fi + PS/Vp + F/Vp) +/- sqrt((PS/Vp * vp/fi + PS/Vp + F/Vp)² - 4* F/Vp * PS/Vp * vp/fi) µ1/2 = F/Vp * Vp/PS + 1 + Vp/PS* l1/2. More...

#include <mitkTwoCompartmentExchangeModel.h>

Inheritance diagram for mitk::TwoCompartmentExchangeModel:
Collaboration diagram for mitk::TwoCompartmentExchangeModel:

## Public Types

typedef TwoCompartmentExchangeModel Self

typedef AIFBasedModelBase Superclass

typedef itk::SmartPointer< SelfPointer

typedef itk::SmartPointer< const SelfConstPointer

Public Types inherited from mitk::AIFBasedModelBase
typedef AIFBasedModelBase Self

typedef ModelBase Superclass

typedef itk::SmartPointer< SelfPointer

typedef itk::SmartPointer< const SelfConstPointer

typedef itk::Array< double > AterialInputFunctionType

Public Types inherited from mitk::ModelBase
typedef ModelBase Self

typedef itk::Object Superclass

typedef itk::SmartPointer< SelfPointer

typedef itk::SmartPointer< const SelfConstPointer

typedef ModelTraitsInterface::ModelResultType ModelResultType

typedef ModelTraitsInterface::ParameterValueType ParameterValueType

typedef ModelTraitsInterface::ParametersType ParametersType

typedef itk::Array< double > TimeGridType

typedef ModelTraitsInterface::ParameterNameType ParameterNameType

typedef ModelTraitsInterface::ParameterNamesType ParameterNamesType

typedef ModelTraitsInterface::DerivedParameterNamesType DerivedParameterNamesType

typedef double StaticParameterValueType

typedef std::vector< StaticParameterValueTypeStaticParameterValuesType

typedef std::map< ParameterNameType, StaticParameterValuesTypeStaticParameterMapType

typedef double DerivedParameterValueType

typedef std::map< ParameterNameType, DerivedParameterValueTypeDerivedParameterMapType

Public Types inherited from mitk::ModelTraitsInterface
typedef itk::Array< double > ModelResultType

using ParameterValueType = double

typedef itk::Array< ParameterValueTypeParametersType

typedef std::string ParameterNameType

typedef std::vector< ParameterNameTypeParameterNamesType

typedef ParameterNamesType DerivedParameterNamesType

typedef std::map< ParameterNameType, double > ParamterScaleMapType

typedef std::map< ParameterNameType, std::string > ParamterUnitMapType

typedef std::map< ParameterNameType, double > DerivedParamterScaleMapType

typedef std::map< ParameterNameType, std::string > DerivedParamterUnitMapType

typedef std::string FunctionStringType

typedef std::string ModellClassIDType

## Public Member Functions

Pointer Clone () const

virtual const char * GetClassName () const

std::string GetModelDisplayName () const override

std::string GetModelType () const override

ParameterNamesType GetParameterNames () const override

ParamterUnitMapType GetParameterUnits () const override

Public Member Functions inherited from mitk::AIFBasedModelBase
virtual const AterialInputFunctionTypeGetAterialInputFunctionValues ()

virtual const TimeGridTypeGetAterialInputFunctionTimeGrid ()

virtual void SetAterialInputFunctionValues (AterialInputFunctionType _arg)

virtual void SetAterialInputFunctionTimeGrid (TimeGridType _arg)

std::string GetXAxisName () const override

std::string GetXAxisUnit () const override

std::string GetYAxisName () const override

std::string GetYAxisUnit () const override

const TimeGridTypeGetCurrentAterialInputFunctionTimeGrid () const

const AterialInputFunctionType GetAterialInputFunction (TimeGridType currentTimeGrid) const

ParameterNamesType GetStaticParameterNames () const override

ParamterUnitMapType GetStaticParameterUnits () const override

Public Member Functions inherited from mitk::ModelBase
ParamterScaleMapType GetParameterScales () const override

DerivedParamterScaleMapType GetDerivedParameterScales () const override

DerivedParamterUnitMapType GetDerivedParameterUnits () const override

FunctionStringType GetFunctionString () const override

ModellClassIDType GetClassID () const override

std::string GetXName () const override

DerivedParameterNamesType GetDerivedParameterNames () const override

void SetStaticParameters (const StaticParameterMapType &parameters, bool allParameters=true)

StaticParameterMapType GetStaticParameters () const

DerivedParameterMapType GetDerivedParameters (const ParametersType &parameters) const

virtual void SetTimeGrid (const TimeGridType &grid)

virtual const TimeGridTypeGetTimeGrid ()

ModelResultType GetSignal (const ParametersType &parameters) const

## Static Public Member Functions

static Pointer New ()

## Static Public Attributes

static const std::string NAME_PARAMETER_F

static const std::string NAME_PARAMETER_PS

static const std::string NAME_PARAMETER_ve

static const std::string NAME_PARAMETER_vp

static const unsigned int POSITION_PARAMETER_F

static const unsigned int POSITION_PARAMETER_PS

static const unsigned int POSITION_PARAMETER_ve

static const unsigned int POSITION_PARAMETER_vp

static const std::string UNIT_PARAMETER_F

static const std::string UNIT_PARAMETER_PS

static const std::string UNIT_PARAMETER_ve

static const std::string UNIT_PARAMETER_vp

static const unsigned int NUMBER_OF_PARAMETERS

static const std::string MODEL_DISPLAY_NAME

static const std::string MODEL_TYPE

Static Public Attributes inherited from mitk::AIFBasedModelBase
static const std::string NAME_STATIC_PARAMETER_AIF

static const std::string NAME_STATIC_PARAMETER_AIFTimeGrid

static const std::string UNIT_STATIC_PARAMETER_AIF

static const std::string UNIT_STATIC_PARAMETER_AIFTimeGrid

static const unsigned int NUMBER_OF_STATIC_PARAMETERS

static const std::string X_AXIS_NAME

static const std::string X_AXIS_UNIT

static const std::string Y_AXIS_NAME

static const std::string Y_AXIS_UNIT

## Protected Member Functions

TwoCompartmentExchangeModel ()

~TwoCompartmentExchangeModel () override

itk::LightObject::Pointer InternalClone () const override

ModelResultType ComputeModelfunction (const ParametersType &parameters) const override

void PrintSelf (std::ostream &os, ::itk::Indent indent) const override

Protected Member Functions inherited from mitk::AIFBasedModelBase
AIFBasedModelBase ()

~AIFBasedModelBase () override

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

StaticParameterValuesType GetStaticParameterValue (const ParameterNameType &name) const override

Protected Member Functions inherited from mitk::ModelBase
virtual DerivedParameterMapType ComputeDerivedParameters (const ParametersType &parameters) const

ModelBase ()

~ModelBase () override

void PrintSelf (std::ostream &os, ::itk::Indent indent) const override

Protected Member Functions inherited from mitk::ModelTraitsInterface
ModelTraitsInterface ()

virtual ~ModelTraitsInterface ()

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 analystical model function of the Physiological Pharmacokinetic Brix model, using an Aterial Input Function The Model calculates the Concentration-Time-Curve as a convolution of the Aterial Input funciton CA(t) and a tissue specific residue function R(t). The Residue funktion consists of two parts: The Residue funktion Qp(t) of the Blood Plasma p and the residue funktion Qi(t) of the interstitial volume I. Ctotal(t) = vp * Cp(t) + fi * Ci(t) = [vp * Qp(t) + fi * Qi(t)] conv CA(t) = Qtotal(t) conv CA(t) where vp=Vp/VT and fi=Vi/VT are the portion of Plasma/interstitial volume Vp/VI of the total volume VT respectively. The Residuefunctions are described by Qp(t) = F/Vp * PS/Vp * 1/(l2 - l1) [ µ2 exp(l1*t) - µ1 exp(l2*t)] sig(t) Qi(t) = F/Vp * PS/Vi * 1/(l1 - l2) [ exp(l1*t) - exp(l2*t)] sig(t) = F/Vp * PS/Vp * vp/fi * 1/(l1 - l2) [ exp(l1*t) - exp(l2*t)] sig(t) with l1/2 = -1/2 (PS/Vp * vp/fi + PS/Vp + F/Vp) +/- sqrt((PS/Vp * vp/fi + PS/Vp + F/Vp)² - 4* F/Vp * PS/Vp * vp/fi) µ1/2 = F/Vp * Vp/PS + 1 + Vp/PS* l1/2.

The parameters PS/Vp, F/Vp, vp and fi are subject to the fitting routine

Definition at line 40 of file mitkTwoCompartmentExchangeModel.h.

## ◆ ConstPointer

 typedef itk::SmartPointer< const Self > mitk::TwoCompartmentExchangeModel::ConstPointer

Definition at line 47 of file mitkTwoCompartmentExchangeModel.h.

## ◆ Pointer

Definition at line 46 of file mitkTwoCompartmentExchangeModel.h.

## ◆ Self

Definition at line 44 of file mitkTwoCompartmentExchangeModel.h.

## ◆ Superclass

Definition at line 45 of file mitkTwoCompartmentExchangeModel.h.

## ◆ TwoCompartmentExchangeModel()

 mitk::TwoCompartmentExchangeModel::TwoCompartmentExchangeModel ( )
protected

## ◆ ~TwoCompartmentExchangeModel()

 mitk::TwoCompartmentExchangeModel::~TwoCompartmentExchangeModel ( )
overrideprotected

## ◆ Clone()

 Pointer mitk::TwoCompartmentExchangeModel::Clone ( ) const

## ◆ ComputeModelfunction()

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

Implements mitk::ModelBase.

## ◆ GetClassName()

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

Run-time type information (and related methods).

Reimplemented from mitk::AIFBasedModelBase.

## ◆ GetModelDisplayName()

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

Default implementation returns GetClassID as display name.

Reimplemented from mitk::ModelBase.

## ◆ GetModelType()

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

Default implementation returns "Unkown" as model type.

Reimplemented from mitk::ModelBase.

## ◆ GetNumberOfParameters()

overridevirtual

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

Implements mitk::ModelTraitsInterface.

## ◆ GetParameterNames()

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

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

Implements mitk::ModelTraitsInterface.

## ◆ GetParameterUnits()

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

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

Reimplemented from mitk::ModelBase.

## ◆ InternalClone()

 itk::LightObject::Pointer mitk::TwoCompartmentExchangeModel::InternalClone ( ) const
overrideprotected

Actual implementation of the clone method. This method should be reimplemeted in subclasses to clone the extra required parameters.

## ◆ New()

 static Pointer mitk::TwoCompartmentExchangeModel::New ( )
static

Method for creation through the object factory.

## ◆ PrintSelf()

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

## ◆ MODEL_DISPLAY_NAME

 const std::string mitk::TwoCompartmentExchangeModel::MODEL_DISPLAY_NAME
static

Definition at line 75 of file mitkTwoCompartmentExchangeModel.h.

## ◆ MODEL_TYPE

 const std::string mitk::TwoCompartmentExchangeModel::MODEL_TYPE
static

Definition at line 77 of file mitkTwoCompartmentExchangeModel.h.

## ◆ NAME_PARAMETER_F

 const std::string mitk::TwoCompartmentExchangeModel::NAME_PARAMETER_F
static

Model Specifications

Definition at line 54 of file mitkTwoCompartmentExchangeModel.h.

## ◆ NAME_PARAMETER_PS

 const std::string mitk::TwoCompartmentExchangeModel::NAME_PARAMETER_PS
static

Definition at line 59 of file mitkTwoCompartmentExchangeModel.h.

## ◆ NAME_PARAMETER_ve

 const std::string mitk::TwoCompartmentExchangeModel::NAME_PARAMETER_ve
static

Definition at line 60 of file mitkTwoCompartmentExchangeModel.h.

## ◆ NAME_PARAMETER_vp

 const std::string mitk::TwoCompartmentExchangeModel::NAME_PARAMETER_vp
static

Definition at line 61 of file mitkTwoCompartmentExchangeModel.h.

## ◆ NUMBER_OF_PARAMETERS

 const unsigned int mitk::TwoCompartmentExchangeModel::NUMBER_OF_PARAMETERS
static

Definition at line 73 of file mitkTwoCompartmentExchangeModel.h.

## ◆ POSITION_PARAMETER_F

 const unsigned int mitk::TwoCompartmentExchangeModel::POSITION_PARAMETER_F
static

Definition at line 63 of file mitkTwoCompartmentExchangeModel.h.

## ◆ POSITION_PARAMETER_PS

 const unsigned int mitk::TwoCompartmentExchangeModel::POSITION_PARAMETER_PS
static

Definition at line 64 of file mitkTwoCompartmentExchangeModel.h.

## ◆ POSITION_PARAMETER_ve

 const unsigned int mitk::TwoCompartmentExchangeModel::POSITION_PARAMETER_ve
static

Definition at line 65 of file mitkTwoCompartmentExchangeModel.h.

## ◆ POSITION_PARAMETER_vp

 const unsigned int mitk::TwoCompartmentExchangeModel::POSITION_PARAMETER_vp
static

Definition at line 66 of file mitkTwoCompartmentExchangeModel.h.

## ◆ UNIT_PARAMETER_F

 const std::string mitk::TwoCompartmentExchangeModel::UNIT_PARAMETER_F
static

Definition at line 68 of file mitkTwoCompartmentExchangeModel.h.

## ◆ UNIT_PARAMETER_PS

 const std::string mitk::TwoCompartmentExchangeModel::UNIT_PARAMETER_PS
static

Definition at line 69 of file mitkTwoCompartmentExchangeModel.h.

## ◆ UNIT_PARAMETER_ve

 const std::string mitk::TwoCompartmentExchangeModel::UNIT_PARAMETER_ve
static

Definition at line 70 of file mitkTwoCompartmentExchangeModel.h.

## ◆ UNIT_PARAMETER_vp

 const std::string mitk::TwoCompartmentExchangeModel::UNIT_PARAMETER_vp
static

Definition at line 71 of file mitkTwoCompartmentExchangeModel.h.

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