[petsc-dev] AOCreateBasic vs AOCreateMapping

Smith, Barry F. bsmith at mcs.anl.gov
Mon Aug 27 12:03:09 CDT 2018

   From the manual page

    the arrays myapp and mypetsc need NOT contain the all the integers 0 to napp-1, that is there CAN be "holes"  in the indices.
       Use AOCreateBasic() or AOCreateBasicIS() if they do not have holes for better performance.

so they are two different things. Mapping is more general but could be much slower than basic (when basic works).


> On Aug 27, 2018, at 10:11 AM, Hapla Vaclav <vaclav.hapla at erdw.ethz.ch> wrote:
> Hello
> I don't understand the difference between these two (and AOCreate{Basic,Mapping}IS). They do the same according to docs. My guess would be the latter is obsolete, dating back to before multiple AOTypes were introduced?
> Maybe just AOMappingHas{Application,Petsc}Index() need to be renamed/edited to AOBasicHas{Application,Petsc}Index(), and then AOCreateMapping{,IS} could be removed?
> Cheers
> Vaclav

More information about the petsc-dev mailing list