xref: /petsc/src/sys/tests/ex17f.F90 (revision 9b88ac225e01f016352a5f4cd90e158abe5f5675)
1f8402805SBarry Smith!
2f8402805SBarry Smith!
3f8402805SBarry Smith!     Test for PetscFOpen() from Fortran
4f8402805SBarry Smith!
5f8402805SBarry Smith#include <petsc/finclude/petscsys.h>
6*c5e229c2SMartin Diehlprogram main
7f8402805SBarry Smith  use petscsys
8f8402805SBarry Smith  implicit none
9f8402805SBarry Smith
10f8402805SBarry Smith  PetscErrorCode ierr
11f8402805SBarry Smith  PetscMPIInt rank
12f8402805SBarry Smith  PetscFortranAddr file
13f8402805SBarry Smith  character*100 joe
14f8402805SBarry Smith
15f8402805SBarry Smith  PetscCallA(PetscInitialize(ierr))
16f8402805SBarry Smith  PetscCallMPIA(MPI_Comm_rank(PETSC_COMM_WORLD, rank, ierr))
17f8402805SBarry Smith
18f8402805SBarry Smith  PetscCallA(PetscFOpen(PETSC_COMM_WORLD, 'testfile', 'w', file, ierr))
19f8402805SBarry Smith
20f8402805SBarry Smith  PetscCallA(PetscFPrintf(PETSC_COMM_WORLD, file, 'Hi once \n', ierr))
21f8402805SBarry Smith  PetscCallA(PetscSynchronizedFPrintf(PETSC_COMM_WORLD, file, 'Hi twice \n', ierr))
22f8402805SBarry Smith  PetscCallA(PetscSynchronizedFlush(PETSC_COMM_WORLD, file, ierr))
23f8402805SBarry Smith
24f8402805SBarry Smith  write (FMT=*, UNIT=joe) 'greetings from ', rank, '\n'
25f8402805SBarry Smith  PetscCallA(PetscSynchronizedFPrintf(PETSC_COMM_WORLD, file, joe, ierr))
26f8402805SBarry Smith  PetscCallA(PetscSynchronizedFlush(PETSC_COMM_WORLD, file, ierr))
27f8402805SBarry Smith
28f8402805SBarry Smith  PetscCallA(PetscFClose(PETSC_COMM_WORLD, file, ierr))
29f8402805SBarry Smith
30f8402805SBarry Smith  PetscCallA(PetscSynchronizedPrintf(PETSC_COMM_WORLD, 'Hi twice \n', ierr))
31f8402805SBarry Smith  PetscCallA(PetscSynchronizedFlush(PETSC_COMM_WORLD, PETSC_STDOUT, ierr))
32f8402805SBarry Smith
33f8402805SBarry Smith  PetscCallA(PetscFinalize(ierr))
34f8402805SBarry Smithend
35f8402805SBarry Smith
36f8402805SBarry Smith!
37f8402805SBarry Smith!/*TEST
38f8402805SBarry Smith!
39f8402805SBarry Smith!   test:
40f8402805SBarry Smith!      nsize: 3
41f8402805SBarry Smith!
42f8402805SBarry Smith!TEST*/
43