Hello,

As Timo said,

since DuMux 3.0 the “standard" model (what you called implicit method) actually don’t care if it’s implicit Euler or explicit Euler or sequential.
sou can also setup an IMPES scheme in the “new” way of doing things

So maybe I will just do that. I would like to study how the IMPES scheme will work with my boundary and initial conditions, as compared to the fully implicit one.

My question is: is there an example of anything resembling a 2p (immiscible, incompressible) problem solved by IMPES method with DuMux 3.0 code?


I did try some things that I was able to find, namely this line in main.cc:

    using Assembler = FVAssembler<TypeTag, DiffMethod::numeric>;

I added "false" to the end to make time discetization explicit

    using Assembler = FVAssembler<TypeTag, DiffMethod::numeric, false>;

and got the following translation error:

.../dumux/dumux/assembly/cclocalassembler.hh:397:58: error: no matching function for call to ‘Dumux::NumericDifferentiation::partialDerivative(Dumux::CCLocalAssembler<TypeTag, Assembler, (Dumux::DiffMethod)0, false>::assembleJacobianAndResidualImpl(Dumux::CCLocalAssembler<TypeTag, Assembler, (Dumux::DiffMethod)0, false>::JacobianMatrix&, Dumux::CCLocalAssembler<TypeTag, Assembler, (Dumux::DiffMethod)0, false>::GridVariables&) ...

NumericDifferentiation::partialDerivative(evalStorage, elemSol[0][pvIdx], partialDeriv, storageResidual,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
eps_(elemSol[0][pvIdx], pvIdx), numDiffMethod);
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

OK, I thought, maybe I will use the DiffMethod::analytic, since I have the MyLocalResidual implementation inherited from TwoPIncompressibleLocalResidual, where addRobinFluxDerivatives is implemented for my neumann()  boundary conditions. The build went fine What I got afterwards was the runtime error

Solve: M deltax^k = rNewton: Caught exception: "NumericalProblem [solveLinearSystem:/home/dpavlov/DUMUX2/DUMUX/dumux/dumux/nonlinear/newtonsolver.hh:385]: Linear solver did not converge"

Am I on the right path at all? Should I pursue the analytical derivatives or set up the scheme differently with numeric derivatives?


Best regards,

Dmitry


_______________________________________________
Dumux mailing list
[email protected]
https://listserv.uni-stuttgart.de/mailman/listinfo/dumux

Reply via email to