TGSTK  0.0.1
The Tumour Growth Simulation ToolKit
tgstkFiniteDifferenceReactionDiffusionTumourGrowthFilter.h
Go to the documentation of this file.
1 /*==========================================================================
2 
3  This file is part of the Tumor Growth Simulation ToolKit (TGSTK)
4  (<https://github.com/cormarte/TGSTK>, <https://cormarte.github.io/TGSTK>).
5 
6  Copyright (C) 2021 Corentin Martens
7 
8  This program is free software: you can redistribute it and/or modify
9  it under the terms of the GNU General Public License as published by
10  the Free Software Foundation, either version 3 of the License, or
11  (at your option) any later version.
12 
13  This program is distributed in the hope that it will be useful,
14  but WITHOUT ANY WARRANTY; without even the implied warranty of
15  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  GNU General Public License for more details.
17 
18  You should have received a copy of the GNU General Public License
19  along with this program. If not, see <https://www.gnu.org/licenses/>.
20 
21  Contact: corentin.martens@ulb.be
22 
23 ==========================================================================*/
24 
87 #ifndef TGSTKFINITEDIFFERENCEREACTIONDIFFUSIONTUMOURGROWTHFILTER_H
88 #define TGSTKFINITEDIFFERENCEREACTIONDIFFUSIONTUMOURGROWTHFILTER_H
89 
91 
93 
94  public:
95 
98 
99  bool check();
100  void execute();
101 
110  vtkSmartPointer<vtkImageData> getFinalCellDensityImage();
111 
121  vtkSmartPointer<vtkImageData> getFinalCellDensityGradientImage();
122 
123 
133  void setBrainMapImage(vtkImageData* image);
134 
145  void setDiffusionTensorImage(vtkSmartPointer<vtkImageData> image);
146 
156  void setInitialCellDensityImage(vtkSmartPointer<vtkImageData> image);
157 
167  void setProliferationRateImage(vtkSmartPointer<vtkImageData> image);
168 
176  void setSimulatedTime(double time);
177 
196  void setTimeStep(double step);
197 
198  //void setCoreProliferationRate(double proliferationRate);
199  //void setNonCoreProliferationRate(double proliferationRate);
200 
201  private:
202 
203  //double coreProliferationRate;
204  //double nonCoreProliferationRate;
206  double timeStep;
207 
208  vtkSmartPointer<vtkImageData> brainMapImage;
209  vtkSmartPointer<vtkImageData> finalCellDensityImage;
210  vtkSmartPointer<vtkImageData> finalCellDensityGradientImage;
211  vtkSmartPointer<vtkImageData> initialCellDensityImage;
212  vtkSmartPointer<vtkImageData> proliferationRateImage;
213  vtkSmartPointer<vtkImageData> diffusionTensorImage;
214 };
215 
216 #endif // TGSTKFINITEDIFFERENCEREACTIONDIFFUSIONTUMOURGROWTHFILTER_H
tgstkFiniteDifferenceReactionDiffusionTumourGrowthFilter::diffusionTensorImage
vtkSmartPointer< vtkImageData > diffusionTensorImage
Definition: tgstkFiniteDifferenceReactionDiffusionTumourGrowthFilter.h:213
tgstkFiniteDifferenceReactionDiffusionTumourGrowthFilter
Finite difference solver for reaction-diffusion tumour growth simulation over regular grids.
Definition: tgstkFiniteDifferenceReactionDiffusionTumourGrowthFilter.h:92
tgstkImageProcessorBase
Base class for TGSTK image processors.
Definition: tgstkImageProcessorBase.h:49
tgstkFiniteDifferenceReactionDiffusionTumourGrowthFilter::finalCellDensityGradientImage
vtkSmartPointer< vtkImageData > finalCellDensityGradientImage
Definition: tgstkFiniteDifferenceReactionDiffusionTumourGrowthFilter.h:210
TGSTK_EXPORT
#define TGSTK_EXPORT
Definition: tgstkGlobal.h:31
tgstkImageProcessorBase.h
tgstkFiniteDifferenceReactionDiffusionTumourGrowthFilter::simulatedTime
double simulatedTime
Definition: tgstkFiniteDifferenceReactionDiffusionTumourGrowthFilter.h:205
tgstkAlgorithmBase::execute
virtual void execute()=0
tgstkAlgorithmBase::check
virtual bool check()
Definition: tgstkAlgorithmBase.cpp:37
tgstkFiniteDifferenceReactionDiffusionTumourGrowthFilter::timeStep
double timeStep
Definition: tgstkFiniteDifferenceReactionDiffusionTumourGrowthFilter.h:206
tgstkFiniteDifferenceReactionDiffusionTumourGrowthFilter::brainMapImage
vtkSmartPointer< vtkImageData > brainMapImage
Definition: tgstkFiniteDifferenceReactionDiffusionTumourGrowthFilter.h:208
tgstkFiniteDifferenceReactionDiffusionTumourGrowthFilter::proliferationRateImage
vtkSmartPointer< vtkImageData > proliferationRateImage
Definition: tgstkFiniteDifferenceReactionDiffusionTumourGrowthFilter.h:212
tgstkFiniteDifferenceReactionDiffusionTumourGrowthFilter::initialCellDensityImage
vtkSmartPointer< vtkImageData > initialCellDensityImage
Definition: tgstkFiniteDifferenceReactionDiffusionTumourGrowthFilter.h:211
tgstkFiniteDifferenceReactionDiffusionTumourGrowthFilter::finalCellDensityImage
vtkSmartPointer< vtkImageData > finalCellDensityImage
Definition: tgstkFiniteDifferenceReactionDiffusionTumourGrowthFilter.h:209