Actual source code: ex47f.F90

  1: ! Example for PetscOptionsInsertFileYAML: Fortran Example
  2: #include <petsc/finclude/petscsys.h>
  3: program main
  4:   use petscsys

  6:   implicit none
  7:   PetscErrorCode                    :: ierr
  8:   character(len=PETSC_MAX_PATH_LEN) :: filename
  9:   PetscBool                         :: flg

 11:   PetscCallA(PetscInitialize(ierr))
 12:   PetscCallA(PetscOptionsGetString(PETSC_NULL_OPTIONS, PETSC_NULL_CHARACTER, '-f', filename, flg, ierr))
 13:   if (flg) then
 14:     PetscCallA(PetscOptionsInsertFileYAML(PETSC_COMM_WORLD, PETSC_NULL_OPTIONS, filename, PETSC_TRUE, ierr))
 15:   end if

 17:   PetscCallA(PetscOptionsView(PETSC_NULL_OPTIONS, PETSC_VIEWER_STDOUT_WORLD, ierr))
 18:   PetscCallA(PetscFinalize(ierr))

 20: !/*TEST
 21: !
 22: ! testset:
 23: !   test:
 24: !      suffix: 1
 25: !      args: -f petsc.yml -options_left 0
 26: !      localrunfiles: petsc.yml
 27: !      output_file: output/ex47_1.out
 28: !
 29: !   test:
 30: !      suffix: 2
 31: !      args: -options_file_yaml petsc.yml -options_left 0
 32: !      localrunfiles: petsc.yml
 33: !      output_file: output/ex47_2.out
 34: !
 35: !TEST*/
 36: end program main