xref: /petsc/src/sys/tests/ex60f90.F90 (revision 57d508425293f0bb93f59574d14951d8faac9af8) !
1program ex60F90
2
3#include <petsc/finclude/petscsys.h>
4  use petsc
5  implicit none
6
7  PetscBool                        :: flg
8  Character(len=256)               :: outputString
9  PetscScalar, dimension(:), pointer :: sopt
10  PetscBool, dimension(:), pointer   :: bopt
11  PetscInt                         :: nopt
12  PetscErrorCode                   :: ierr
13
14  PetscCallA(PetscInitialize(ierr))
15  nopt = 3
16  allocate (bopt(nopt))
17  PetscCallA(PetscOptionsGetBoolArray(PETSC_NULL_OPTIONS, PETSC_NULL_CHARACTER, '-bopt', bopt, nopt, flg, ierr))
18  Write (outputString, '("bopt: ",3(l7,"  ")," nopt: ",i3," flg ",l7,"\n")') bopt, nopt, flg
19  PetscCallA(PetscPrintf(PETSC_COMM_WORLD, outputString, ierr))
20
21  nopt = 3
22  allocate (sopt(nopt))
23  PetscCallA(PetscOptionsGetScalarArray(PETSC_NULL_OPTIONS, PETSC_NULL_CHARACTER, '-sopt', sopt, nopt, flg, ierr))
24  Write (outputString, '("sopt: ",3(es12.5,"  ")," nopt: ",i3," flg ",l7,"\n")') sopt, nopt, flg
25  PetscCallA(PetscPrintf(PETSC_COMM_WORLD, outputString, ierr))
26
27  deallocate (bopt)
28  deallocate (sopt)
29  PetscCallA(PetscFinalize(ierr))
30end program ex60F90
31
32!/*TEST
33!
34!   test:
35!      requires: !complex
36!      suffix: 0
37!      args: -bopt yes,true,0 -sopt -1,2,3,4
38!
39!TEST*/
40