PetscOptionsRangeInt#
Gets an integer value within a range of values for a particular option in the database. Logically Collective on the communicator passed in PetscOptionsBegin()
Synopsis#
#include "petscsys.h"
PetscErrorCode PetscOptionsRangeInt(const char opt[],const char text[],const char man[],PetscInt currentvalue,PetscInt *value,PetscBool *flg,PetscInt lb,PetscInt ub)
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
PetscOptionsInt(..., obj->value,&obj->value,...) or
value = defaultvalue
PetscOptionsInt(..., value,&value,&flg);
if (flg) {
lb - the lower bound, provided value must be greater than or equal to this value or an error is generated
ub - the upper bound, provided value must be less than or equal to this value or an error is generated
Output Parameters#
value - the integer value to return
flg -
PETSC_TRUE
if 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 if the set flag is true.
The default/currentvalue passed into this routine does not get transferred to the output value variable automatically.
Must be between a PetscOptionsBegin()
and a PetscOptionsEnd()
See Also#
PetscOptionsInt()
, PetscOptionsGetReal()
, PetscOptionsHasName()
, PetscOptionsGetString()
, PetscOptionsGetInt()
,
PetscOptionsGetIntArray()
, PetscOptionsGetRealArray()
, PetscOptionsGetBool()
, PetscOptionsBoundedInt()
PetscOptionsInt()
, PetscOptionsString()
, PetscOptionsReal()
, PetscOptionsBool()
,
PetscOptionsName()
, PetscOptionsBegin()
, PetscOptionsEnd()
, PetscOptionsHeadBegin()
,
PetscOptionsStringArray()
, PetscOptionsRealArray()
, PetscOptionsScalar()
,
PetscOptionsBoolGroupBegin()
, PetscOptionsBoolGroup()
, PetscOptionsBoolGroupEnd()
,
PetscOptionsFList()
, PetscOptionsEList()
Level#
beginner
Location#
Examples#
src/dm/tutorials/ex22.c.html
src/dm/dt/dualspace/impls/lagrange/tutorials/ex1.c.html
src/dm/dt/dualspace/impls/lagrange/tutorials/ex2.c.html
src/dm/field/tutorials/ex1.c.html
Index of all Sys routines
Table of Contents for all manual pages
Index of all manual pages