#include <itkFEMLinearSystemWrapperItpack.h>
Inheritance diagram for itk::fem::LinearSystemWrapperItpack:
Public Types | |
typedef LinearSystemWrapperItpack | Self |
typedef LinearSystemWrapper | Superclass |
typedef ItpackSparseMatrix | MatrixRepresentation |
typedef std::vector< MatrixRepresentation > | MatrixHolder |
typedef double * | VectorRepresentation |
typedef std::vector< VectorRepresentation > | VectorHolder |
Public Member Functions | |
void | SetMaximumNumberIterations (int i) |
int | GetMaximumNumberIterations () |
int | GetErrorReportingLevel () |
void | SetCommunicationSwitch (int i) |
int | GetCommunicationSwitch () |
int | GetOutputNumber () |
void | SetSymmetricMatrixFlag (int i) |
int | GetSymmetricMatrixFlag () |
void | SetAdaptiveSwitch (int i) |
int | GetAdaptiveSwitch () |
void | SetAdaptiveCaseSwitch (int i) |
int | GetAdaptiveCaseSwitch () |
void | SetWorkspaceUsed (int i) |
int | GetWorkspaceUsed () |
void | SetRedBlackOrderingSwitch (int i) |
int | GetRedBlackOrderingSwitch () |
void | SetRemoveSwitch (int i) |
int | GetRemoveSwitch () |
void | SetTimingSwitch (int i) |
int | GetTimingSwitch () |
void | SetErrorAnalysisSwitch (int i) |
int | GetErrorAnalysisSwitch () |
void | SetAccuracy (double i) |
double | GetAccuracy () |
void | SetLargestJacobiEigenvalueEstimate (double i) |
double | GetLargestJacobiEigenvalueEstimate () |
void | SetSmallestJacobiEigenvalueEstimate (double i) |
double | GetSmallestJacobiEigenvalueEstimate () |
void | SetDampingFactor (double i) |
double | GetDampingFactor () |
void | SetOverrelaxationParameter (double i) |
double | GetOverrelaxationParameter () |
void | SetEstimatedSpectralRadiusSSOR (double i) |
double | GetEstimatedSpectralRadiusSSOR () |
void | SetEstimatedSpectralRadiusLU (double i) |
double | GetEstimatedSpectralRadiusLU () |
void | SetTolerance (double i) |
double | GetTolerance () |
void | SetTimeToConvergence (double i) |
double | GetTimeToConvergence () |
void | SetTimeForCall (double i) |
double | GetTimeForCall () |
void | SetDigitsInError (double i) |
double | GetDigitsInError () |
void | SetDigitsInResidual (double i) |
double | GetDigitsInResidual () |
void | JacobianConjugateGradient () |
void | JacobianSemiIterative () |
void | SuccessiveOverrelaxation () |
void | SymmetricSuccessiveOverrelaxationConjugateGradient () |
void | SymmetricSuccessiveOverrelaxationSuccessiveOverrelaxation () |
void | ReducedSystemConjugateGradient () |
void | ReducedSystemSemiIteration () |
virtual void | SetMaximumNonZeroValuesInMatrix (unsigned int maxNonZeroValues) |
void | ScaleMatrix (Float scale, unsigned int matrixIndex) |
LinearSystemWrapperItpack () | |
~LinearSystemWrapperItpack () | |
virtual void | InitializeMatrix (unsigned int matrixIndex) |
virtual bool | IsMatrixInitialized (unsigned int matrixIndex) |
virtual void | DestroyMatrix (unsigned int matrixIndex) |
virtual void | InitializeVector (unsigned int vectorIndex) |
virtual bool | IsVectorInitialized (unsigned int vectorIndex) |
virtual void | DestroyVector (unsigned int vectorIndex) |
virtual void | InitializeSolution (unsigned int solutionIndex) |
virtual bool | IsSolutionInitialized (unsigned int solutionIndex) |
virtual void | DestroySolution (unsigned int solutionIndex) |
virtual Float | GetMatrixValue (unsigned int i, unsigned int j, unsigned int matrixIndex) const |
virtual void | SetMatrixValue (unsigned int i, unsigned int j, Float value, unsigned int matrixIndex) |
virtual void | AddMatrixValue (unsigned int i, unsigned int j, Float value, unsigned int matrixIndex) |
virtual void | GetColumnsOfNonZeroMatrixElementsInRow (unsigned int row, ColumnArray &cols, unsigned int matrixIndex) |
virtual Float | GetVectorValue (unsigned int i, unsigned int vectorIndex) const |
virtual void | SetVectorValue (unsigned int i, Float value, unsigned int vectorIndex) |
virtual void | AddVectorValue (unsigned int i, Float value, unsigned int vectorIndex) |
virtual Float | GetSolutionValue (unsigned int i, unsigned int solutionIndex) const |
virtual void | SetSolutionValue (unsigned int i, Float value, unsigned int solutionIndex) |
virtual void | AddSolutionValue (unsigned int i, Float value, unsigned int solutionIndex) |
virtual void | Solve (void) |
virtual void | SwapMatrices (unsigned int matrixIndex1, unsigned int matrixIndex2) |
virtual void | SwapVectors (unsigned int vectorIndex1, unsigned int vectorIndex2) |
virtual void | SwapSolutions (unsigned int solutionIndex1, unsigned int solutionIndex2) |
virtual void | CopySolution2Vector (unsigned solutionIndex, unsigned int vectorIndex) |
virtual void | CopyVector2Solution (unsigned int vectorIndex, unsigned int solutionIndex) |
virtual void | MultiplyMatrixMatrix (unsigned int resultMatrixIndex, unsigned int leftMatrixIndex, unsigned int rightMatrixIndex) |
virtual void | MultiplyMatrixVector (unsigned int resultVectorIndex, unsigned int matrixIndex, unsigned int vectorIndex) |
Definition at line 36 of file itkFEMLinearSystemWrapperItpack.h.
|
vector of matrices typedef Definition at line 50 of file itkFEMLinearSystemWrapperItpack.h. |
|
matrix representatin typedef Definition at line 47 of file itkFEMLinearSystemWrapperItpack.h. |
|
Standard "Self" typedef. Reimplemented from itk::fem::LinearSystemWrapper. Definition at line 41 of file itkFEMLinearSystemWrapperItpack.h. |
|
Standard "Superclass" typedef. Reimplemented from itk::fem::LinearSystemWrapper. Definition at line 44 of file itkFEMLinearSystemWrapperItpack.h. |
|
vector of vector typedef Definition at line 60 of file itkFEMLinearSystemWrapperItpack.h. |
|
vector representation typedef Definition at line 57 of file itkFEMLinearSystemWrapperItpack.h. |
|
constructor |
|
destructor |
|
Virtual function to add a value to a specific element of the A matrix.
Implements itk::fem::LinearSystemWrapper.
|
|
Virtual function to add a value of specific element of the solution vector.
Implements itk::fem::LinearSystemWrapper.
|
|
Virtual function to add a value to a specific element of the B vector.
Implements itk::fem::LinearSystemWrapper.
|
|
|
|
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.
|
|
Get the level of accuracy Definition at line 210 of file itkFEMLinearSystemWrapperItpack.h. |
|
Get flag indicating ?? Definition at line 142 of file itkFEMLinearSystemWrapperItpack.h. |
|
Get flag indicating ?? Definition at line 131 of file itkFEMLinearSystemWrapperItpack.h. |
|
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 from itk::fem::LinearSystemWrapper.
|
|
Get the communication flag - meaningless in this implementation Definition at line 102 of file itkFEMLinearSystemWrapperItpack.h. |
|
Get the damping factor used by ?? Definition at line 243 of file itkFEMLinearSystemWrapperItpack.h. |
|
Get the number of digits in the error Definition at line 320 of file itkFEMLinearSystemWrapperItpack.h. |
|
Get the number of digits in the residual Definition at line 331 of file itkFEMLinearSystemWrapperItpack.h. |
|
Get the flag for level of error reporting - meaningless in this implementation Definition at line 199 of file itkFEMLinearSystemWrapperItpack.h. |
|
Get a flag indicating the type of error reporting Definition at line 91 of file itkFEMLinearSystemWrapperItpack.h. |
|
Get the ?? Definition at line 276 of file itkFEMLinearSystemWrapperItpack.h. |
|
Get the ?? Definition at line 265 of file itkFEMLinearSystemWrapperItpack.h. |
|
Get ?? Definition at line 221 of file itkFEMLinearSystemWrapperItpack.h. |
|
Virtual function to get a value of a specific element of a matrix.
Implements itk::fem::LinearSystemWrapper.
|
|
Get the maximum number iterations that may be performed Definition at line 84 of file itkFEMLinearSystemWrapperItpack.h. |
|
Get the output number - meaningless in this implementation Definition at line 109 of file itkFEMLinearSystemWrapperItpack.h. |
|
Get the over-relaxation parameter ?? Definition at line 254 of file itkFEMLinearSystemWrapperItpack.h. |
|
Get the flag indicating use of red black ordering Definition at line 166 of file itkFEMLinearSystemWrapperItpack.h. |
|
Get flag indicating ?? Definition at line 177 of file itkFEMLinearSystemWrapperItpack.h. |
|
Get ?? Definition at line 232 of file itkFEMLinearSystemWrapperItpack.h. |
|
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 flag indicating use of symmetric matrix (1=symmetric, 0=non-symmetric) Definition at line 120 of file itkFEMLinearSystemWrapperItpack.h. |
|
Get the time for call Definition at line 309 of file itkFEMLinearSystemWrapperItpack.h. |
|
Get the time to convergence Definition at line 298 of file itkFEMLinearSystemWrapperItpack.h. |
|
Get the flag indicating use of the timer routines - meaningless in this implementation Definition at line 188 of file itkFEMLinearSystemWrapperItpack.h. |
|
Get the tolerance level Definition at line 287 of file itkFEMLinearSystemWrapperItpack.h. |
|
Virtual function to get a value of a specific element of the B vector.
Implements itk::fem::LinearSystemWrapper.
|
|
Get the size of the workspace used by solver
|
|
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.
|
|
Set numerical solving method to jacobian conjugate gradient Definition at line 336 of file itkFEMLinearSystemWrapperItpack.h. |
|
Set numerical solving method to jacobian semi iterative Definition at line 341 of file itkFEMLinearSystemWrapperItpack.h. |
|
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.
|
|
Set numerical solving method to reduced system conjugate gradient Definition at line 363 of file itkFEMLinearSystemWrapperItpack.h. |
|
Set numerical solving method to reduced system semi-iteration Definition at line 367 of file itkFEMLinearSystemWrapperItpack.h. |
|
Multiplies all elements of a matrix by a scalar
Reimplemented from itk::fem::LinearSystemWrapper.
|
|
Set the level of accuracy for an acceptable solution
|
|
Set flag for ??
|
|
Set flag for ???
|
|
Set the communication switch - meaningless in this implementation
|
|
Set the damping factor used by ??
|
|
Set digits in error
|
|
Set the number of digits in the residual
|
|
Set the flag for level of error reporting - meaningless in this implementation
|
|
Set the ??
|
|
Set the ??
|
|
Set ??
|
|
Virtual function to set a value of a specific element of the A matrix.
Implements itk::fem::LinearSystemWrapper.
|
|
set maximum number of entires in a matrix
|
|
Set the maximum number of iterations
|
|
Set the over-relaxation parameter ??
|
|
Set flag indicating use of red black ordering
|
|
Set flag indicating ??
|
|
Set ??
|
|
Virtual function to set a value of specific element of the solution vector.
Implements itk::fem::LinearSystemWrapper.
|
|
Set flag indicating symmetric matrix is being used
|
|
Set the time for call
|
|
Set the time to convergence
|
|
Set the flag indicating use of timer routines - meaningless in this implementation
|
|
Set the tolerance level
|
|
Virtual function to set a value of a specific element of the B vector.
Implements itk::fem::LinearSystemWrapper.
|
|
Set size of workspace used by solver
|
|
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.
|
|
Set numerical solving method to successive over-relaxation Definition at line 346 of file itkFEMLinearSystemWrapperItpack.h. |
|
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.
|
|
Set numerical solving method to symmetric successive over-relaxation conjugate gradient Definition at line 352 of file itkFEMLinearSystemWrapperItpack.h. |
|
Set numerical solving method to symmetric successive over-relaxation successive over-relaxation Definition at line 358 of file itkFEMLinearSystemWrapperItpack.h. |