PetscOptionsBool#

Determines if a particular option is in the database with a true or false Logically Collective on the communicator passed in PetscOptionsBegin()

Synopsis#

#include "petscsys.h"
PetscErrorCode PetscOptionsBool(const char opt[],const char text[],const char man[],PetscBool currentvalue,PetscBool  *flg,PetscBool  *set)

Input Parameters#

  • opt - option name

  • text - short string that describes the option

  • man - manual page with additional information on option

  • currentvalue - the current value

Output Parameters#

Notes#

TRUE, true, YES, yes, nostring, and 1 all translate to PETSC_TRUE FALSE, false, NO, no, and 0 all translate to PETSC_FALSE

If the option is given, but no value is provided, then flg and set are both given the value PETSC_TRUE. That is -requested_bool is equivalent to -requested_bool true

If the user does not supply the option at all flg is NOT changed. Thus you should ALWAYS initialize the flg if you access it without first checking if the set flag is true.

Must be between a PetscOptionsBegin() and a PetscOptionsEnd()

See Also#

PetscOptionsGetReal(), PetscOptionsHasName(), PetscOptionsGetString(), PetscOptionsGetInt(), PetscOptionsGetIntArray(), PetscOptionsGetRealArray(), PetscOptionsGetBool(), PetscOptionsInt(), PetscOptionsString(), PetscOptionsReal(), PetscOptionsName(), PetscOptionsBegin(), PetscOptionsEnd(), PetscOptionsHeadBegin(), PetscOptionsStringArray(), PetscOptionsRealArray(), PetscOptionsScalar(), PetscOptionsBoolGroupBegin(), PetscOptionsBoolGroup(), PetscOptionsBoolGroupEnd(), PetscOptionsFList(), PetscOptionsEList()

Level#

beginner

Location#

src/sys/objects/aoptions.c

Examples#

src/vec/is/sf/tutorials/ex1.c.html
src/vec/is/sf/tutorials/ex3.c.html
src/dm/impls/plex/tutorials/ex10.c.html
src/dm/impls/plex/tutorials/ex11.c.html
src/dm/impls/plex/tutorials/ex13.c.html
src/dm/impls/plex/tutorials/ex5.c.html
src/dm/impls/plex/tutorials/ex8.c.html
src/dm/impls/plex/tutorials/ex9.c.html
src/dm/impls/forest/tutorials/ex1.c.html
src/dm/dt/dualspace/impls/lagrange/tutorials/ex1.c.html
src/dm/label/tutorials/ex1.c.html


Edit on GitLab

Index of all Sys routines
Table of Contents for all manual pages
Index of all manual pages