1! 2! Program to test PetscSubcomm. 3! 4 program 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)) 26 end 27 28! 29!/*TEST 30! 31! test: 32! nsize: 2 33! 34!TEST*/ 35