Actual source code: ex23.c


  2: static char help[] = "Tests string options with spaces";

  4: #include <petscsys.h>

  6: int main(int argc,char **argv)
  7: {
  8:   PetscBool      ts_view       = PETSC_FALSE;
  9:   PetscInt       ts_max_steps  = 0, snes_max_it = 0;
 10:   PetscReal      ts_max_time = 0.;
 11:   PetscBool      foo_view       = PETSC_FALSE;
 12:   PetscInt       foo_max_steps  = 0, bar_max_it = 0;
 13:   PetscReal      foo_max_time = 0.;

 15:   PetscInitialize(&argc,&argv,NULL,help);
 16:   PetscOptionsGetBool(NULL,0,"-ts_view",&ts_view,NULL);
 17:   PetscOptionsGetReal(NULL,0,"-ts_max_time",&ts_max_time,NULL);
 18:   PetscOptionsGetInt(NULL,0,"-ts_max_steps",&ts_max_steps,NULL);
 19:   PetscOptionsGetBool(NULL,0,"-foo_view",&foo_view,NULL);
 20:   PetscOptionsGetReal(NULL,0,"-foo_max_time",&foo_max_time,NULL);
 21:   PetscOptionsGetInt(NULL,0,"-foo_max_steps",&foo_max_steps,NULL);
 22:   PetscOptionsGetInt(NULL,0,"-snes_max_it",&snes_max_it,NULL);
 23:   PetscOptionsGetInt(NULL,0,"-bar_max_it",&bar_max_it,NULL);
 24:   PetscPrintf(PETSC_COMM_WORLD,"-ts_view = %s\n-ts_max_time = %f\n-ts_max_steps = %" PetscInt_FMT "\n-snes_max_it = %" PetscInt_FMT "\n",ts_view ? "true" : "false",(double)ts_max_time,ts_max_steps,snes_max_it);
 25:   PetscFinalize();
 26:   return 0;
 27: }

 29: /*TEST

 31:    test:
 32:       args: -options_file_yaml ex23options
 33:       localrunfiles: ex23options

 35:    test:
 36:       suffix: string
 37:       args: -options_string_yaml "
 38:         foo: &foo
 39:           view: true
 40:           max: &foomax
 41:             steps: 3
 42:             time: 1.4
 43:         bar: &bar
 44:           max_it: 5
 45:         ts:
 46:           <<: *foo
 47:           max:
 48:             <<: *foomax
 49:             steps: 10
 50:         snes: *bar"

 52: TEST*/