I'm changing those two routines to also preallocate.
Barry
On Aug 25, 2008, at 4:27 PM, Lisandro Dalcin wrote:
> Barry/Matt/Shatish. Could any of you review the implementation of
> MatGetOwnershipRanges() and MatGetOwnershipRangesColumns(). I believe
> a MatPreallocated() call is missing in both functions? The companion
> ones, MatGetOwnershipRange() and MatGetOwnershipRangeColumns()
> DO HAVE the call to MatPreallocate(), I believe this is indeed the
> right way: PetscMapSetUp() calls are actually made in matrix
> preallocation routines. Anyway, this is a bit dangerous, because this
> makes getting ownership range a collective operation if the matrix is
> not preallocated. Furthermore, this is in contradiction to all the
> docs about XXXGetOwnershipRangeXXX(). Of course, the safe (but
> unconvenient) way to go would be to disable operation on
> non-preallocated Mat's by generating errors.
>
> --
> Lisandro Dalc?n
> ---------------
> Centro Internacional de M?todos Computacionales en Ingenier?a (CIMEC)
> Instituto de Desarrollo Tecnol?gico para la Industria Qu?mica (INTEC)
> Consejo Nacional de Investigaciones Cient?ficas y T?cnicas (CONICET)
> PTLC - G?emes 3450, (3000) Santa Fe, Argentina
> Tel/Fax: +54-(0)342-451.1594
>