Actual source code: zitfuncf90.c
1: #include <petscksp.h>
2: #include <petsc/private/f90impl.h>
4: #if defined(PETSC_HAVE_FORTRAN_CAPS)
5: #define kspgetresidualhistoryf90_ KSPGETRESIDUALHISTORYF90
6: #define kspdestroy_ KSPDESTROY
7: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE)
8: #define kspgetresidualhistoryf90_ kspgetresidualhistoryf90
9: #define kspdestroy_ kspdestroy
10: #endif
12: PETSC_EXTERN void kspgetresidualhistoryf90_(KSP *ksp, F90Array1d *indices, PetscInt *n, int *ierr PETSC_F90_2PTR_PROTO(ptrd))
13: {
14: PetscReal const *hist;
15: *ierr = KSPGetResidualHistory(*ksp, &hist, n);
16: if (*ierr) return;
17: *ierr = F90Array1dCreate((void *)hist, MPIU_REAL, 1, *n, indices PETSC_F90_2PTR_PARAM(ptrd));
18: }
20: PETSC_EXTERN void kspdestroy_(KSP *x, int *ierr)
21: {
22: PETSC_FORTRAN_OBJECT_F_DESTROYED_TO_C_NULL(x);
23: *ierr = KSPDestroy(x);
24: if (*ierr) return;
25: PETSC_FORTRAN_OBJECT_C_NULL_TO_F_DESTROYED(x);
26: }