Actual source code: ex17f.F90
1: ! Demonstrates PetscGetVersionNumber(): Fortran Example
2: #include <petsc/finclude/petscsys.h>
3: program main
4: use petscsys
6: implicit none
7: PetscErrorCode :: ierr
8: PetscInt :: major, minor, subminor, release
9: character(len=PETSC_MAX_PATH_LEN) :: outputString
11: ! Every PETSc routine should begin with the PetscInitialize() routine.
13: PetscCallA(PetscInitialize(ierr))
14: PetscCallA(PetscGetVersionNumber(major, minor, subminor, release, ierr))
16: if (major /= PETSC_VERSION_MAJOR) then
17: write (outputString, *) 'Library major', major, 'does not equal include', PETSC_VERSION_MAJOR
18: SETERRA(PETSC_COMM_SELF, PETSC_ERR_PLIB, trim(outputString))
19: end if
21: if (minor /= PETSC_VERSION_MINOR) then
22: write (outputString, *) 'Library minor', minor, 'does not equal include', PETSC_VERSION_MINOR
23: SETERRA(PETSC_COMM_SELF, PETSC_ERR_PLIB, trim(outputString))
24: end if
26: if (subminor /= PETSC_VERSION_SUBMINOR) then
27: write (outputString, *) 'Library subminor', subminor, 'does not equal include', PETSC_VERSION_SUBMINOR
28: SETERRA(PETSC_COMM_SELF, PETSC_ERR_PLIB, trim(outputString))
29: end if
31: PetscCallA(PetscFinalize(ierr))
32: end program main
34: !/*TEST
35: !
36: ! test:
37: ! output_file: output/empty.out
38: !
39: !TEST*/