Actual source code: petscvec.h90

  1: !
  2: !
  3: !  Additional Vec include file for use of PETSc with Fortran 90/HPF
  4: !
  5: #if !defined (PETSC_AVOID_DECLARATIONS)

  7:       Interface
  8:         Subroutine VecGetArrayF90(v,array,ierr)
  9:           PetscScalar, pointer :: array(:)
 10:           PetscErrorCode ierr
 11:           Vec     v
 12:         End Subroutine
 13:       End Interface

 15:       Interface
 16:         Subroutine VecRestoreArrayF90(v,array,ierr)
 17:           PetscScalar, pointer :: array(:)
 18:           PetscErrorCode ierr
 19:           Vec     v
 20:         End Subroutine
 21:       End Interface

 23: ! -------------------------------------------------------------

 25:       Interface
 26:         Subroutine VecDuplicateVecsF90(v,m,vs,ierr)
 27:           Vec, pointer :: vs(:)
 28:           PetscInt m
 29:           PetscErrorCode ierr
 30:           Vec     v
 31:         End Subroutine
 32:       End Interface
 33: !
 34: !  Question: should VecDestroyVecsF90() take the m argument since
 35: ! the array of vectors already knows how long it is? Yes, to
 36: ! match calling sequence for C/C++.
 37: !
 38:       Interface
 39:         Subroutine VecDestroyVecsF90(vs,m,ierr)
 40:           Vec, pointer :: vs(:)
 41:           PetscInt m
 42:           PetscErrorCode ierr
 43:         End Subroutine
 44:       End Interface

 46: #endif
 47: !
 48: !     End of Vec Fortran 90 include file for the PETSc package
 49: !