|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectvec_math.LevenbergMarquardt
public class LevenbergMarquardt
Solves for a data model fit using Levenberg-Marquardt algorithm as in Num. Rec., 15.5, p683ff.
| Nested Class Summary | |
|---|---|
(package private) static class |
LevenbergMarquardt.LMSineModel
solve for phase, amplitude and frequency of a sinusoid |
static class |
LevenbergMarquardt.LMSineTest
|
(package private) static class |
LevenbergMarquardt.SinusModel
|
static class |
LevenbergMarquardt.SinusTest
We test with a simple sinus fit. |
| Field Summary | |
|---|---|
static double |
DEFEPSILON
Default improvement in chi-2 to induce terminating loop. |
static int |
DEFITER
Default number of maximum iteration. |
static double |
DEFLAMBDA
Default starting value for the 'fudge factor' boosting hessian. |
static int |
DEFTERMINATE
Default number of maximum improvements, if epsilon is reached. |
private double |
epsilon
Required improvement. |
private GradientModel |
fit
The differentaible multidimensional data model fit, dimension as x. |
private double |
lambda0
Starting value for lambda. |
private int |
maxiter
Maximum number of iterations. |
private int |
maxterm
Maximum number of improvements. |
| Constructor Summary | |
|---|---|
LevenbergMarquardt()
Constructs a new LevenbergMarquardt with default iteration and improvement values. |
|
LevenbergMarquardt(double lambda)
Constructs a new LevenbergMarquardt with default iteration and improvement values. |
|
LevenbergMarquardt(double lambda,
double epsilon)
Constructs a new LevenbergMarquardt with default iteration and improvement values. |
|
LevenbergMarquardt(double lambda,
double eps,
int iter,
int term)
Constructs a new LevenbergMarquardt with default iteration and improvement values. |
|
LevenbergMarquardt(double lambda,
int iter)
Constructs a new LevenbergMarquardt with default iteration and improvement values. |
|
| Method Summary | |
|---|---|
VectorG |
improve(VectorG start)
Iterates for a solution to the data model, starting from the given start vector. |
void |
setModel(GradientModel grad)
Sets the model fit. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final int DEFITER
public static final int DEFTERMINATE
public static final double DEFEPSILON
public static final double DEFLAMBDA
private int maxiter
private int maxterm
private double epsilon
private double lambda0
private GradientModel fit
| Constructor Detail |
|---|
public LevenbergMarquardt()
public LevenbergMarquardt(double lambda)
public LevenbergMarquardt(double lambda,
double epsilon)
public LevenbergMarquardt(double lambda,
int iter)
public LevenbergMarquardt(double lambda,
double eps,
int iter,
int term)
| Method Detail |
|---|
public void setModel(GradientModel grad)
Amoeba.
public VectorG improve(VectorG start)
getPseudoHessian of the fit is the inverse of the
covariance matrix.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||