#include <itkFEMLinearSystemWrapperVNL.h>
Inheritance diagram for itk::fem::LinearSystemWrapperVNL:


Definition at line 38 of file itkFEMLinearSystemWrapperVNL.h.
Public Types | |
| typedef std::vector< unsigned int > | ColumnArray |
| typedef const Self * | ConstPointer |
| typedef LinearSystemWrapper::Float | Float |
| typedef std::vector< MatrixRepresentation * > | MatrixHolder |
| typedef vnl_sparse_matrix< Float > | MatrixRepresentation |
| typedef Self * | Pointer |
| typedef LinearSystemWrapper | Self |
| typedef Solution | Superclass |
| typedef LinearSystemWrapper | SuperClass |
Public Member Functions | |
| virtual void | AddMatrixMatrix (unsigned int matrixIndex1, unsigned int matrixIndex2) |
| virtual void | AddMatrixValue (unsigned int i, unsigned int j, Float value, unsigned int matrixIndex) |
| virtual void | AddSolutionValue (unsigned int i, Float value, unsigned int solutionIndex) |
| virtual void | AddVectorValue (unsigned int i, Float value, unsigned int vectorIndex) |
| virtual void | AddVectorVector (unsigned int vectorIndex1, unsigned int vectorIndex2) |
| virtual void | Clean (void) |
| virtual void | CopyMatrix (unsigned int matrixIndex1, unsigned int matrixIndex2) |
| virtual void | CopySolution2Vector (unsigned int solutionIndex, unsigned int vectorIndex)=0 |
| virtual void | CopySolution2Vector (unsigned solutionIndex, unsigned int vectorIndex) |
| virtual void | CopyVector (unsigned int vectorSource, unsigned int vectorDestination) |
| virtual void | CopyVector2Solution (unsigned int vectorIndex, unsigned int solutionIndex) |
| virtual void | DestroyMatrix (unsigned int matrixIndex) |
| virtual void | DestroySolution (unsigned int solutionIndex) |
| virtual void | DestroyVector (unsigned int vectorIndex) |
| virtual void | GetColumnsOfNonZeroMatrixElementsInRow (unsigned int row, ColumnArray &cols, unsigned int matrixIndex=0) |
| virtual Float | GetMatrixValue (unsigned int i, unsigned int j, unsigned int matrixIndex) const |
| unsigned int | GetNumberOfMatrices () |
| unsigned int | GetNumberOfSolutions () |
| unsigned int | GetNumberOfVectors () |
| virtual Float | GetSolutionValue (unsigned int i, unsigned int solutionIndex) const |
| unsigned int | GetSystemOrder () const |
| virtual Float | GetVectorValue (unsigned int i, unsigned int vectorIndex) const |
| virtual void | InitializeMatrix (unsigned int matrixIndex) |
| virtual void | InitializeSolution (unsigned int solutionIndex) |
| virtual void | InitializeVector (unsigned int vectorIndex) |
| virtual bool | IsMatrixInitialized (unsigned int matrixIndex) |
| virtual bool | IsSolutionInitialized (unsigned int solutionIndex) |
| virtual bool | IsVectorInitialized (unsigned int vectorIndex) |
| LinearSystemWrapperVNL () | |
| virtual void | MultiplyMatrixMatrix (unsigned int resultMatrixIndex, unsigned int leftMatrixIndex, unsigned int rightMatrixIndex) |
| virtual void | MultiplyMatrixVector (unsigned int resultVectorIndex, unsigned int matrixIndex, unsigned int vectorIndex) |
| virtual void | OptimizeMatrixStorage (unsigned int matrixIndex, unsigned int tempMatrixIndex) |
| virtual void | ReverseCuthillMckeeOrdering (ColumnArray &newNumbering, unsigned int matrixIndex=0) |
| virtual void | ScaleMatrix (Float scale, unsigned int matrixIndex) |
| void | ScaleSolution (Float scale, unsigned int solutionIndex=0) |
| void | ScaleVector (Float scale, unsigned int vectorIndex=0) |
| virtual void | SetMatrixValue (unsigned int i, unsigned int j, Float value, unsigned int matrixIndex) |
| virtual void | SetMaximumNonZeroValuesInMatrix (unsigned int, unsigned int) |
| void | SetNumberOfMatrices (unsigned int nMatrices) |
| void | SetNumberOfSolutions (unsigned int nSolutions) |
| void | SetNumberOfVectors (unsigned int nVectors) |
| virtual void | SetSolutionValue (unsigned int i, Float value, unsigned int solutionIndex) |
| void | SetSystemOrder (unsigned int N) |
| virtual void | SetVectorValue (unsigned int i, Float value, unsigned int vectorIndex) |
| virtual void | Solve (void) |
| virtual void | SwapMatrices (unsigned int matrixIndex1, unsigned int matrixIndex2) |
| virtual void | SwapSolutions (unsigned int solutionIndex1, unsigned int solutionIndex2) |
| virtual void | SwapVectors (unsigned int vectorIndex1, unsigned int vectorIndex2) |
| virtual | ~LinearSystemWrapperVNL () |
Public Attributes | |
| *Constructor for linear | system |
Protected Attributes | |
| unsigned int | m_NumberOfMatrices |
| unsigned int | m_NumberOfSolutions |
| unsigned int | m_NumberOfVectors |
| unsigned int | m_Order |
|
|
Definition at line 67 of file itkFEMLinearSystemWrapper.h. |
|
|
Const pointer to an object. Reimplemented from itk::fem::Solution. Definition at line 65 of file itkFEMLinearSystemWrapper.h. |
|
|
Floating point storage type used within a class Reimplemented from itk::fem::Solution. Definition at line 43 of file itkFEMLinearSystemWrapperVNL.h. |
|
|
Definition at line 52 of file itkFEMLinearSystemWrapperVNL.h. |
|
|
Definition at line 49 of file itkFEMLinearSystemWrapperVNL.h. |
|
|
Pointer to an object. Reimplemented from itk::fem::Solution. Definition at line 62 of file itkFEMLinearSystemWrapper.h. |
|
|
Standard "Self" typedef. Reimplemented from itk::fem::Solution. Reimplemented in itk::fem::LinearSystemWrapperItpack. Definition at line 56 of file itkFEMLinearSystemWrapper.h. |
|
|
Standard "Superclass" typedef. Reimplemented from itk::fem::Solution. Reimplemented in itk::fem::LinearSystemWrapperItpack. Definition at line 59 of file itkFEMLinearSystemWrapper.h. |
|
|
Definition at line 46 of file itkFEMLinearSystemWrapperVNL.h. |
|
|
Definition at line 55 of file itkFEMLinearSystemWrapperVNL.h. |
|
|
|
|
||||||||||||
|
Adds two matrices storing the result in the first matrix.
|
|
||||||||||||||||||||
|
Virtual function to add a value to a specific element of the A matrix.
Implements itk::fem::LinearSystemWrapper. Definition at line 74 of file itkFEMLinearSystemWrapperVNL.h. |
|
||||||||||||||||
|
Virtual function to add a value of specific element of the solution vector.
Implements itk::fem::LinearSystemWrapper. Definition at line 80 of file itkFEMLinearSystemWrapperVNL.h. |
|
||||||||||||||||
|
Virtual function to add a value to a specific element of the B vector.
Implements itk::fem::LinearSystemWrapper. Definition at line 77 of file itkFEMLinearSystemWrapperVNL.h. |
|
||||||||||||
|
Adds two vectors storing the result in the first vector.
|
|
|
Clear all the data (matrices) inside the system, so that the system is ready to solve another problem from scratch. |
|
||||||||||||
|
Copies the content of source matrix to destination matrix. Any existing data in destination matrix is overwritten.
|
|
||||||||||||
|
Copy a solution vector to a vector
|
|
||||||||||||
|
|
|
||||||||||||
|
Copy a vector
|
|
||||||||||||
|
Copy a vector to a solution vector
Implements itk::fem::LinearSystemWrapper. |
|
|
Free the memory from a matrix
Implements itk::fem::LinearSystemWrapper. |
|
|
Free teh mememory from a solution vector
Implements itk::fem::LinearSystemWrapper. |
|
|
Free the memory from a vector
Implements itk::fem::LinearSystemWrapper. |
|
||||||||||||||||
|
Returns the column index (zero based) of the i-th non zero (non allocated)element in a given row of A matrix. This function is usefull for optimizations when sparse matrices are used. Note that the value of an element with returned column index may actually be equal zero.
Reimplemented in itk::fem::LinearSystemWrapperItpack. |
|
||||||||||||||||
|
Virtual function to get a value of a specific element of a matrix.
Implements itk::fem::LinearSystemWrapper. Definition at line 72 of file itkFEMLinearSystemWrapperVNL.h. |
|
|
Get Index of matrices used by system Definition at line 120 of file itkFEMLinearSystemWrapper.h. References itk::fem::LinearSystemWrapper::m_NumberOfMatrices. |
|
|
Get Index of solutions used by system Definition at line 142 of file itkFEMLinearSystemWrapper.h. References itk::fem::LinearSystemWrapper::m_NumberOfSolutions. |
|
|
Get Index of vectors used by system Definition at line 131 of file itkFEMLinearSystemWrapper.h. References itk::fem::LinearSystemWrapper::m_NumberOfVectors. |
|
||||||||||||
|
Returns value of i-th element in a solution vector. This value is calculated generalized displacement of the i-th degree of freedom in a FEM problem. Note that in general there may be several solution vectors. You can select which one do you want by passing the second parameter.
Implements itk::fem::Solution. |
|
|
Get the order of the system Definition at line 100 of file itkFEMLinearSystemWrapper.h. References itk::fem::LinearSystemWrapper::m_Order. |
|
||||||||||||
|
Virtual function to get a value of a specific element of the B vector.
Implements itk::fem::LinearSystemWrapper. Definition at line 75 of file itkFEMLinearSystemWrapperVNL.h. |
|
|
Initialization of the A matrix. First any existing data for matrix A must be be destroyed, and then a new matrix is created in the memory. All elements in A must be set to zero.
Implements itk::fem::LinearSystemWrapper. |
|
|
Initialization of a solution vector. Existing memory must be destroyed and the new solution vector is created in memory. All values should be set to zero.
Implements itk::fem::LinearSystemWrapper. |
|
|
Initialization of the a vector. First any existing data for vector B must be destroyed, then new vector is created in the memory. All elements in B must be set to zero. Implements itk::fem::LinearSystemWrapper. |
|
|
Check to see if matrix is initialized
Implements itk::fem::LinearSystemWrapper. |
|
|
Check to see if solution vector is initialized
Implements itk::fem::LinearSystemWrapper. |
|
|
Check to see if vector is initialized
Implements itk::fem::LinearSystemWrapper. |
|
||||||||||||||||
|
Perform a matrix*matrix operation and store the result in the linear system
Implements itk::fem::LinearSystemWrapper. |
|
||||||||||||||||
|
Perform a matrix*vector operation and store the result in the linear system
Reimplemented from itk::fem::LinearSystemWrapper. |
|
||||||||||||
|
Remove all zeros from a matrix
|
|
||||||||||||
|
Reorder the Degrees of Freedom in order to reduce bandwidth of matrix
|
|
||||||||||||
|
Multiplies all elements of a matrix by a scalar
Reimplemented from itk::fem::LinearSystemWrapper. |
|
||||||||||||
|
Multiplies all elements of a solution by a scalar
Reimplemented in itk::fem::LinearSystemWrapperDenseVNL. |
|
||||||||||||
|
Multiplies all elements of a vector by a scalar
Reimplemented in itk::fem::LinearSystemWrapperDenseVNL. |
|
||||||||||||||||||||
|
Virtual function to set a value of a specific element of the A matrix.
Implements itk::fem::LinearSystemWrapper. Definition at line 73 of file itkFEMLinearSystemWrapperVNL.h. |
|
||||||||||||
|
Definition at line 68 of file itkFEMLinearSystemWrapperVNL.h. |
|
|
Set Index of matrices used by the system
Definition at line 106 of file itkFEMLinearSystemWrapper.h. References itk::fem::LinearSystemWrapper::m_NumberOfMatrices. |
|
|
Set Index of solutions used by the system
Definition at line 137 of file itkFEMLinearSystemWrapper.h. References itk::fem::LinearSystemWrapper::m_NumberOfSolutions. |
|
|
Set Index of vectors used by the system
Definition at line 126 of file itkFEMLinearSystemWrapper.h. References itk::fem::LinearSystemWrapper::m_NumberOfVectors. |
|
||||||||||||||||
|
Virtual function to set a value of specific element of the solution vector.
Implements itk::fem::LinearSystemWrapper. Definition at line 79 of file itkFEMLinearSystemWrapperVNL.h. |
|
|
Set the order of the system. All matrices will be of size NxN and all vectors will be of size N
Definition at line 95 of file itkFEMLinearSystemWrapper.h. References itk::fem::LinearSystemWrapper::m_Order. |
|
||||||||||||||||
|
Virtual function to set a value of a specific element of the B vector.
Implements itk::fem::LinearSystemWrapper. Definition at line 76 of file itkFEMLinearSystemWrapperVNL.h. |
|
|
Solves the linear system and creates the solution vector, which can later be accessed via GetSolutionValue(i,SolutionIndex) member function. Here all the major processing is done with calls to external numeric library.
Implements itk::fem::LinearSystemWrapper. |
|
||||||||||||
|
Swaps access indices of any 2 matrices in the linear system
Implements itk::fem::LinearSystemWrapper. |
|
||||||||||||
|
Swaps access indices of any 2 solution vectors in the linear system
Implements itk::fem::LinearSystemWrapper. |
|
||||||||||||
|
Swaps access indices of any 2 vectors in the linear system
Implements itk::fem::LinearSystemWrapper. |
|
|
Number of matrices used by system Definition at line 463 of file itkFEMLinearSystemWrapper.h. Referenced by itk::fem::LinearSystemWrapper::GetNumberOfMatrices(), and itk::fem::LinearSystemWrapper::SetNumberOfMatrices(). |
|
|
Number of solutions used by system Definition at line 473 of file itkFEMLinearSystemWrapper.h. Referenced by itk::fem::LinearSystemWrapper::GetNumberOfSolutions(), and itk::fem::LinearSystemWrapper::SetNumberOfSolutions(). |
|
|
Number of vectors used by system Definition at line 468 of file itkFEMLinearSystemWrapper.h. Referenced by itk::fem::LinearSystemWrapper::GetNumberOfVectors(), and itk::fem::LinearSystemWrapper::SetNumberOfVectors(). |
|
|
Order of linear system Definition at line 458 of file itkFEMLinearSystemWrapper.h. Referenced by itk::fem::LinearSystemWrapper::GetSystemOrder(), and itk::fem::LinearSystemWrapper::SetSystemOrder(). |
|
|
Definition at line 70 of file itkFEMLinearSystemWrapper.h. |
1.4.2 written by Dimitri van Heesch,
© 1997-2000