[petsc-users] PCGASMSetLocalSubdomains

Hui Zhang mike.hui.zhang at hotmail.com
Wed Feb 15 10:26:46 CST 2012


On Feb 15, 2012, at 5:18 PM, Barry Smith wrote:

> 
> try it

Yes, I'm trying.  Just one more question: why there is no *Get* LocalToGlobalMapping
so that when a Mat is with some LocalToGlobalMapping we can temporarily change with
another mapping and reset back to the original mapping.

> 
> On Feb 15, 2012, at 10:07 AM, Hui Zhang wrote:
> 
>> On Feb 15, 2012, at 11:19 AM, Hui Zhang wrote:
>> 
>>> Hi Dmitry,
>>> 
>>> thanks a lot! Currently, I'm not using ISColoring. Just comes another question
>>> on PCGASMSetModifySubMatrices(). The user provided function has the prototype
>>> 
>>>    func (PC pc,PetscInt nsub,IS *row,IS *col,Mat *submat,void *ctx);
>>> 
>>> I think the coloumns from the parameter 'col' are always the same as the rows 
>>> from the parameter 'row'. Because PCGASMSetLocalSubdomains() only accepts 
>>> index sets but not rows and columns. Has I misunderstood something?
>> 
>> As I tested, the row and col are always the same. 
>> 
>> I have a new question. Am I allowed to SetLocalToGlobalMapping() for the submat's
>> in the above func()?
>> 
>> thanks,
>> Hui
>> 
>>> 
>>> thanks,
>>> Hui
>>> 
>>> 
>>> On Feb 11, 2012, at 3:36 PM, Dmitry Karpeev wrote:
>>> 
>>>> Yes, that's right.
>>>> There is no good way to help the user assemble the subdomains at the moment beyond the 2D stuff.
>>>> It is expected that they are generated from mesh subdomains.
>>>> Each IS does carry the subdomains subcomm.
>>>> 
>>>> There is ISColoringToList() that is supposed to convert a "coloring" of indices to an array of ISs,
>>>> each having the indices with the same color and the subcomm that supports that color. It is
>>>> largely untested, though.  You could try using it and give us feedback on any problems you encounter.
>>>> 
>>>> Dmitry.
>>>> 
>>>> 
>>>> On Sat, Feb 11, 2012 at 6:06 AM, Hui Zhang <mike.hui.zhang at hotmail.com> wrote:
>>>> About PCGASMSetLocalSubdomains(), in the case of one subdomain supported by
>>>> multiple processors, shall I always create the arguments 'is[s]' and 'is_local[s]'
>>>> in a subcommunicator consisting of processors supporting the subdomain 's'?
>>>> 
>>>> The source code of PCGASMCreateSubdomains2D() seemingly does so.
>>>> 
>>>> Thanks,
>>>> Hui
>>>> 
>>>> 
>>> 
>> 
> 
> 



More information about the petsc-users mailing list