LM#
- class cuqi.solver.LM(A, x0, jacfun, maxit=10000.0, tol=1e-06, gradtol=1e-08, nu0=0.001, sparse=True)#
Levenberg-Marquardt algorithm for nonlinear least-squares problems. This is a translation of LevMaq.m from bardsleyj/SIAMBookCodes Used in Bardsley (2019) - Computational UQ for inverse problems. SIAM.
Based Algorithm 3.3.5 from: Kelley (1999) - Iterative Methods for Optimization. SIAM.
- Parameters:
A (callable f(x,*args).)
x0 (ndarray. Initial guess.)
jacfun (callable Jac(x). Jacobian of func.)
maxit (The maximum number of iterations.)
tol (The numerical tolerance for convergence checks.)
gradtol (The numerical tolerance for gradient.)
nu0 (default value for nu parameter in the algorithm.)
sparse (True: if 'jacfun' is defined as a sparse matrix, or as a function that) – supports sparse operations. False: if ‘jacfun’ is dense.
- __init__(A, x0, jacfun, maxit=10000.0, tol=1e-06, gradtol=1e-08, nu0=0.001, sparse=True)#
Methods