:orphan: # PetscOptionsBool Determines if a particular option is in the database with a true or false ## Synopsis ``` #include "petscsys.h" PetscErrorCode PetscOptionsBool(const char opt[],const char text[],const char man[],PetscBool currentvalue,PetscBool *flg,PetscBool *set) ``` Logically Collective on the communicator passed in `PetscOptionsBegin()` ## 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 - ***flg -*** ` PETSC_TRUE` or `PETSC_FALSE` - ***set -*** `PETSC_TRUE` if found, else `PETSC_FALSE` ## 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` variable if you access it without first checking if the `set` flag is `PETSC_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/dm/dt/dualspace/impls/lagrange/tutorials/ex1.c
src/dm/field/tutorials/ex1.c
src/dm/impls/forest/tutorials/ex1.c
src/dm/impls/plex/tutorials/ex10.c
src/dm/impls/plex/tutorials/ex11.c
src/dm/impls/plex/tutorials/ex13.c
src/dm/impls/plex/tutorials/ex5.c
src/dm/impls/plex/tutorials/ex8.c
src/dm/impls/plex/tutorials/ex9.c
src/dm/label/tutorials/ex1.c
src/ksp/ksp/tutorials/ex10.c
--- [Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/sys/objects/aoptions.c) [Index of all Sys routines](index.md) [Table of Contents for all manual pages](/manualpages/index.md) [Index of all manual pages](/manualpages/singleindex.md)