SIVIC API  0.9.26
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
svkKineticModelCostFunction Class Referenceabstract

#include <svkKineticModelCostFunction.h>

Inheritance diagram for svkKineticModelCostFunction:
svk2SiteExchangeCostFunction svk2SiteIMCostFunction svk2SiteIMPyrCostFunction svk2SitePerfCostFunction

Public Types

typedef svkKineticModelCostFunction Self
 
typedef
itk::SingleValuedCostFunction 
Superclass
 
typedef itk::SmartPointer< SelfPointer
 
typedef itk::SmartPointer
< const Self
ConstPointer
 
typedef Superclass::ParametersType ParametersType
 
typedef Superclass::DerivativeType DerivativeType
 
typedef Superclass::MeasureType MeasureType
 

Public Member Functions

 itkTypeMacro (svkKineticModelCostFunction, SingleValuedCostFunction)
 
 svkKineticModelCostFunction ()
 
 ~svkKineticModelCostFunction ()
 
void GetDerivative (const ParametersType &, DerivativeType &) const
 
MeasureType GetValue (const ParametersType &parameters) const
 
void SetNumberOfSignals (int numSignals)
 
int GetNumberOfSignals () const
 
void SetSignal (float *signal, int signalIndex, string signalName)
 
vector< map< string, float * > > * GetSignals ()
 
float GetSignalAtTime (int signalIndex, int timePt) const
 
string GetSignalName (int signalIndex) const
 
float * GetSignal (int signalIndex) const
 
void SetNumTimePoints (int numTimePoints)
 
void SetTR (float TR)
 
void SetModelSignal (float *modelSignal, int modelSignalIndex, string modelSignalName)
 
float GetModelSignalAtTime (int modelSignalIndex, int timePt) const
 
float * GetModelSignal (int modelSignalIndex) const
 
unsigned int GetNumberOfOutputPorts (void) const
 
virtual void GetKineticModel (const ParametersType &parameters) const =0
 
virtual unsigned int GetNumberOfParameters (void) const =0
 
virtual void InitNumberOfSignals (void)=0
 
virtual void InitOutputDescriptionVector (vector< string > *outputDescriptionVector) const =0
 
virtual void InitParamBounds (float *lowerBounds, float *upperBounds)=0
 
virtual void InitParamInitialPosition (ParametersType *initialPosition)=0
 
virtual void GetParamFinalScaledPosition (ParametersType *finalPosition)=0
 

Protected Member Functions

MeasureType GetResidual (const ParametersType &parameters) const
 

Protected Attributes

vector< map< string, float * > > signalVector
 
vector< map< string, float * > > modelSignalVector
 
int numTimePoints
 
int numSignals
 
float TR
 

Member Typedef Documentation

typedef itk::SmartPointer<const Self> ConstPointer
typedef Superclass::DerivativeType DerivativeType
typedef Superclass::MeasureType MeasureType
typedef Superclass::ParametersType ParametersType
typedef itk::SmartPointer<Self> Pointer
typedef itk::SingleValuedCostFunction Superclass

Constructor & Destructor Documentation

Member Function Documentation

void GetDerivative ( const ParametersType ,
DerivativeType  
) const
inline
virtual void GetKineticModel ( const ParametersType parameters) const
pure virtual

For a given set of parameter values, compute the model kinetics:

Function to calculate metabolite signal vs time based on parametric model. uses the following : parameters = kinetic model parameters to be fit (1/T1all, Kpl). kineticModelN = model metabolite signal intensity vs time ( pyr, lac, urea) signalN = input signal vs time for each of 3 measured metabolites (pyr, lac, urea) numTimePoints = number of observed time points.

Implemented in svk2SiteIMPyrCostFunction, svk2SiteIMCostFunction, svk2SiteExchangeCostFunction, and svk2SitePerfCostFunction.

float* GetModelSignal ( int  modelSignalIndex) const
inline
float GetModelSignalAtTime ( int  modelSignalIndex,
int  timePt 
) const
inline
unsigned int GetNumberOfOutputPorts ( void  ) const
inline

Get the number of outputs This is fitted signals (first), them parameter maps, e.g.: Outputports: 0 for fitted pyruvate kinetics Outputports: 1 for fitted lactate kinetics Outputports: 2 for fitted urea kinetics Outputports: 3 for T1all map Outputports: 4 for Kpl map Outputports: 5 for Ktrans map Outputports: 5 for K2 map

virtual unsigned int GetNumberOfParameters ( void  ) const
pure virtual

Get the number of adjustable parameters in the model defined by cost function

Implemented in svk2SitePerfCostFunction, svk2SiteIMCostFunction, svk2SiteExchangeCostFunction, and svk2SiteIMPyrCostFunction.

int GetNumberOfSignals ( ) const
inline
virtual void GetParamFinalScaledPosition ( ParametersType finalPosition)
pure virtual

Get the scaled (with units) values of final fitted parameter values.

Implemented in svk2SitePerfCostFunction, svk2SiteIMCostFunction, svk2SiteIMPyrCostFunction, and svk2SiteExchangeCostFunction.

MeasureType GetResidual ( const ParametersType parameters) const
inlineprotected

Cost function used to minimizing the residual of fitted and observed dynamics. Get the sum of square difference between the input signal and modeled signal at the current set of parameter values.

float* GetSignal ( int  signalIndex) const
inline
float GetSignalAtTime ( int  signalIndex,
int  timePt 
) const
inline
string GetSignalName ( int  signalIndex) const
inline
vector< map < string, float* > >* GetSignals ( )
inline
MeasureType GetValue ( const ParametersType parameters) const
inline

Returns the cost function value for the current param values: typedef double MeasureType

virtual void InitNumberOfSignals ( void  )
pure virtual

Initialize the number of input signals for the model

Implemented in svk2SitePerfCostFunction, svk2SiteIMCostFunction, svk2SiteExchangeCostFunction, and svk2SiteIMPyrCostFunction.

virtual void InitOutputDescriptionVector ( vector< string > *  outputDescriptionVector) const
pure virtual

Get the vector that contains the string identifier for each output port

Implemented in svk2SitePerfCostFunction, svk2SiteIMCostFunction, svk2SiteExchangeCostFunction, and svk2SiteIMPyrCostFunction.

virtual void InitParamBounds ( float *  lowerBounds,
float *  upperBounds 
)
pure virtual

Initialize the parameter uppler and lower bounds for this model.

Implemented in svk2SitePerfCostFunction, svk2SiteIMCostFunction, svk2SiteIMPyrCostFunction, and svk2SiteExchangeCostFunction.

virtual void InitParamInitialPosition ( ParametersType initialPosition)
pure virtual

Initialize the parameter initial values (unitless)

Implemented in svk2SitePerfCostFunction, svk2SiteIMCostFunction, svk2SiteIMPyrCostFunction, and svk2SiteExchangeCostFunction.

itkTypeMacro ( svkKineticModelCostFunction  ,
SingleValuedCostFunction   
)
void SetModelSignal ( float *  modelSignal,
int  modelSignalIndex,
string  modelSignalName 
)
inline
void SetNumberOfSignals ( int  numSignals)
inline

Set the kinetic signal for metabolite N

void SetNumTimePoints ( int  numTimePoints)
inline
void SetSignal ( float *  signal,
int  signalIndex,
string  signalName 
)
inline
void SetTR ( float  TR)
inline

Member Data Documentation

vector< map < string, float* > > modelSignalVector
protected
int numSignals
protected
int numTimePoints
protected
vector< map < string, float* > > signalVector
protected
float TR
protected

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