ITK/Release 4/Refactor Numerical Libraries/Inventory/Linear Solvers: Difference between revisions

From KitwarePublic
Jump to navigationJump to search
(Created page with " * Proposals:Sparse_Linear_Solvers * Description of LSQR")
 
No edit summary
Line 1: Line 1:
= The Problem =
It certain ITK applications it is common to need to solve the linear system
            A.x = b
Where
* A is a large sparse matrix
* x is a vector
* b is a vector
The common approach to solve this problem is to use linear solvers.
= Use Cases =
== FEM ==
The most significant case where large sparse matrix appear is in the computation of Finite Element Methods (FEM). In ITK, this is done for the purpose of computing Deformable Registration between images.
= Exploration =
In the past, ITK developers have explored alternative solutions for solving large sparse matrices.
The findings were codified at the time in the following Wiki page:


* [[Proposals:Sparse_Linear_Solvers]]
* [[Proposals:Sparse_Linear_Solvers]]


* Description of LSQR
 
= LSQR =
 
The initial approach in ITK to solve large sparse linear systems involved the use of the LSQR method.
 
* http://www.stanford.edu/group/SOL/software/lsqr.html
 
== In VXL ==
 
LSQR is implemented in VXL, but unfortunately the implementation is done using source code taken from '''netlib''', and that code happens to be copyrighted by ACM.  The license that ACM provides for algorithms preclude their use in the ITK ecosystem.

Revision as of 11:24, 12 September 2011

The Problem

It certain ITK applications it is common to need to solve the linear system

           A.x = b

Where

  • A is a large sparse matrix
  • x is a vector
  • b is a vector

The common approach to solve this problem is to use linear solvers.

Use Cases

FEM

The most significant case where large sparse matrix appear is in the computation of Finite Element Methods (FEM). In ITK, this is done for the purpose of computing Deformable Registration between images.

Exploration

In the past, ITK developers have explored alternative solutions for solving large sparse matrices.

The findings were codified at the time in the following Wiki page:


LSQR

The initial approach in ITK to solve large sparse linear systems involved the use of the LSQR method.

In VXL

LSQR is implemented in VXL, but unfortunately the implementation is done using source code taken from netlib, and that code happens to be copyrighted by ACM. The license that ACM provides for algorithms preclude their use in the ITK ecosystem.