Closed sunethwarna closed 4 years ago
@sunethwarna , it looks like these two lines:
should be replaced with
mprm.put("precond.psolver.num_def_vec", 1);
mprm.put("precond.psolver.def_vec", &dv);
Also, precond.psolver.solver
should be replaced with precond.psolver.isolver
here:
https://github.com/KratosMultiphysics/Kratos/blob/5f38d58d3be7bea856e629c06e8f24d6ec960beb/applications/TrilinosApplication/external_includes/amgcl_mpi_schur_complement_solver.h#L164-L166
But, @RiccardoRossi , I think it would be even better to replace amgcl::mpi::subdomain_deflation
with an mpi amg here. What do you think?
@ddemidov The suggested changes work for me. Thanks :). I will leave it to @ddemidov and @RiccardoRossi to decide on how to implement changes to the master branch.
sorry guys, i am out of office, i ll take a look asap.
btw, with the oroposed changes does it work better than normal amg?
@ddemidov i am (of course) ok with the changes you propose. I guess that this changed at some point when we updated the amgcl version.
regarding the possibility of using full_amg instead of deflation i am also in principle ok if you believe it will work. My doubt comes as I seem to remember that we were using a matrix-free method in the solution of the pressure complement so i am not 100% sure it will work correctly with full amg. If my comment is wrong then let's just correct this in a PR
BTW @sunethwarna is (i think) solving a stiff problem in terms of two turbulence-related variables. Maybe the CPR preconditioner would work good in that context
Hi everyone,
I ran into an error when using "amgcl_schur_complement" linear solver for fluid dynamics problem. I am using the latest kratos master (7.0.0-91521e42a4-Release). The error I'm getting is: "Error: Error in subdomain_deflation parameters: def_vec is not set"
Attached here with is the error log. Could you please have a look @ddemidov @RiccardoRossi ? I will attach a small test case as well to replicate the error.
Test case files