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 <[email protected]> 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 <[email protected]> wrote:
>>> 
>>> 
>>>> On Mar 11, 2016, at 8:53 PM, Matthew Knepley <[email protected]> wrote:
>>>> 
>>>> On Fri, Mar 11, 2016 at 12:26 PM, Dave May <[email protected]> wrote:
>>>> On 11 March 2016 at 18:11, anton <[email protected]> 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
> 

Reply via email to