Medical Imaging Interaction Toolkit  2026.06.00
Medical Imaging Interaction Toolkit
mitkExpDecayOffsetModel.h
Go to the documentation of this file.
1 /*============================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center (DKFZ)
6 All rights reserved.
7 
8 Use of this source code is governed by a 3-clause BSD license that can be
9 found in the LICENSE file.
10 
11 ============================================================================*/
12 
13 #ifndef mitkExpDecayOffsetModel_h
14 #define mitkExpDecayOffsetModel_h
15 
16 #include <mitkModelBase.h>
17 
18 #include <MitkModelFitExports.h>
19 
20 namespace mitk
21 {
22 
34  {
35 
36  public:
41 
44 
46  itkFactorylessNewMacro(Self);
47  itkCloneMacro(Self);
48 
51 
53  static const std::string NAME_PARAMETER_y0;
55  static const std::string NAME_PARAMETER_k;
57  static const std::string NAME_PARAMETER_y_bl;
58 
60  static const unsigned int NUMBER_OF_PARAMETERS;
61 
63  static const std::string UNIT_PARAMETER_y0;
65  static const std::string UNIT_PARAMETER_k;
67  static const std::string UNIT_PARAMETER_y_bl;
68 
70  static const unsigned int POSITION_PARAMETER_y0;
72  static const unsigned int POSITION_PARAMETER_k;
74  static const unsigned int POSITION_PARAMETER_y_bl;
75 
77  static const unsigned int NUMBER_OF_STATIC_PARAMETERS;
78 
80  static const std::string MODEL_DISPLAY_NAME;
81 
83  static const std::string MODEL_TYPE;
84 
86  static const std::string FUNCTION_STRING;
87 
89  static const std::string X_NAME;
90 
92  static const std::string X_AXIS_NAME;
93 
95  static const std::string X_AXIS_UNIT;
96 
98  static const std::string Y_AXIS_NAME;
99 
101  static const std::string Y_AXIS_UNIT;
102 
104 
106 
108 
110 
112 
113  std::string GetModelDisplayName() const override;
114 
115  std::string GetModelType() const override;
116 
118 
119  std::string GetXName() const override;
120 
121  std::string GetXAxisName() const override;
122 
123  std::string GetXAxisUnit() const override;
124 
125  std::string GetYAxisName() const override;
126 
127  std::string GetYAxisUnit() const override;
128 
129  protected:
131  ~ExpDecayOffsetModel() override {};
132 
134 
136 
137  ModelResultType ComputeModelfunction(const ParametersType& parameters) const override;
138 
140  const StaticParameterValuesType& values) override;
142 
143  private:
144 
145  void operator=(const Self&); //purposely not implemented
146 
147  };
148 }
149 
150 #endif
#define MITKMODELFIT_EXPORT
Exponential decay model with baseline offset: y(x) = y0 * exp(-k*x) + y_bl.
Superclass::ParametersSizeType ParametersSizeType
std::string GetYAxisName() const override
Returns the display name of the y-axis (e.g. "Signal Intensity").
static const std::string FUNCTION_STRING
Function string representation of the model equation.
static const std::string MODEL_TYPE
Type category of this model.
static const std::string Y_AXIS_NAME
Display name for the y-axis.
static const std::string MODEL_DISPLAY_NAME
Display name of this model.
static const std::string X_AXIS_UNIT
Unit for the x-axis.
std::string GetModelDisplayName() const override
Returns the human-readable display name of the model.
ExpDecayOffsetModel(const ExpDecayOffsetModel &source)
static const std::string NAME_PARAMETER_y0
Name string for the y-intercept parameter.
ParametersSizeType GetNumberOfParameters() const override
Returns the number of parameters that must be defined when using the model to compute the signal (Get...
static const std::string UNIT_PARAMETER_k
Unit of the rate constant parameter.
ParameterNamesType GetParameterNames() const override
Returns the names of parameters that must be defined when using the model to compute the signal (GetS...
std::string GetXAxisUnit() const override
Returns the unit of the x-axis (e.g. "s", "ms").
static const unsigned int POSITION_PARAMETER_y0
Index position of y-intercept in the parameter vector.
static const std::string X_AXIS_NAME
Display name for the x-axis.
static const unsigned int NUMBER_OF_STATIC_PARAMETERS
Total number of static parameters (0).
static const std::string X_NAME
Name of the independent variable.
itk::SmartPointer< const Self > ConstPointer
void SetStaticParameter(const ParameterNameType &name, const StaticParameterValuesType &values) override
Sets a single static parameter by name.
std::string GetYAxisUnit() const override
Returns the unit of the y-axis.
ParamterUnitMapType GetParameterUnits() const override
Returns the unit strings for all model parameters.
std::string GetXAxisName() const override
Returns the display name of the x-axis (e.g. "Time").
Superclass::ParameterNameType ParameterNameType
mitkCloneMacro(ExpDecayOffsetModel)
static const std::string Y_AXIS_UNIT
Unit for the y-axis.
static const std::string NAME_PARAMETER_y_bl
Name string for the baseline parameter.
static const std::string UNIT_PARAMETER_y0
Unit of the y-intercept parameter.
static const std::string UNIT_PARAMETER_y_bl
Unit of the baseline parameter.
itk::SmartPointer< Self > Pointer
static const unsigned int POSITION_PARAMETER_y_bl
Index position of baseline in the parameter vector.
ParametersSizeType GetNumberOfStaticParameters() const override
Returns the number of static parameters.
static const std::string NAME_PARAMETER_k
Name string for the rate constant parameter.
static const unsigned int NUMBER_OF_PARAMETERS
Total number of model parameters (3).
ModelResultType ComputeModelfunction(const ParametersType &parameters) const override
Computes the model function for the given parameters.
StaticParameterValuesType GetStaticParameterValue(const ParameterNameType &name) const override
Retrieves a single static parameter value by name.
std::string GetXName() const override
Returns the name of the independent variable used by the model (e.g. "x").
std::string GetModelType() const override
Returns the type/category string of the model (e.g. "Linear", "Pharmacokinetic").
ParameterNamesType GetStaticParameterNames() const override
Returns the names of static parameters used when computing the signal.
FunctionStringType GetFunctionString() const override
Returns a parsable function string representing the model equation.
static const unsigned int POSITION_PARAMETER_k
Index position of rate constant in the parameter vector.
Base class for (dynamic) models.
Definition: mitkModelBase.h:56
ModelTraitsInterface::ParametersSizeType ParametersSizeType
Definition: mitkModelBase.h:73
ModelTraitsInterface::ParameterNamesType ParameterNamesType
Definition: mitkModelBase.h:72
std::vector< StaticParameterValueType > StaticParameterValuesType
Definition: mitkModelBase.h:79
ModelTraitsInterface::ParameterNameType ParameterNameType
Definition: mitkModelBase.h:71
ModelTraitsInterface::ModelResultType ModelResultType
Definition: mitkModelBase.h:63
ModelTraitsInterface::ParametersType ParametersType
Definition: mitkModelBase.h:67
std::string FunctionStringType
Type for the function string representation of the model.
std::map< ParameterNameType, std::string > ParamterUnitMapType
Map type associating parameter names to their unit strings.
Find image slices visible on a given plane.