xref: /petsc/src/sys/tests/ex23.c (revision 05552d4bd0342c207cc7c527d55aae516dc232d5)
1 
2 static char help[] = "Tests string options with spaces";
3 
4 #include <petscsys.h>
5 
6 int main(int argc,char **argv)
7 {
8   PetscErrorCode ierr;
9   PetscBool      ts_view       = PETSC_FALSE;
10   PetscInt       ts_max_steps  = 0, snes_max_it = 0;
11   PetscReal      ts_max_time = 0.;
12   PetscBool      foo_view       = PETSC_FALSE;
13   PetscInt       foo_max_steps  = 0, bar_max_it = 0;
14   PetscReal      foo_max_time = 0.;
15 
16   ierr = PetscInitialize(&argc,&argv,NULL,help);if (ierr) return ierr;
17   ierr = PetscOptionsGetBool(NULL,0,"-ts_view",&ts_view,NULL);CHKERRQ(ierr);
18   ierr = PetscOptionsGetReal(NULL,0,"-ts_max_time",&ts_max_time,NULL);CHKERRQ(ierr);
19   ierr = PetscOptionsGetInt(NULL,0,"-ts_max_steps",&ts_max_steps,NULL);CHKERRQ(ierr);
20   ierr = PetscOptionsGetBool(NULL,0,"-foo_view",&foo_view,NULL);CHKERRQ(ierr);
21   ierr = PetscOptionsGetReal(NULL,0,"-foo_max_time",&foo_max_time,NULL);CHKERRQ(ierr);
22   ierr = PetscOptionsGetInt(NULL,0,"-foo_max_steps",&foo_max_steps,NULL);CHKERRQ(ierr);
23   ierr = PetscOptionsGetInt(NULL,0,"-snes_max_it",&snes_max_it,NULL);CHKERRQ(ierr);
24   ierr = PetscOptionsGetInt(NULL,0,"-bar_max_it",&bar_max_it,NULL);CHKERRQ(ierr);
25   ierr = PetscPrintf(PETSC_COMM_WORLD,"-ts_view = %s\n-ts_max_time = %f\n-ts_max_steps = %D\n-snes_max_it = %D\n",ts_view ? "true" : "false",(double)ts_max_time,ts_max_steps,snes_max_it);CHKERRQ(ierr);
26   ierr = PetscFinalize();
27   return ierr;
28 }
29 
30 
31 /*TEST
32 
33    test:
34       args: -options_file_yaml ex23options
35       localrunfiles: ex23options
36 
37    test:
38       suffix: string
39       args: -options_string_yaml "
40         foo: &foo
41           view: true
42           max: &foomax
43             steps: 3
44             time: 1.4
45         bar: &bar
46           max_it: 5
47         ts:
48           <<: *foo
49           max:
50             <<: *foomax
51             steps: 10
52         snes: *bar"
53 
54 TEST*/
55