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 NormType PetscEnum
 11: #define InsertMode PetscEnum
 12: #define ScatterMode PetscEnum 
 13: #define VecOption PetscEnum
 14: #define VecType character*(80)
 15: #define VecOperation PetscEnum

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

 24: #endif

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

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

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

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

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

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

 67: #endif