> On 11. Nov 2020, at 17:32, Dmitry Pavlov <[email protected]> wrote: > > Hello, > > I am running a fairly simple 1p porous flow simulation which is on a 2D > rectangular grid. In a particular case I came at, the initial and boundary > conditions, as well as spatial parameters, do not depend on the "y" > coordinate, only on "x". There is no gravity and the flow is designed to be > strictly horizontal. So I naturally expect the results to be essentially > 1-dimensional, i. e. the solution at any moment in time should be a function > of x and not of (x,y). But after some time, I get irregularities over the "y" > axis, that I think come from the linear solver. They are small, but they > cause further inconsistencies.
Hi Dmitry, we’ll probably need some more information to be able to help. What are you simulating exactly? A compressible flow problem? Seems to be non-linear since you use a Newton solver I guess? In case you are solving some kind of problem with density differences, there could be also physical instabilities but I assume you ruled that out by your setup. What do you mean by irregularities along y? Are they significant? Much more than numerical precision? What’s the magnitude of pressure in your problem and what are the differences in the y-axis? > > I tried AMGBiCGSTABBackend, ILU0BiCGSTABBackend and UMFPackBackend and the > problem persists. I tried to play with the convergence criteria > (LinearSolver.ResidualReduction, Newton.MaxAbsoluteResidual, > Newton.ResidualReduction, Newton.MaxRelativeShift). Some of them helped to > mitigate the problem, but did not eliminate it. Strictening the criteria too > much kills the convergence. UMFPack is a direct solver, so this is as much accuracy as you get I guess. You can try adjusting the Epsilon of the numerical derivatives (Assembly.NumericDifference.BaseEpsilon, see https://dumux.org/docs/doxygen/master/a00005.html). If you are fancy you can also switch from double to quad precision floats and see if this reduces the error. > > Are there any options that I can set for solvers to force them to respect the > symmetry of the problem over one axis? No. You would have to write your own solver. Timo > > (I know that I can use a 1D grid and have a consistent solution, but that > will not help in 2D situations where I have part of the system depending on > (x,y) and the other part depending only on x.) > > Best regards, > > Dmitry > > > _______________________________________________ > DuMux mailing list > [email protected] > https://listserv.uni-stuttgart.de/mailman/listinfo/dumux _______________________________________________ DuMux mailing list [email protected] https://listserv.uni-stuttgart.de/mailman/listinfo/dumux
