The results enclosed for 3.5.4 (354.txt) are not correct. I can tell that by looking at the first step. Most implicit schemes in arkimex have the first stage explicit and therefore need to be "started" somehow when dealing with algebraic constraints. In this case, a different scheme is used to start the integration.

Note that in 3.6 and 3.5.4_SEGV the first step uses scheme 1bee (scheme=0:'1bee') and then switches to '3'. This is the correct sequence otherwise inconsistent initial conditions are inadvertently used or the solver thinks it solves an ODE. I'm not sure why it's crashing in 3.5.4_SEGV. Configuring with --with-debugging=yes may reveal more.

Emil

On 6/18/15 4:10 PM, Italo Tasso wrote:
Thank you Barry and Emil.

It works, but it takes twice as many steps than before.

Was it wrong before? Should I have been using this option all along?

I am solving the Navier-Stokes equations, full implicit and non-linear.

I also noticed two things:

In the 3.6.0 output, ts_monitor skips timestep #1.

If I use the equation type in 3.5.4, I get segmentation fault.

I attached the outputs.





On Thu, Jun 18, 2015 at 1:24 PM, Emil Constantinescu
<[email protected] <mailto:[email protected]>> wrote:

    No, I'm not sure if it should. It belongs to the same category as
    "problem_type" == TS_LINEAR / == TS_NONLINEAR.

    Emil


    On 6/18/15 11:15 AM, Abhyankar, Shrirang G. wrote:

        Can the DAE equation type be supplied via a run-time option?

        Shri

        -----Original Message-----
        From: barry smith <[email protected] <mailto:[email protected]>>
        Date: Thursday, June 18, 2015 at 11:08 AM
        To: Italo Tasso <[email protected]
        <mailto:[email protected]>>, "Constantinescu, Emil M."
        <[email protected] <mailto:[email protected]>>
        Cc: "[email protected] <mailto:[email protected]>"
        <[email protected] <mailto:[email protected]>>
        Subject: Re: [petsc-users] arkimex rejecting all dt in petsc 3.6.0


               Here is the response from Emil who made the changes to
            the code

            If you are solving a DAE then in the new version, we
            introduced a new
            flag that distinguishes between ODEs and DAEs leading to
            different
            semantics. For DAEs this is needed b/c it may not have
            consistent initial
            conditions.

            If solving DAEs, the user has to set the EquationType
            appropriately:
            e.g.,
            ierr =
            TSSetEquationType(ts,TS_EQ_DAE_IMPLICIT_INDEX1);CHKERRQ(ierr);

            This is documented in the doc, but I didn't add it to the
            changelog (Jed
            pointed it out to me).

            Currently it only affects -ts_type arkimex. I'll work with
            Satish to add
            it to the changelog.

            *If that's not the case:* let me know and we can dig deeper.

            Emil

                On Jun 18, 2015, at 5:48 AM, Italo Tasso
                <[email protected] <mailto:[email protected]>> wrote:

                I just upgraded to 3.6.0 and my code stopped working.
                All dt are
                rejected. I used the same configure line, same code,
                same everything.

                With 3.5.4 I get:

                0 TS dt 1e-06 time 0
                      0 SNES Function norm 2.549981005316e+05
                      1 SNES Function norm 6.107056905987e-03
                      2 SNES Function norm 1.483881932064e-10
                      3 SNES Function norm 9.122873794272e-11
                    Nonlinear solve converged due to CONVERGED_FNORM_ABS
                iterations 3
                      0 SNES Function norm 7.790429171165e+04
                      1 SNES Function norm 7.289068747803e-04
                      2 SNES Function norm 8.227639633330e-11
                    Nonlinear solve converged due to CONVERGED_FNORM_ABS
                iterations 2
                      0 SNES Function norm 1.154356516184e+05
                      1 SNES Function norm 2.309925413255e-03
                      2 SNES Function norm 6.382141981406e-11
                    Nonlinear solve converged due to CONVERGED_FNORM_ABS
                iterations 2
                        TSAdapt 'basic': step   0 accepted t=0
                + 1.000e-06
                wlte=0.000654 family='arkimex' scheme=0:'3' dt=1.000e-05

                With 3.6.0 I get:

                0 TS dt 1e-06 time 0
                      0 SNES Function norm 2.549981005316e+05
                      1 SNES Function norm 6.107056925316e-03
                      2 SNES Function norm 1.519319591792e-10
                      3 SNES Function norm 9.070104116945e-11
                    Nonlinear solve converged due to CONVERGED_FNORM_ABS
                iterations 3
                      0 SNES Function norm 7.790429171165e+04
                      1 SNES Function norm 6.942541792651e-04
                      2 SNES Function norm 8.458781909516e-11
                    Nonlinear solve converged due to CONVERGED_FNORM_ABS
                iterations 2
                      0 SNES Function norm 1.154356516184e+05
                      1 SNES Function norm 2.287202942961e-03
                      2 SNES Function norm 6.585201377573e-11
                    Nonlinear solve converged due to CONVERGED_FNORM_ABS
                iterations 2
                        TSAdapt 'basic': step   0 rejected t=0
                + 1.000e-06 wlte=
                324 family='arkimex' scheme=0:'3' dt=1.311e-07

                Any ideas? I attached the full output.

                Options I use:

                -ts_view -ts_type arkimex -ts_arkimex_fully_implicit
                -ts_adapt_monitor
                -ts_monitor -snes_monitor -snes_converged_reason
                -ksp_type preonly
                -pc_type lu -pc_factor_mat_solver_package mumps
                -snes_rtol 0 -snes_atol
                1e-10 -snes_stol 0

                <petsc354.txt><petsc360.txt>




Reply via email to