Commons Math
  1. Commons Math
  2. MATH-771

Improve javadoc for iterative linear solvers with preconditioners

    Details

    • Type: Improvement Improvement
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 3.1
    • Fix Version/s: None

      Description

      Preconditioning is the replacement of the linear system A * x = b with A * M^(-1) * y = b, followed by x = M^(-1) * y, where M approximates in some sense A. There is no consensus in the literature as to whether M of M^(-1) should be called the preconditioner.

      In o.a.c.m3.linear, the Javadoc currently states that M is the preconditioner. However, following MATH-735, the solver must be passed M^(-1) (not M!) as a RealLinearOperator. This makes the whole Javadoc a bit obscure. It would be logical to call preconditioning the replacement of the initial system with A * M * y = b, where M approximates in some sense A^(-1) and will be called the preconditioner.

      Such a change will make the javadoc more readable. However, it requires careful review of the existing Javadoc for the following classes

      • PreconditionedIterativeLinearSolver,
      • ConjugateGradient,
      • SymmLQ,
      • JacobiPreconditioner,

      Also, in PreconditionedIterativeLinearSolver (and its concrete implementations), the parameter minv in solve() should be renamed m.

        Activity

        Hide
        Sébastien Brisard added a comment -

        Changes applied to org.apache.commons.math3.linear.PreconditionedIterativeLinearSolver in r1305738.

        Show
        Sébastien Brisard added a comment - Changes applied to org.apache.commons.math3.linear.PreconditionedIterativeLinearSolver in r1305738 .
        Hide
        Sébastien Brisard added a comment -

        Changes applied to org.apache.commons.math3.linear.ConjugateGradient in r1306133.

        Show
        Sébastien Brisard added a comment - Changes applied to org.apache.commons.math3.linear.ConjugateGradient in r1306133 .
        Hide
        Sébastien Brisard added a comment -

        Changes applied to org.apache.commons.math3.linear.SymmLQ in r1306135.

        Show
        Sébastien Brisard added a comment - Changes applied to org.apache.commons.math3.linear.SymmLQ in r1306135 .
        Hide
        Sébastien Brisard added a comment -

        Changes applied to org.apache.commons.math3.linear.JacobiPreconditioner in r1306148.

        Show
        Sébastien Brisard added a comment - Changes applied to org.apache.commons.math3.linear.JacobiPreconditioner in r1306148 .
        Hide
        Sébastien Brisard added a comment -

        Fixed in r1306150.

        Show
        Sébastien Brisard added a comment - Fixed in r1306150 .

          People

          • Assignee:
            Sébastien Brisard
            Reporter:
            Sébastien Brisard
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development