[petsc-users] ISAllGather withoutduplicates

Blaise Bourdin bourdin at lsu.edu
Fri Feb 17 14:39:21 CST 2012


> The way I do it right now is
>  ierr = ISGetTotalIndices(csIS,&labels);CHKERRQ(ierr);
>  ierr = ISGetSize(csIS,&num_cs_global);CHKERRQ(ierr);
> 
> I would violate PETSc semantics here since you are going to destroy csIS anyway:
> 
>   PetscSortRemoveDupsInt(&num_cs_global, labels);

That's what I was thinking too, but PetscSortRemoveDupsInt expect a PetscInt* not a const PetscInt*

It's not a big deal, I can live with the 2 copies, considering that the local size of the IS is going to be quite small.

Blaise




>   ISCreateGeneral(comm, num_cs_global, labels, PETSC_COPY_VALUES, &csIS_global);
>  
>  ierr = ISRestoreTotalIndices(csIS,&labels);CHKERRQ(ierr);
> 
>    Matt
>  
> 
> Blaise
> --
> Department of Mathematics and Center for Computation & Technology
> Louisiana State University, Baton Rouge, LA 70803, USA
> Tel. +1 (225) 578 1612, Fax  +1 (225) 578 4276 http://www.math.lsu.edu/~bourdin
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> -- 
> 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

-- 
Department of Mathematics and Center for Computation & Technology
Louisiana State University, Baton Rouge, LA 70803, USA
Tel. +1 (225) 578 1612, Fax  +1 (225) 578 4276 http://www.math.lsu.edu/~bourdin







-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20120217/d402f129/attachment.htm>


More information about the petsc-users mailing list