Author: celestin
Date: Tue Mar 27 05:41:58 2012
New Revision: 1305734
URL: http://svn.apache.org/viewvc?rev=1305734&view=rev
Log:
Javadoc
Modified:
commons/proper/math/trunk/src/main/java/org/apache/commons/math3/linear/SymmLQ.java
Modified: commons/proper/math/trunk/src/main/java/org/apache/commons/math3/linear/SymmLQ.java
URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/main/java/org/apache/commons/math3/linear/SymmLQ.java?rev=1305734&r1=1305733&r2=1305734&view=diff
==============================================================================
--- commons/proper/math/trunk/src/main/java/org/apache/commons/math3/linear/SymmLQ.java (original)
+++ commons/proper/math/trunk/src/main/java/org/apache/commons/math3/linear/SymmLQ.java Tue Mar 27 05:41:58 2012
@@ -50,17 +50,33 @@ import org.apache.commons.math3.util.Mat
*
* ### Preconditioning

*
- * Preconditioning may reduce the number of iterations required. The solver may be
- * provided with a positive definite preconditioner M = C · C^{T}
- * that is known to approximate (A - shift · I) in some sense, where
- * systems of the form M · y = x can be solved efficiently. Then SYMMLQ
- * will implicitly solve the system of equations P · (A - shift ·
- * I) · P^{T} · xhat = P · b, i.e. Ahat ·
- * xhat = bhat, where P = C^{-1}, Ahat = P · (A - shift ·
- * I) · P^{T}, bhat = P · b, and return the solution x =
- * P^{T} · xhat. The associated residual is rhat = bhat - Ahat
- * · xhat = P · [b - (A - shift · I) · x] = P
- * · r.
+ * Preconditioning may reduce the number of iterations required. The solver may
+ * be provided with a positive definite preconditioner
+ * M = C · C^{T}
+ * that is known to approximate
+ * (A - shift · I) in some sense, where systems of the form
+ * M · y = x
+ * can be solved efficiently. Then SYMMLQ will implicitly solve the system of
+ * equations
+ * P · (A - shift · I) · P^{T} ·
+ * x_{hat} = P · b, i.e.
+ * A_{hat} · x_{hat} = b_{hat},
+ * where P = C^{-1},
+ * A_{hat} = P · (A - shift · I) · P^{T},
+ * b_{hat} = P · b,
+ * and return the solution
+ * x = P^{T} · x_{hat}.
+ * The associated residual is
+ * r_{hat} = b_{hat} - A_{hat} · x_{hat}
+ * = P · [b - (A - shift · I) · x]
+ * = P · r.
+ *

+ *
+ * In the case of preconditioning, the {@link IterativeLinearSolverEvent}s that
+ * this solver throws are such that
+ * {@link IterativeLinearSolverEvent#getNormOfResidual()} returns the norm of
+ * the *preconditioned*, updated residual, ||P · r||, not the norm
+ * of the *true* residual ||r||.
*

*
*
@@ -475,9 +491,15 @@ public class SymmLQ
}
/**
+ *

* Move to the CG point if it seems better. In this version of SYMMLQ,
* the convergence tests involve only cgnorm, so we're unlikely to stop
* at an LQ point, except if the iteration limit interferes.
+ *

+ *
+ * Additional upudates are also carried out in case {@code goodb} is set
+ * to {@code true}.
+ *

*
* @param x the vector to be updated with the refined value of xL
*/