Actual source code: ex47f.F90
1: ! Example for PetscOptionsInsertFileYAML: Fortran Example
3: program main
5: #include <petsc/finclude/petscsys.h>
6: use petscsys
8: implicit none
9: PetscErrorCode :: ierr
10: character(len=PETSC_MAX_PATH_LEN) :: filename
11: PetscBool :: flg
13: PetscCallA(PetscInitialize(ierr))
14: PetscCallA(PetscOptionsGetString(PETSC_NULL_OPTIONS, PETSC_NULL_CHARACTER, '-f', filename, flg, ierr))
15: if (flg) then
16: PetscCallA(PetscOptionsInsertFileYAML(PETSC_COMM_WORLD, PETSC_NULL_OPTIONS, filename, PETSC_TRUE, ierr))
17: end if
19: PetscCallA(PetscOptionsView(PETSC_NULL_OPTIONS, PETSC_VIEWER_STDOUT_WORLD, ierr))
20: PetscCallA(PetscFinalize(ierr))
22: !/*TEST
23: !
24: ! testset:
25: ! test:
26: ! suffix: 1
27: ! args: -f petsc.yml -options_left 0
28: ! localrunfiles: petsc.yml
29: ! output_file: output/ex47_1.out
30: !
31: ! test:
32: ! suffix: 2
33: ! args: -options_file_yaml petsc.yml -options_left 0
34: ! localrunfiles: petsc.yml
35: ! output_file: output/ex47_2.out
36: !
37: !TEST*/
38: end program main