! ! Test AO with on IS with 0 entries - Fortran version of ex4.c ! #include program main use petscao implicit none PetscErrorCode ierr AO ao PetscInt localvert(4), nlocal PetscMPIInt rank IS is PetscInt one, zero ! Needed to work with 64-bit integers from Fortran one = 1 zero = 0 PetscCallA(PetscInitialize(ierr)) PetscCallMPIA(MPI_Comm_rank(PETSC_COMM_WORLD, rank, ierr)) nlocal = 0 if (rank == 0) then nlocal = 4 localvert(1) = 0 localvert(2) = 1 localvert(3) = 2 localvert(4) = 3 end if ! Test AOCreateBasic() PetscCallA(AOCreateBasic(PETSC_COMM_WORLD, nlocal, localvert, PETSC_NULL_INTEGER_ARRAY, ao, ierr)) PetscCallA(AODestroy(ao, ierr)) ! Test AOCreateMemoryScalable() PetscCallA(AOCreateMemoryScalable(PETSC_COMM_WORLD, nlocal, localvert, PETSC_NULL_INTEGER_ARRAY, ao, ierr)) PetscCallA(AODestroy(ao, ierr)) PetscCallA(AOCreate(PETSC_COMM_WORLD, ao, ierr)) PetscCallA(ISCreateStride(PETSC_COMM_WORLD, one, zero, one, is, ierr)) PetscCallA(AOSetIS(ao, is, is, ierr)) PetscCallA(AOSetType(ao, AOMEMORYSCALABLE, ierr)) PetscCallA(ISDestroy(is, ierr)) PetscCallA(AODestroy(ao, ierr)) PetscCallA(PetscFinalize(ierr)) end !/*TEST ! ! test: ! output_file: output/empty.out ! ! test: ! suffix: 2 ! nsize: 2 ! output_file: output/empty.out ! !TEST*/