The most basic trust region method in SNES for solving systems of nonlinear equations, SNES_EQ_NTR (-snes_type tr), is taken from the MINPACK project [14]. Several parameters can be set to control the variation of the trust region size during the solution process. In particular, the user can control the initial trust region radius, computed by
by setting
via the option
-snes_eq_tr_delta0 <delta0>.
The default trust region method for unconstrained minimization, SNES_UM_NTR ( -snes_type umtr), is based on the work of Steihaug [21]. This method uses the preconditioned conjugate gradient method via the KSP solver KSPQCG to determine the approximate minimizer of the resulting quadratic at each nonlinear iteration. This formulation requires the use of a symmetric preconditioner, where the currently available options are Jacobi, incomplete Cholesky, and the null preconditioners, which can be set with the options -pc_type jacobi, -pc_type icc, and -pc_type none, respectively.