Actual source code: ex53f.F90

  1: !
  2: !  Program to test PetscSubcomm.
  3: !
  4:       program main

  6: #include <petsc/finclude/petscsys.h>
  7:       use petscsys
  8:       implicit none

 10:       PetscErrorCode  ierr
 11:       PetscSubcomm    r
 12:       PetscMPIInt     rank,size
 13:       MPI_Comm        scomm

 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))

 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

 28: !
 29: !/*TEST
 30: !
 31: !   test:
 32: !     nsize: 2
 33: !
 34: !TEST*/