I am trying to solve a non-linear system with PETSs's SNES solvers. To run my code, I am using the following options for snes set through the command-line, seen below.
mpirun -np 1 ./Testvector \ -fBus $1/Bus.mat \ -fYm $1/Ym.mat \ -ft $1/t.mat \ -flinedata $1/linedata.mat \ -nox \ -snes_atol 1.e-5\ -snes_stol 1.e-6 \ -snes_rtol 1.e-12 \ -snes_max_it 100 \ -snes_max_linear_solve_fail 100 \ -snes_converged_reason \ -ksp_type preonly \ -pc_type lu \ -pc_factor_mat_solver_package superlu_dist \ -snes_monitor \ > result_superLU_dist.tmp 2>&1; After feeding my data, I get the following output 0 SNES Function norm 2.438306296478e+02 1 SNES Function norm 1.679437793666e+02 2 SNES Function norm 1.493618467597e+02 3 SNES Function norm 4.622194635741e+01 4 SNES Function norm 4.195017632984e+01 Nonlinear solve did not converge due to DIVERGED_LINE_SEARCH iterations 4 As you can see the the SNES function norm is *decreasing*, which indicates it is probably converging slowly to the actual solution. However after just 4 iterations, it stops and indicates non-convergence, even though my -snes_max_it = 100 as shown above. Is there a way to tell PETSc to continue its SNES iterations? Maybe some there are some default parameters which have to be changed? Thank you Gaurish
