1c4762a1bSJed Brown! Demonstrates PetscGetVersionNumber(): Fortran Example 2c4762a1bSJed Brown 3c4762a1bSJed Brown 4c4762a1bSJed Brownprogram main 5c4762a1bSJed Brown#include <petsc/finclude/petscsys.h> 6c4762a1bSJed Brown use petscsys 7c4762a1bSJed Brown 8c4762a1bSJed Brown implicit none 9c4762a1bSJed Brown PetscErrorCode :: ierr 10c4762a1bSJed Brown PetscInt :: major,minor,subminor 11*62ac926dSPierre Jolivet character(len=PETSC_MAX_PATH_LEN) :: outputString 12c4762a1bSJed Brown 13c4762a1bSJed Brown ! Every PETSc routine should begin with the PetscInitialize() routine. 14c4762a1bSJed Brown 15c4762a1bSJed Brown call PetscInitialize(PETSC_NULL_CHARACTER,ierr) 16c4762a1bSJed Brown if (ierr /= 0) then 17c4762a1bSJed Brown write(6,*)'Unable to initialize PETSc' 18c4762a1bSJed Brown stop 19c4762a1bSJed Brown endif 20c4762a1bSJed Brown 21c4762a1bSJed Brown call PetscGetVersionNumber(major,minor,subminor,PETSC_NULL_INTEGER,ierr) 22c4762a1bSJed Brown CHKERRA(ierr) 23c4762a1bSJed Brown 24c4762a1bSJed Brown if (major /= PETSC_VERSION_MAJOR) then 25c4762a1bSJed Brown write(outputString,*)'Library major',major,'does not equal include',PETSC_VERSION_MAJOR 26c4762a1bSJed Brown SETERRA(PETSC_COMM_SELF,PETSC_ERR_PLIB,trim(outputString)) 27c4762a1bSJed Brown endif 28c4762a1bSJed Brown 29c4762a1bSJed Brown if (minor /= PETSC_VERSION_MINOR) then 30c4762a1bSJed Brown write(outputString,*)'Library minor',minor,'does not equal include',PETSC_VERSION_MINOR 31c4762a1bSJed Brown SETERRA(PETSC_COMM_SELF,PETSC_ERR_PLIB,trim(outputString)) 32c4762a1bSJed Brown endif 33c4762a1bSJed Brown 34c4762a1bSJed Brown if (subminor /= PETSC_VERSION_SUBMINOR) then 35c4762a1bSJed Brown write(outputString,*)'Library subminor',subminor,'does not equal include',PETSC_VERSION_SUBMINOR 36c4762a1bSJed Brown SETERRA(PETSC_COMM_SELF,PETSC_ERR_PLIB,trim(outputString)) 37c4762a1bSJed Brown endif 38c4762a1bSJed Brown 39c4762a1bSJed Brown call PetscFinalize(ierr) 40c4762a1bSJed Brown 41c4762a1bSJed Brown 42c4762a1bSJed Brownend program main 43c4762a1bSJed Brown 44c4762a1bSJed Brown!/*TEST 45c4762a1bSJed Brown! 46c4762a1bSJed Brown! test: 47c4762a1bSJed Brown! 48c4762a1bSJed Brown!TEST*/ 49c4762a1bSJed Brown 50c4762a1bSJed Brown 51c4762a1bSJed Brown 52c4762a1bSJed Brown 53