nlop.irgnm

Contents

nlop.irgnm#

bartorch.nlop.irgnm()#

Solve F(x) = y by iteratively regularized Gauss-Newton.

Linearizes F at the current iterate and solves the linearized problem under a Tikhonov weight that decays from alpha towards alpha_min, so early steps are strongly regularized and later ones are not.

Parameters:
  • y (tensor) – Data of F.oshapes[0].

  • F (NonlinearOperator) – The forward model.

  • x0 (tensor or tuple of tensor, default=None) – Starting iterate; without one the model’s own initial value is used.

  • xref (tensor or tuple of tensor, default=None) – Regularization centre the steps are pulled towards; without one they are regularized towards zero.

  • inner (solver, default=None) – Solver for the linearized problem, from bartorch.optim. Without one it is solved by conjugate gradients inside the library.

  • **settings – Settings of IRGNM, among them iterations (8), alpha, alpha_min and redu.

Returns:

The solution, one tensor per input of F.

Return type:

torch.Tensor or tuple of torch.Tensor