1c4762a1bSJed Brown 2c4762a1bSJed Brown static char help[] = "Tests retrieving unused PETSc options.\n\n"; 3c4762a1bSJed Brown 4c4762a1bSJed Brown #include <petscsys.h> 5c4762a1bSJed Brown 6c4762a1bSJed Brown int main(int argc,char **argv) 7c4762a1bSJed Brown { 8c4762a1bSJed Brown PetscInt i,N,M; 9c4762a1bSJed Brown char **names,**values; 10c4762a1bSJed Brown PetscBool set; 11c4762a1bSJed Brown 12*327415f7SBarry Smith PetscFunctionBeginUser; 139566063dSJacob Faibussowitsch PetscCall(PetscInitialize(&argc,&argv,(char*)0,help)); 14c4762a1bSJed Brown 159566063dSJacob Faibussowitsch PetscCall(PetscOptionsGetInt(NULL,NULL,"-get_an_integer",&M,&set)); 169566063dSJacob Faibussowitsch if (set) PetscCall(PetscPrintf(PETSC_COMM_WORLD,"Option used: name:-get_an_integer value: %" PetscInt_FMT "\n",M)); 179566063dSJacob Faibussowitsch PetscCall(PetscOptionsLeftGet(NULL,&N,&names,&values)); 18c4762a1bSJed Brown for (i=0; i<N; i++) { 19c4762a1bSJed Brown if (values[i]) { 209566063dSJacob Faibussowitsch PetscCall(PetscPrintf(PETSC_COMM_WORLD,"Option left: name:-%s value: %s\n",names[i],values[i])); 21c4762a1bSJed Brown } else { 229566063dSJacob Faibussowitsch PetscCall(PetscPrintf(PETSC_COMM_WORLD,"Option left: name:-%s (no value)\n",names[i])); 23c4762a1bSJed Brown } 24c4762a1bSJed Brown } 259566063dSJacob Faibussowitsch PetscCall(PetscOptionsLeftRestore(NULL,&N,&names,&values)); 26c4762a1bSJed Brown 279566063dSJacob Faibussowitsch PetscCall(PetscFinalize()); 28b122ec5aSJacob Faibussowitsch return 0; 29c4762a1bSJed Brown } 30c4762a1bSJed Brown 31c4762a1bSJed Brown /*TEST 32c4762a1bSJed Brown 33c4762a1bSJed Brown test: 3427104ee2SJacob Faibussowitsch suffix: debug 3527104ee2SJacob Faibussowitsch requires: defined(PETSC_USE_DEBUG) 36c4762a1bSJed Brown args: -unused_petsc_option_1 -unused_petsc_option_2 -get_an_integer 10 -options_left no 37c4762a1bSJed Brown 3827104ee2SJacob Faibussowitsch test: 3927104ee2SJacob Faibussowitsch suffix: opt 4027104ee2SJacob Faibussowitsch requires: !defined(PETSC_USE_DEBUG) 41660278c0SBarry Smith args: -unused_petsc_option_1 -unused_petsc_option_2 -get_an_integer 10 -options_left no 4227104ee2SJacob Faibussowitsch 43c4762a1bSJed Brown TEST*/ 44