Can you make a PETSc example exhibit this behavior, or otherwise share a reproduce?
"Blondel, Sophie" <sblon...@utk.edu> writes: > Good morning Barry, > > Changing the initial timestep on the commandline didn't change anything. It's > like there is something happening afterwards that sets the initial dt to 0 s > that doesn't happen with TS_EXACTFINALTIME_STEPOVER. > > Cheers, > > Sophie > ________________________________ > From: Barry Smith <bsm...@petsc.dev> > Sent: Friday, December 13, 2024 22:27 > To: Blondel, Sophie <sblon...@utk.edu> > Cc: Jed Brown <j...@jedbrown.org>; Zhang, Hong <hongzh...@anl.gov>; Emil > Constantinescu <emcon...@anl.gov>; petsc-users@mcs.anl.gov > <petsc-users@mcs.anl.gov>; xolotl-psi-developm...@lists.sourceforge.net > <xolotl-psi-developm...@lists.sourceforge.net> > Subject: Re: [petsc-users] "-ts_exact_final_time matchstep" leads to > DIVERGED_STEP_REJECTED > > > Ok, the SNES reason DIVERGED_FNORM_NAN is likely due to the TS using a dt > of zero, and hence, the evaluation of the TS causing a divide by zero. > > So the TS adapt needs to be understood better in this situation. My guess > is still TS_EXACTFINALTIME_MATCHSTEP is buggy when one actually does get an > exact match. > > Please try using a different initial timestep like 0.5e-12 s on the command > line. > > Barry > > > On Dec 13, 2024, at 4:40 PM, Blondel, Sophie <sblon...@utk.edu> wrote: > > Barry, > > The short output is "SNESSolve has not converged due to Nan or Inf norm", the > full one is attached. > > Cheers, > > Sophie > ________________________________ > From: Barry Smith <bsm...@petsc.dev<mailto:bsm...@petsc.dev>> > Sent: Friday, December 13, 2024 14:56 > To: Blondel, Sophie <sblon...@utk.edu<mailto:sblon...@utk.edu>> > Cc: Jed Brown <j...@jedbrown.org<mailto:j...@jedbrown.org>>; Zhang, Hong > <hongzh...@anl.gov<mailto:hongzh...@anl.gov>>; Emil Constantinescu > <emcon...@anl.gov<mailto:emcon...@anl.gov>>; > petsc-users@mcs.anl.gov<mailto:petsc-users@mcs.anl.gov> > <petsc-users@mcs.anl.gov<mailto:petsc-users@mcs.anl.gov>>; > xolotl-psi-developm...@lists.sourceforge.net<mailto:xolotl-psi-developm...@lists.sourceforge.net> > > <xolotl-psi-developm...@lists.sourceforge.net<mailto:xolotl-psi-developm...@lists.sourceforge.net>> > Subject: Re: [petsc-users] "-ts_exact_final_time matchstep" leads to > DIVERGED_STEP_REJECTED > > > There is a bit of complicated logic to determine the "adjusted" timestep > in TSAdaptChoose() when if (*accept && ts->exact_final_time == > TS_EXACTFINALTIME_MATCHSTEP) { > > Is it possible that hmax = tmax - t; is exactly zero, and the logic below > does not correctly handle that case? > > 0 TS dt 0. time 0. > 0 TS dt 0. time 0. > 0 TS dt 0. time 0. > 0 TS dt 0. time 0. > TSAdapt basic step 0 stage rejected (SNES reason DIVERGED_FNORM_NAN) > t=0 + 0.000e+00 retrying with dt=0.000e+00 > TSAdapt basic step 0 stage rejected (SNES reason DIVERGED_FNORM_NAN) > t=0 + 0.000e+00 retrying with dt=0.000e+00 > TSAdapt basic step 0 stage rejected (SNES reason DIVERGED_FNORM_NAN) > t=0 + 0.000e+00 retrying with dt=0.000e+00 > TSAdapt basic step 0 stage rejected (SNES reason DIVERGED_FNORM_NAN) > t=0 + 0.000e+00 retrying with dt=0.000e+00 > TSAdapt basic step 0 stage rejected (SNES reason DIVERGED_FNORM_NAN) > t=0 + 0.000e+00 retrying with dt=0.000e+00 > TSAdapt basic step 0 stage rejected (SNES reason DIVERGED_FNORM_NAN) > t=0 + 0.000e+00 retrying with dt=0.000e+00 > TSAdapt basic step 0 stage rejected (SNES reason DIVERGED_FNORM_NAN) > t=0 + 0.000e+00 retrying with dt=0.000e+00 > TSAdapt basic step 0 stage rejected (SNES reason DIVERGED_FNORM_NAN) > t=0 + 0.000e+00 retrying with dt=0.000e+00 > TSAdapt basic step 0 stage rejected (SNES reason DIVERGED_FNORM_NAN) > t=0 + 0.000e+00 retrying with dt=0.000e+00 > TSAdapt basic step 0 stage rejected (SNES reason DIVERGED_FNORM_NAN) > t=0 + 0.000e+00 retrying with dt=0.000e+00 > TSAdapt basic step 0 stage rejected (SNES reason DIVERGED_FNORM_NAN) > t=0 + 0.000e+00 retrying with dt=0.000e+00 > > Sophie, > > Any idea why SNES reason DIVERGED_FNORM_NAN? Could you run with > -snes_error_if_not_converged? > > On Dec 13, 2024, at 2:34 PM, Blondel, Sophie > <sblon...@utk.edu<mailto:sblon...@utk.edu>> wrote: > > Hi everyone, > > The first max time it is trying to reach is 1.0e-12 s, and the initial dt is > set to 1.0e-12 s from the commandline options. I believe it's not a > formatting issue and that the dt is actually set somewhere to 0 s because > that's why the step is rejected. > > Best, > > Sophie > ________________________________ > From: Barry Smith <bsm...@petsc.dev<mailto:bsm...@petsc.dev>> > Sent: Friday, December 13, 2024 14:21 > To: Blondel, Sophie <sblon...@utk.edu<mailto:sblon...@utk.edu>>; Jed Brown > <j...@jedbrown.org<mailto:j...@jedbrown.org>>; Zhang, Hong > <hongzh...@anl.gov<mailto:hongzh...@anl.gov>>; Emil Constantinescu > <emcon...@anl.gov<mailto:emcon...@anl.gov>> > Cc: petsc-users@mcs.anl.gov<mailto:petsc-users@mcs.anl.gov> > <petsc-users@mcs.anl.gov<mailto:petsc-users@mcs.anl.gov>>; > xolotl-psi-developm...@lists.sourceforge.net<mailto:xolotl-psi-developm...@lists.sourceforge.net> > > <xolotl-psi-developm...@lists.sourceforge.net<mailto:xolotl-psi-developm...@lists.sourceforge.net>> > Subject: Re: [petsc-users] "-ts_exact_final_time matchstep" leads to > DIVERGED_STEP_REJECTED > > > Hm, what is the final time you are stepping towards in this run? > > There is something wrong with the adapt code since it seems to start with > a dt of 0 but then tries "adapting" several times, but it could be the > monitor function does not correctly format numbers smaller than 1.e-12 and it > is just using truly small dt. > > Jed, Hong, Emil? > > Barry > > > On Dec 10, 2024, at 11:08 AM, Blondel, Sophie > <sblon...@utk.edu<mailto:sblon...@utk.edu>> wrote: > > Good morning Barry, > > Attached are the updated files, there is more useful information in them. > > Cheers, > > Sophie > ________________________________ > > From: Blondel, Sophie via Xolotl-psi-development > <xolotl-psi-developm...@lists.sourceforge.net<mailto:xolotl-psi-developm...@lists.sourceforge.net>> > Sent: Monday, December 9, 2024 17:29 > To: Barry Smith <bsm...@petsc.dev<mailto:bsm...@petsc.dev>> > Cc: petsc-users@mcs.anl.gov<mailto:petsc-users@mcs.anl.gov> > <petsc-users@mcs.anl.gov<mailto:petsc-users@mcs.anl.gov>>; > xolotl-psi-developm...@lists.sourceforge.net<mailto:xolotl-psi-developm...@lists.sourceforge.net> > > <xolotl-psi-developm...@lists.sourceforge.net<mailto:xolotl-psi-developm...@lists.sourceforge.net>> > Subject: Re: [Xolotl-psi-development] [petsc-users] "-ts_exact_final_time > matchstep" leads to DIVERGED_STEP_REJECTED > > Hi Barry, > > I hope you are doing well. > > Attached are the output. To give a little more context, this is a "new" way > of running the code where multiple instances are created and communicate > together every few time steps (like coupling the code with itself in memory). > Here there are 3 instances that each have a separate TS object, plus one > "main" instance that doesn't solve anything but compute rates to exchange > between the other instances. > > Cheers, > > Sophie > ________________________________ > > From: Barry Smith <bsm...@petsc.dev<mailto:bsm...@petsc.dev>> > Sent: Monday, December 9, 2024 15:12 > To: Blondel, Sophie <sblon...@utk.edu<mailto:sblon...@utk.edu>> > Cc: petsc-users@mcs.anl.gov<mailto:petsc-users@mcs.anl.gov> > <petsc-users@mcs.anl.gov<mailto:petsc-users@mcs.anl.gov>>; > xolotl-psi-developm...@lists.sourceforge.net<mailto:xolotl-psi-developm...@lists.sourceforge.net> > > <xolotl-psi-developm...@lists.sourceforge.net<mailto:xolotl-psi-developm...@lists.sourceforge.net>> > Subject: Re: [petsc-users] "-ts_exact_final_time matchstep" leads to > DIVERGED_STEP_REJECTED > > > > On Dec 9, 2024, at 2:56 PM, Blondel, Sophie via petsc-users > <petsc-users@mcs.anl.gov<mailto:petsc-users@mcs.anl.gov>> wrote: > > Hi, > > I am trying to understand a strange behavior I'm encountering: when running > my application with "-ts_exact_final_time stepover" everything goes well, but > when I switch to "matchstep" I get DIVERGED_STEP_REJECTED before the first > time step is finished. > > This is in the very first time-step in TSSolve? > > Please run with -ts_monitor and send all the output (best for a short > time interval and do it twice once with -ts_exact_final_time stepover and > once with exact. > > Barry > > > I tried increasing the maximum number of rejections and it just takes longer > to diverge, and if I set the value to "unlimited" it is basically an infinite > loop. > > Is there a way to check why is the step rejected? Could the "matchstep" > option change tolerances somewhere that would cause that behavior? > > Let me know if I should provide more information. > > Best, > > Sophie Blondel > > <matchstep_reason.txt>