Thank you very much for your reply. I tried both switches, but unfortunately they didn't seem to meet my needs.
-ts_adapt_always_accept The switch doesn't seem to work, reporting errors when the maximum number of steps is reached without convergence, then the program exits. -ts_error_if_step_fails 0 This switch accepts the non-convergence time step and outputs the result, but does not continue into the next time step calculation ( The time step hasn't reached the maximum time step I set). And I wonder if the variable behind this switch is optional? What does it mean? I hope to achieve in the case of non-convergence Newton step( for example, the maximum number of Newton iteration steps reached -snes_max_it 50), can go in the next time step calculation. Thanks, Yingjie Zhang, Hong <[email protected]> 于2020年4月28日周二 下午10:51写道: > -ts_error_if_step_fails 0 > > You might want to find out why the nonlinear solver does not converge > first. If you have a hand-written Jacobian, you can validate it with > -snes_test_jacobian 1 (for a small test case). > > Hong (Mr.) > > > On Apr 28, 2020, at 8:21 AM, Yingjie Wu <[email protected]> wrote: > > > > Dear PETSc developers > > Hi, > > > > I have recently used TS to solve nonlinear equations with time terms. > since the convergence of my model is not very good, i would like to set to > iterative fixed nonlinear steps per time step. If the problem does not meet > the SNES convergence criteria after fixed number of nonlinear steps , then > go to the next time step calculation. I tried -snes_max_it , but didn't > achieve the effect I wanted, and the program stopped after iterating the > fixed number of steps. How should I set up in the program? > > > > Thanks, > > Yingjie > >
