[
https://issues.apache.org/jira/browse/MATH-581?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13053612#comment-13053612
]
Sébastien Brisard commented on MATH-581:
----------------------------------------
As a follow-up, please find attached patch #01, which accounts (I think) for
your comments.
This patch contains
- {{LinearOperator}}
- {{RealLinearOperator}}
- {{InvertibleRealLinearOperator}}
- {{NonSelfAdjointLinearOperatorException}}
- {{NonPositiveDefiniteLinearOperatorException}}
As soon as it will be validated, I'll be glad to contribute some real stuff,
namely
- {{IterativeSolver}}
- {{PreconditionedIterativeSolver}}
- {{IterativeSolverMonitor}}
- {{JacobiPreconditioner}}
- {{ConjugateGradient}}
- ...
For testing purposes, it would be convenient indeed to have {{RealMatrix}}
derive from {{RealLinearOperator}}, hence making it an abstract class instead
of an interface. If the submitted patch is accepted, maybe this issue should be
closed, and a new issue regarding this specific modification be opened. Once
this in turn is done, maybe I can open a new issue and commit a new patch with
the iterative solvers themselves (including Unit tests, which are based on
small, tractable matrices).
> Support for iterative linear solvers
> ------------------------------------
>
> Key: MATH-581
> URL: https://issues.apache.org/jira/browse/MATH-581
> Project: Commons Math
> Issue Type: New Feature
> Affects Versions: 3.0, Nightly Builds
> Reporter: Sébastien Brisard
> Labels: iterative, linear, solver
> Attachments: MATH-581-01.patch, linearoperator.zip
>
>
> Dear all,
> this issue has already been discussed on the forum. The idea is to implement
> the most popular linear iterative solvers (CG, SYMMLQ, etc...) in
> commons-math. The beauty of these solvers is that they do not need direct
> access to the coefficients of the matrix, only matrix-vector products are
> necessary. This is goof, as sometimes it is inetficient to store the
> coefficients of the matrix.
> So basically, before implementing the iterative solvers, we need to define an
> interface slightly more general than a matrix, namely LinearOperator, with
> only one basic operation: matrix-vector product.
> Here are a few interfaces and abstract classes that do that. Nothing fancy
> yet, I just wanted to have you advice on the implementation before I commit
> some solvers.
> I thought these classes could go in a package
> org.apache.commons.math.linearoperator, but really, I haven't got a clue...
> Best regards,
> Sebastien
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira