VMTK
vtkvmtkLinearSystemSolver.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: VMTK
4  Module: $RCSfile: vtkvmtkLinearSystemSolver.h,v $
5  Language: C++
6 
7  Copyright (c) Luca Antiga, David Steinman. All rights reserved.
8  See LICENSE file for details.
9 
10  Portions of this code are covered under the VTK copyright.
11  See VTKCopyright.txt or http://www.kitware.com/VTKCopyright.htm
12  for details.
13 
14  This software is distributed WITHOUT ANY WARRANTY; without even
15  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
16  PURPOSE. See the above copyright notices for more information.
17 
18 =========================================================================*/
28 #ifndef __vtkvmtkLinearSystemSolver_h
29 #define __vtkvmtkLinearSystemSolver_h
30 
31 #include "vtkObject.h"
32 #include "vtkvmtkLinearSystem.h"
33 #include "vtkvmtkWin32Header.h"
34 
35 class VTK_VMTK_DIFFERENTIAL_GEOMETRY_EXPORT vtkvmtkLinearSystemSolver : public vtkObject
36 {
37 public:
38  static vtkvmtkLinearSystemSolver* New();
39  vtkTypeMacro(vtkvmtkLinearSystemSolver,vtkObject);
40 
41  vtkSetObjectMacro(LinearSystem,vtkvmtkLinearSystem);
42  vtkGetObjectMacro(LinearSystem,vtkvmtkLinearSystem);
43 
44  vtkSetMacro(MaximumNumberOfIterations,int);
45  vtkGetMacro(MaximumNumberOfIterations,int);
46 
47  vtkSetMacro(ConvergenceTolerance,double);
48  vtkGetMacro(ConvergenceTolerance,double);
49 
50  virtual int Solve();
51 
52 protected:
55 
57 
60 
62  double Residual;
63 
64 private:
65  vtkvmtkLinearSystemSolver(const vtkvmtkLinearSystemSolver&); // Not implemented.
66  void operator=(const vtkvmtkLinearSystemSolver&); // Not implemented.
67 };
68 
69 #endif
70 
vtkvmtkLinearSystem * LinearSystem
Base class for linear system of equation solver implementations.
Base container to hold sparse matrice objects representing a linear system of equations Ax = B...