1! 2! Program to test PetscSubcomm. 3! 4program main 5 6#include <petsc/finclude/petscsys.h> 7 use petscsys 8 implicit none 9 10 PetscErrorCode ierr 11 PetscSubcomm r 12 PetscMPIInt rank, size 13 MPI_Comm scomm 14 15 PetscCallA(PetscInitialize(ierr)) 16 PetscCallMPIA(MPI_Comm_size(PETSC_COMM_WORLD, size, ierr)) 17 PetscCallMPIA(MPI_Comm_rank(PETSC_COMM_WORLD, rank, ierr)) 18 PetscCallA(PetscSubcommCreate(PETSC_COMM_WORLD, r, ierr)) 19 PetscCallA(PetscSubcommSetFromOptions(r, ierr)) 20 PetscCallA(PetscSubcommSetTypeGeneral(r, rank, rank, ierr)) 21 22 PetscCallA(PetscSubcommGetChild(r, scomm, ierr)) 23 PetscCallA(PetscSubcommView(r, PETSC_VIEWER_STDOUT_WORLD, ierr)) 24 PetscCallA(PetscSubcommDestroy(r, ierr)) 25 PetscCallA(PetscFinalize(ierr)) 26end 27 28! 29!/*TEST 30! 31! test: 32! nsize: 2 33! 34!TEST*/ 35