[petsc-users] MatZeroRowsColumnsLocal for MatNest
Stefano Zampini
stefano.zampini at gmail.com
Sun Feb 4 13:43:17 CST 2018
Also, it uses mat->cmap->mapping, which is wrong. It shall use mat->rmap->mapping, and check if mat->rmap->mapping == mat->cmap->mapping
> On Feb 4, 2018, at 10:39 PM, Jed Brown <jed at jedbrown.org> wrote:
>
> "Garth N. Wells" <gnw20 at cam.ac.uk> writes:
>
>> As a note, with MatNest and MatZeroRowsColumns I get
>>
>> [0]PETSC ERROR: No support for this operation for this object type
>> [0]PETSC ERROR: Mat type nest
>>
>> which is informative, but with MatNest and and MatZeroRowsColumnsLocal I get
>>
>> [0]PETSC ERROR:
>> ------------------------------------------------------------------------
>> [0]PETSC ERROR: Caught signal number 11 SEGV: Segmentation Violation,
>> probably memory access out of range
>
> Gross. I assume Barry wrote it to call the ops->zerorowscolumns
> directly to follow the same pattern as MatZeroRowsLocal (which first
> checks for a special ops pointer, and then still doesn't check if
> ops->zerorows is NULL). If you need this, we'll need to add a new ops
> pointer and implement it for MatNest. If you just need a better error
> message, we can just fix up the dispatch.
>
>> Garth
>>
>> On 4 February 2018 at 18:43, Jed Brown <jed at jedbrown.org> wrote:
>>
>>> It is not implemented and it's somewhat inconsistent with the MatNest
>>> philosophy of specifying everything in terms of local indices, though it
>>> could be implemented.
>>>
>>> "Garth N. Wells" <gnw20 at cam.ac.uk> writes:
>>>
>>>> Should MatZeroRowsColumnsLocal work for matrices of type MATNEST?
>>>>
>>>> Garth
>>>
More information about the petsc-users
mailing list