Just an oversight in our Fortran includes. You can either just call it 'gcr' in your code instead of KSPGCR or add the following line to include/finclude/petsckspdef.h
#define KSPGCR 'gcr' after the line #define KSPPYTHON 'python' Barry On Jan 10, 2011, at 4:39 AM, Klaij, Christiaan wrote: > I'm trying to use KSPGCR in my F90 program (petsc-3.1-p7) > but I get a compiliation error: > > error #6404: This name does not have a type, and must have an explicit type. > [KSPGCR] > call KSPSetType(AAksp,KSPGCR,ierr) > > My program uses #include "finclude/petsckspdef.h" and "use > petscksp" following strategy 4 of the UsingFortran instructions; > it compiles fine with KSPFGMRES. > > Apparently GCR is not available for fortran? At least, this is > what I get on my system: > > $ grep -i KSPGMRES $PETSC_DIR/include/finclude/petsckspdef.h > #define KSPGMRESCGSRefinementType PetscEnum > #define KSPGMRES 'gmres' > $ grep -i KSPGCR $PETSC_DIR/include/finclude/petsckspdef.h > $ grep -i KSPGCR $PETSC_DIR/include/finclude/*.h > $ > > Chris > > > dr. ir. Christiaan Klaij > CFD Researcher > Research & Development > E mailto:C.Klaij at marin.nl > T +31 317 49 33 44 > > MARIN > 2, Haagsteeg, P.O. Box 28, 6700 AA Wageningen, The Netherlands > T +31 317 49 39 11, F +31 317 49 32 45, I www.marin.nl >
