#include "zpetsc.h" #include "petscksp.h" #if defined(PETSC_HAVE_FORTRAN_CAPS) #define pcasmgetsubksp_ PCASMGETSUBKSP #define pcasmsetlocalsubdomains_ PCASMSETLOCALSUBDOMAINS #define pcasmsetglobalsubdomains_ PCASMSETGLOBALSUBDOMAINS #define pcasmgetlocalsubmatrices_ PCASMGETLOCALSUBMATRICES #define pcasmgetlocalsubdomains_ PCASMGETLOCALSUBDOMAINS #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) #define pcasmgetsubksp_ pcasmgetsubksp #define pcasmsetlocalsubdomains_ pcasmsetlocalsubdomains #define pcasmsetglobalsubdomains_ pcasmsetglobalsubdomains #define pcasmgetlocalsubmatrices_ pcasmgetlocalsubmatrices #define pcasmgetlocalsubdomains_ pcasmgetlocalsubdomains #endif EXTERN_C_BEGIN void PETSC_STDCALL pcasmgetsubksp_(PC *pc,PetscInt *n_local,PetscInt *first_local,KSP *ksp,PetscErrorCode *ierr) { KSP *tksp; PetscInt i,nloc; CHKFORTRANNULLINTEGER(n_local); CHKFORTRANNULLINTEGER(first_local); *ierr = PCASMGetSubKSP(*pc,&nloc,first_local,&tksp); if (n_local) *n_local = nloc; for (i=0; i