[petsc-dev] PCASM uses DMCreateDecomposition which splits field, NOT expected behavior

Dmitry Karpeev karpeev at mcs.anl.gov
Mon May 28 16:32:01 CDT 2012


I refactored the code to get rid of field/domain decomposition mixing.
The use of DM in ASM is reenabled here:
http://petsc.cs.iit.edu/petsc/petsc-dev/rev/2e2ee6a01d1a
I didn't see any errors related to it in alltest, but I'll keep an eye on
the nightlies.

Dmitry.

On Sun, May 27, 2012 at 9:40 PM, Jed Brown <jedbrown at mcs.anl.gov> wrote:

> In particular, read through my first email in this thread. I explain how
> your implementation leads to several instances of either the wrong
> algorithm or a crash.
>
> I pushed SNES runex48_5, it is a basic test of PCASM using AIJ, BAIJ, and
> SBAIJ.
>
> If you revert http://petsc.cs.iit.edu/petsc/petsc-dev/rev/d9a0e3f9dacd,
> the AIJ test will take much more iterations and the other two will crash.
>
>
> On Sun, May 27, 2012 at 9:02 PM, Jed Brown <jedbrown at mcs.anl.gov> wrote:
>
>> ./ex48 -pc_type asm
>>
>> does the wrong algorithm.
>> On May 27, 2012 8:56 PM, "Dmitry Karpeev" <karpeev at mcs.anl.gov> wrote:
>>
>>> I think I have a fix and want to reenable DM to serve up decompositions
>>> to PCASM.
>>> Was there a particular test that was failing? I don't see any
>>> decomposition-related errors in alltest.
>>> Dmitry.
>>>
>>> On Sat, May 26, 2012 at 10:38 PM, Jed Brown <jedbrown at mcs.anl.gov>wrote:
>>>
>>>> On Sat, May 26, 2012 at 10:24 PM, Dmitry Karpeev <karpeev at mcs.anl.gov>wrote:
>>>>
>>>>> How about having a DM-specific function for that designation?
>>>>>>
>>>>> DMXXXGetFieldSplits()/DMXXXGetDomainDecompositions(), for example?
>>>>>
>>>>
>>>> For the C interface, maybe configure a named set with DMXxxSet... and
>>>> tell PCASM to use it. For the options database interface, maybe have the
>>>> option processed by DMXxx code instead of by PCASM. I don't know, this
>>>> might be just as bad.
>>>>
>>>>
>>>>> I think that would work, if the implementation defined only a small
>>>>> number of decompositions.
>>>>> If instead there is a short grammar defining well-formed strings
>>>>> naming such decompositions, I'm not sure how to
>>>>> communicate that to the user, other than in documentation.  I have
>>>>> DMLibMeshGetVars() to return all vars.  FieldSplits
>>>>> can be defined as arbitrary groupings of those.  Each split will then
>>>>> advertise only the vars in the groupings that defines the split.
>>>>>
>>>>
>>>> I still don't know what to do about a nonlinear change of basis.
>>>> Advertising var names seems reasonable to me.
>>>>
>>>> Note that ASM domains are essentially vertex-oriented which is
>>>> different from element-centered domains (natural for non-overlapping
>>>> methods).
>>>>
>>>
>>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20120528/331fbdd9/attachment.html>


More information about the petsc-dev mailing list