"Jin, Shuangshuang" <[email protected]> writes:

> I don’t know. TSARKIMEX doesn’t work for me either.
>
> “TSStep has failed due to DIVERGED_NONLINEAR_SOLVE, increase
> -ts_max_snes_failures or make negative to attempt recovery!”

It uses adaptive time stepping and the large time step cases might not
converge, and thus have to shorten the step.  Try using
-ts_max_snes_failures 20 -ts_adapt_monitor to see what's going on.  You
could start with -ts_arkimex_type 1bee (backward Euler with
extrapolation-based error estimator) before trying the higher order
schemes.

> Am I use it wrong?
>
> I simply replaced:
>
> “  ierr = TSCreate(PETSC_COMM_WORLD, &ts); CHKERRQ(ierr);
>   ierr = TSSetType(ts, TSTHETA); CHKERRQ(ierr);
>   ierr = TSThetaSetTheta(ts, 0.5); CHKERRQ(ierr);”
> by:
>   TSCreate(PETSC_COMM_WORLD,&ts);
>   //TSSetType(ts,TSROSW);
>   TSSetType(ts,TSARKIMEX);

Suggest just calling TSSetFromOptions and then pass -ts_type arkimex at 
run-time.

Attachment: pgpbK5p1IzN3S.pgp
Description: PGP signature

Reply via email to