        subroutine IPSetFromOptions(ip ,ierr)
       IP ip ! IP
       integer ierr
       end subroutine
        subroutine IPSetOrthogonalization(ip, type, refine, eta ,ierr)
       IP ip ! IP
       IPOrthogType type ! IPOrthogType
       IPOrthogRefineType refine ! IPOrthogRefineType
       PetscReal eta ! PetscReal
       integer ierr
       end subroutine
        subroutine IPReset(ip ,ierr)
       IP ip ! IP
       integer ierr
       end subroutine
        subroutine IPGetOperationCounters(ip, dots ,ierr)
       IP ip ! IP
       PetscInt dots ! PetscInt
       integer ierr
       end subroutine
        subroutine IPResetOperationCounters(ip ,ierr)
       IP ip ! IP
       integer ierr
       end subroutine
        subroutine IPBiOrthogonalize(ip, n, vupper, W, v, H, norm ,ierr)
       IP ip ! IP
       PetscInt n ! PetscInt
       Vec vupper ! Vec
       Vec W ! Vec
       Vec v ! Vec
       PetscScalar H ! PetscScalar
       PetscReal norm ! PetscReal
       integer ierr
       end subroutine
        subroutine IPPseudoOrthogonalize(ip, n, vupper, omega, v, H,    &
     &norm, lindep ,ierr)
       IP ip ! IP
       PetscInt n ! PetscInt
       Vec vupper ! Vec
       PetscReal omega ! PetscReal
       Vec v ! Vec
       PetscScalar H ! PetscScalar
       PetscReal norm ! PetscReal
       PetscBool lindep ! PetscBool
       integer ierr
       end subroutine
        subroutine IPBOrthogonalize(ip, nds, defl, BDS, BDSnorms, n,    &
     &which, vupper, bvupper, BVnorms, v, Bv, H, norm, lindep ,ierr)
       IP ip ! IP
       PetscInt nds ! PetscInt
       Vec defl ! Vec
       Vec BDS ! Vec
       PetscReal BDSnorms ! PetscReal
       PetscInt n ! PetscInt
       PetscBool which ! PetscBool
       Vec vupper ! Vec
       Vec bvupper ! Vec
       PetscReal BVnorms ! PetscReal
       Vec v ! Vec
       Vec Bv ! Vec
       PetscScalar H ! PetscScalar
       PetscReal norm ! PetscReal
       PetscBool lindep ! PetscBool
       integer ierr
       end subroutine
        subroutine IPNorm(ip, x, norm ,ierr)
       IP ip ! IP
       Vec x ! Vec
       PetscReal norm ! PetscReal
       integer ierr
       end subroutine
        subroutine IPNormBegin(ip, x, norm ,ierr)
       IP ip ! IP
       Vec x ! Vec
       PetscReal norm ! PetscReal
       integer ierr
       end subroutine
        subroutine IPNormEnd(ip, x, norm ,ierr)
       IP ip ! IP
       Vec x ! Vec
       PetscReal norm ! PetscReal
       integer ierr
       end subroutine
        subroutine IPInnerProduct(ip, x, y, p ,ierr)
       IP ip ! IP
       Vec x ! Vec
       Vec y ! Vec
       PetscScalar p ! PetscScalar
       integer ierr
       end subroutine
        subroutine IPInnerProductBegin(ip, x, y, p ,ierr)
       IP ip ! IP
       Vec x ! Vec
       Vec y ! Vec
       PetscScalar p ! PetscScalar
       integer ierr
       end subroutine
        subroutine IPInnerProductEnd(ip, x, y, p ,ierr)
       IP ip ! IP
       Vec x ! Vec
       Vec y ! Vec
       PetscScalar p ! PetscScalar
       integer ierr
       end subroutine
        subroutine IPMInnerProduct(ip, x, n, y, p ,ierr)
       IP ip ! IP
       Vec x ! Vec
       PetscInt n ! PetscInt
       Vec y (*) ! Vec
       PetscScalar p ! PetscScalar
       integer ierr
       end subroutine
        subroutine IPMInnerProductBegin(ip, x, n, y, p ,ierr)
       IP ip ! IP
       Vec x ! Vec
       PetscInt n ! PetscInt
       Vec y (*) ! Vec
       PetscScalar p ! PetscScalar
       integer ierr
       end subroutine
        subroutine IPMInnerProductEnd(ip, x, n, y, p ,ierr)
       IP ip ! IP
       Vec x ! Vec
       PetscInt n ! PetscInt
       Vec y (*) ! Vec
       PetscScalar p ! PetscScalar
       integer ierr
       end subroutine
        subroutine IPSetMatrix(ip, mat ,ierr)
       IP ip ! IP
       Mat mat ! Mat
       integer ierr
       end subroutine
        subroutine IPApplyMatrix(ip, x, y ,ierr)
       IP ip ! IP
       Vec x ! Vec
       Vec y ! Vec
       integer ierr
       end subroutine
        subroutine IPOrthogonalize(ip, nds, defl, n, which, vupper, v, H&
     &, norm, lindep ,ierr)
       IP ip ! IP
       PetscInt nds ! PetscInt
       Vec defl ! Vec
       PetscInt n ! PetscInt
       PetscBool which ! PetscBool
       Vec vupper ! Vec
       Vec v ! Vec
       PetscScalar H ! PetscScalar
       PetscReal norm ! PetscReal
       PetscBool lindep ! PetscBool
       integer ierr
       end subroutine
        subroutine IPQRDecomposition(ip, V, m, n, R, ldr ,ierr)
       IP ip ! IP
       Vec V ! Vec
       PetscInt m ! PetscInt
       PetscInt n ! PetscInt
       PetscScalar R ! PetscScalar
       PetscInt ldr ! PetscInt
       integer ierr
       end subroutine
