[petsc-dev] Problem with DMKSP/DMSNES and GMG
Boris Boutkov
borisbou at buffalo.edu
Fri Oct 26 10:11:02 CDT 2018
Hi, I'm just wondering if this ties into the issues I brought up in :
https://lists.mcs.anl.gov/pipermail/petsc-dev/2018-October/023615.html ?
>From my perspective, I think I would prefer the copy everything mechanism,
but I'm not sure about the nature of the introduced dependencies and if I
would have to make extra adjustments from my end.
Thanks for any clarification,
- Boris
On Fri, Oct 26, 2018 at 10:49 AM Matthew Knepley <knepley at gmail.com> wrote:
> I am having a problem, and every solution I can think of would seem to do
> violence to encapsulation or to DMKSP/DMSNES.
>
> I want to have GMG automatically work on the velocity part of Stokes. So I
> give
>
> -fieldsplit_velocity_pc_type mg
>
> in SNES ex62. This complains that the KSP has a DM but
> KSPSetComputeOperator() has not been called. It is fine on the global
> system because SNES called that in SNESSetupMatrices(). Thus in FieldSplit,
> I inserted
>
> {
> PetscErrorCode (*func)(KSP,Mat,Mat,void*);
> void *ctx;
>
> ierr = DMKSPGetComputeOperators(pc->dm, &func,
> &ctx);CHKERRQ(ierr);
> ierr = DMKSPSetComputeOperators(dms[i], func,
> ctx);CHKERRQ(ierr);
> }
>
> where we call KSPSetDM(). However, this does not work, because the subDM
> has a new DMSNES, which does not have the information about the problem.
>
> Solution #1:
>
> Copy the info from the old DMSNES to the subDMSNES. This inserts a
> dependence between KSP and SNES which we do not want.
>
> Solution #2:
>
> Have DMCreateSubDM() copy everything from the solvers. This also inserts
> dependencies, unless we have a "copy everything" mechanism, but is this
> what we want.
>
> Solution #3:
>
> Rethink DMKSP/DMSNES. Is this how we should store problem information.
> Dave already had another problem with the organization.
>
> What should be done? I have never understood this construct very well.
> Right now, this is holding up doing some computations I need.
>
> Thanks,
>
> Matt
> --
> What most experimenters take for granted before they begin their
> experiments is infinitely more interesting than any results to which their
> experiments lead.
> -- Norbert Wiener
>
> https://www.cse.buffalo.edu/~knepley/
> <http://www.cse.buffalo.edu/~knepley/>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20181026/6c45ac55/attachment.html>
More information about the petsc-dev
mailing list