PetscOptionsBoundedInt#
Gets an integer value greater than or equal to a given bound for a particular option in the database.
Synopsis#
#include <petscoptions.h>
PetscErrorCode PetscOptionsBoundedInt(const char opt[], const char text[], const char man[], PetscInt currentvalue, PetscInt *value, PetscBool *set, PetscInt bound)
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; caller is responsible for setting this value correctly. Normally this is done with either
PetscOptionsBoundedInt(..., obj->value, &obj->value, ...)
or
value = defaultvalue
PetscOptionsBoundedInt(..., value, &value, &set, ...);
if (set) {
bound - the requested value should be greater than or equal to this bound or an error is generated
Output Parameters#
value - the integer value to return
set -
PETSC_TRUEif found, elsePETSC_FALSE
Notes#
If the user does not supply the option at all value is NOT changed. Thus
you should ALWAYS initialize value if you access it without first checking that set is PETSC_TRUE.
The currentvalue passed into this routine does not get transferred to the output value variable automatically.
Must be used between a PetscOptionsBegin() and a PetscOptionsEnd()
See Also#
PetscOptionsInt(), PetscOptionsGetReal(), PetscOptionsHasName(), PetscOptionsGetString(), PetscOptionsGetInt(),
PetscOptionsGetIntArray(), PetscOptionsGetRealArray(), PetscOptionsGetBool(), PetscOptionsRangeInt()
PetscOptionsInt(), PetscOptionsString(), PetscOptionsReal(), PetscOptionsBool(),
PetscOptionsName(), PetscOptionsBegin(), PetscOptionsEnd(), PetscOptionsHeadBegin(),
PetscOptionsStringArray(), PetscOptionsRealArray(), PetscOptionsScalar(),
PetscOptionsBoolGroupBegin(), PetscOptionsBoolGroup(), PetscOptionsBoolGroupEnd(),
PetscOptionsFList(), PetscOptionsEList(), PetscOptionsBoundedReal(), PetscOptionsRangeReal()
Level#
beginner
Location#
Examples#
src/dm/impls/plex/tutorials/ex6.c
src/ts/tutorials/ex30.c
src/dm/field/tutorials/ex1.c
src/dm/impls/plex/tutorials/ex8.c
src/dm/tutorials/ex9.c
Index of all Sys routines
Table of Contents for all manual pages
Index of all manual pages