Actual source code: petscvec.h

  1: !
  2: !
  3: !  Include file for Fortran use of the Vec package in PETSc
  4: !
  5: #if !defined (__PETSCVEC_H)

  8: #define Vec PetscFortranAddr
  9: #define VecScatter PetscFortranAddr
 10: #define PetscMap PetscFortranAddr
 11: #define NormType PetscEnum
 12: #define InsertMode PetscEnum
 13: #define ScatterMode PetscEnum 
 14: #define VecOption PetscEnum
 15: #define VecType character*(80)
 16: #define VecOperation PetscEnum

 18: #define VECSEQ 'seq'
 19: #define VECMPI 'mpi'
 20: #define VECFETI 'feti'
 21: #define VECSHARED 'shared'
 22: #define VECESI 'esi'
 23: #define VECPETSCESI 'petscesi'

 25: #endif

 27: #if !defined (PETSC_AVOID_DECLARATIONS)
 28: !
 29: !
 30: !  Types of vector and matrix norms
 31: !
 32:       PetscEnum NORM_1,NORM_2,NORM_FROBENIUS,NORM_INFINITY
 33:       PetscEnum NORM_MAX,NORM_1_AND_2

 35:       parameter (NORM_1=1,NORM_2=2,NORM_FROBENIUS=3,NORM_INFINITY=4)
 36:       parameter (NORM_MAX=4,NORM_1_AND_2=5)
 37: !
 38: !  Flags for VecSetValues() and MatSetValues()
 39: !
 40:       PetscEnum NOT_SET_VALUES,INSERT_VALUES,ADD_VALUES,MAX_VALUES

 42:       parameter (NOT_SET_VALUES=0,INSERT_VALUES=1,ADD_VALUES=2)
 43:       parameter (MAX_VALUES=3)
 44: !
 45: !  Types of vector scatters
 46: !
 47:       PetscEnum SCATTER_FORWARD,SCATTER_REVERSE,SCATTER_FORWARD_LOCAL
 48:       PetscEnum SCATTER_REVERSE_LOCAL,SCATTER_LOCAL

 50:       parameter (SCATTER_FORWARD=0,SCATTER_REVERSE=1)
 51:       parameter (SCATTER_FORWARD_LOCAL=2,SCATTER_REVERSE_LOCAL=3)
 52:       parameter (SCATTER_LOCAL=2)
 53: !
 54: !  VecOption
 55: !
 56:       PetscEnum VEC_IGNORE_OFF_PROC_ENTRIES

 58:       parameter (VEC_IGNORE_OFF_PROC_ENTRIES=0)
 59: !
 60: !  VecOperation
 61: !
 62:       PetscEnum VECOP_VIEW,VECOP_LOADINTOVECTOR

 64:       parameter (VECOP_VIEW=33,VECOP_LOADINTOVECTOR=40)
 65: !
 66: !  End of Fortran include file for the Vec package in PETSc

 68: #endif