cern.colt.matrix.tdouble.algo.solver
Class DoubleMRNSD
- java.lang.Object
-
- cern.colt.matrix.tdouble.algo.solver.AbstractDoubleIterativeSolver
-
- cern.colt.matrix.tdouble.algo.solver.DoubleMRNSD
-
- All Implemented Interfaces:
- DoubleIterativeSolver
public class DoubleMRNSD extends AbstractDoubleIterativeSolver
MRNSD is Modified Residual Norm Steepest Descent method used for solving large-scale, ill-posed inverse problems of the form: b = A*x + noise. This algorithm is nonnegatively constrained.References:
[1] J. Nagy, Z. Strakos, "Enforcing nonnegativity in image reconstruction algorithms" in Mathematical Modeling, Estimation, and Imaging, David C. Wilson, et.al., Eds., 4121 (2000), pg. 182--190.
[2] L. Kaufman, "Maximum likelihood, least squares and penalized least squares for PET", IEEE Trans. Med. Imag. 12 (1993) pp. 200--214.
-
-
Field Summary
Fields Modifier and Type Field and Description static doublesqrteps
-
Constructor Summary
Constructors Constructor and Description DoubleMRNSD()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description DoubleMatrix1Dsolve(DoubleMatrix2D A, DoubleMatrix1D b, DoubleMatrix1D x)Solves the given problem, writing result into the vector.-
Methods inherited from class cern.colt.matrix.tdouble.algo.solver.AbstractDoubleIterativeSolver
getIterationMonitor, getPreconditioner, setIterationMonitor, setPreconditioner
-
-
-
-
Method Detail
-
solve
public DoubleMatrix1D solve(DoubleMatrix2D A, DoubleMatrix1D b, DoubleMatrix1D x) throws IterativeSolverDoubleNotConvergedException
Description copied from interface:DoubleIterativeSolverSolves the given problem, writing result into the vector.- Parameters:
A- Matrix of the problemb- Right hand sidex- Solution is stored here. Also used as initial guess- Returns:
- The solution vector x
- Throws:
IterativeSolverDoubleNotConvergedException
-
-
DMelt 3.0 © DataMelt by jWork.ORG