PetscOptionsRangeInt#
Gets an integer value within a range of values for a particular option in the database.
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)
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
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 flg
is PETSC_TRUE
.
The 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/dt/dualspace/impls/lagrange/tutorials/ex1.c
src/dm/dt/dualspace/impls/lagrange/tutorials/ex2.c
src/dm/field/tutorials/ex1.c
src/dm/tutorials/ex22.c
Index of all Sys routines
Table of Contents for all manual pages
Index of all manual pages