PetscOptionsEList#

Puts a list of option values that a single one may be selected from

Synopsis#

#include <petscoptions.h>
PetscErrorCode PetscOptionsEList(const char opt[], const char ltext[], const char man[], const char *const *list, PetscInt ntext, const char currentvalue[], PetscInt *value, PetscBool *set)

Logically Collective on the communicator passed in PetscOptionsBegin()

Input Parameters#

  • opt - option name

  • ltext - short string that describes the option

  • man - manual page with additional information on option

  • list - the possible choices (one of these must be selected, anything else is invalid)

  • ntext - number of choices

  • currentvalue - the current value; caller is responsible for setting this value correctly. Normally this is done with

                 PetscOptionsEList(..., obj->value,&value,&flg);

Output Parameters#

Notes#

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

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 PETSC_TRUE.

See PetscOptionsFList() for when the choices are given in a PetscFunctionList()

See Also#

PetscOptionsGetInt(), PetscOptionsGetReal(), PetscOptionsHasName(), PetscOptionsGetIntArray(), PetscOptionsGetRealArray(), PetscOptionsBool(), PetscOptionsName(), PetscOptionsBegin(), PetscOptionsEnd(), PetscOptionsHeadBegin(), PetscOptionsStringArray(), PetscOptionsRealArray(), PetscOptionsScalar(), PetscOptionsBoolGroupBegin(), PetscOptionsBoolGroup(), PetscOptionsBoolGroupEnd(), PetscOptionsFList(), PetscOptionsEnum()

Level#

intermediate

Location#

include/petscoptions.h

Examples#

src/ts/tutorials/ex18.c
src/ts/tutorials/ex45.c
src/ksp/ksp/tutorials/ex29.c
src/ts/tutorials/ex47.c
src/ts/tutorials/ex77.c
src/ts/tutorials/ex76.c
src/ksp/ksp/tutorials/ex32.c
src/ts/tutorials/ex53.c
src/ts/tutorials/ex48.c
src/ksp/ksp/tutorials/ex73.c


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