petsc-3.12.4 2020-02-04
Report Typos and Errors

# AOCreateMemoryScalable

Creates a memory scalable application ordering using two integer arrays.

### Synopsis

    #include "petscao.h"
    PetscErrorCode AOCreateMemoryScalable(MPI_Comm comm,PetscInt napp,const PetscInt myapp[],const PetscInt mypetsc[],AO *aoout)

Collective

### Input Parameters

| comm | - MPI communicator that is to share AO
| napp | - size of integer arrays
| myapp | - integer array that defines an ordering
| mypetsc | - integer array that defines another ordering (may be NULL to indicate the natural ordering, that is 0,1,2,3,...)

### Output Parameter

aoout -the new application ordering

### Notes

The arrays myapp and mypetsc must contain the all the integers 0 to napp-1 with no duplicates; that is there cannot be any "holes" in the indices. Use AOCreateMapping() or AOCreateMappingIS() if you wish to have "holes" in the indices. Comparing with AOCreateBasic(), this routine trades memory with message communication.

### See Also

AOCreateMemoryScalableIS(), AODestroy(), AOPetscToApplication(), AOApplicationToPetsc()

### Level

beginner

### Location

src/vec/is/ao/impls/memscalable/aomemscalable.c

### Implementations

AOCreateMemoryScalable_private in src/vec/is/ao/impls/memscalable/aomemscalable.c
Index of all AO routines
Table of Contents for all manual pages
Index of all manual pages