[petsc-users] DMShellSetCreateRestriction
Barry Smith
bsmith at mcs.anl.gov
Wed Mar 16 15:54:04 CDT 2016
Ok, it is finally available in the branch barry/add-dmshellcreaterestriction sorry for the delay I needed some emergency surgery for Toby due to overly complex reference counting.
See src/ksp/ksp/examples/tutorials/ex65.c that is now a full example of using DMSHELL and uses this new functionality. So if you provide a DMCreateRestriction function for SHELL (or any DM in fact) it will use this restriction operator automatically in PCMG
Please let us know if you have any difficulties.
Barry
> On Mar 12, 2016, at 3:09 AM, anton <popov at uni-mainz.de> wrote:
>
>
>
> On 03/11/2016 11:25 PM, Barry Smith wrote:
>> Boris,
>>
>> We will add this support to the DMShell and its usage from PCMG within a few days.
>>
>> Barry
>>
>
> Tanks Barry. This is super-fast and very helpful.
>
>
> Cheers,
> Anton
>>> On Mar 11, 2016, at 3:39 PM, Boris Kaus <kaus at uni-mainz.de> wrote:
>>>
>>>
>>>> On Mar 11, 2016, at 8:53 PM, Matthew Knepley <knepley at gmail.com> wrote:
>>>>
>>>> On Fri, Mar 11, 2016 at 12:26 PM, Dave May <dave.mayhem23 at gmail.com> wrote:
>>>> On 11 March 2016 at 18:11, anton <popov at uni-mainz.de> wrote:
>>>> Hi team,
>>>>
>>>> I'm implementing staggered grid in a PETSc-canonical way, trying to build a custom DM object, attach it to SNES, that should later transfered it further to KSP and PC.
>>>>
>>>> Yet, the Galerking coarsening for staggered grid is non-symmetric. The question is how possible is it that DMShellSetCreateRestriction can be implemented and included in 3.7 release?
>>>>
>>>> It's a little more work than just adding a new method within the DM and a new APIs for DMCreateRestriction() and DMShellSetCreateRestriction().
>>>> PCMG needs to be modified to call DMCreateRestriction().
>>>>
>>>> Dave is correct. Currently, PCMG only calls DMCreateInterpolation(). We would need to add a DMCreateRestriction() call.
>>> The PCMG object already uses a restriction operator that is different from the interpolation parameter if it is specified with PCMGSetRestriction.
>>> For consistency, one would expect a similar DMCreateRestriction object, not? I realize that this is not relevant for FEM codes, but for staggered FD it makes quite some difference.
>>>
>>> Other suggestions on how to best integrate staggered finite differences within the current PETSc framework are ofcourse also highly welcome.
>>> Our current thinking was to pack it into a DMSHELL (which has the problem of not having a restriction interface).
>>>
>>> thanks,
>>> Boris
>>>
>>>
>>>
>>>
>>>> Thanks,
>>>>
>>>> Matt
>>>> Please, please.
>>>>
>>>> Thanks,
>>>> Anton
>>>>
>>>>
>>>> --
>>>> 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
>
More information about the petsc-users
mailing list