!
!
! Include file for Fortran use of the Vec package in PETSc
!
#if !defined (__PETSCVEC_H)
#define __PETSCVEC_H
#define Vec PetscFortranAddr
#define VecScatter PetscFortranAddr
#define NormType PetscEnum
#define InsertMode PetscEnum
#define ScatterMode PetscEnum
#define VecOption PetscEnum
#define VecType character*(80)
#define VecOperation PetscEnum
#define VECSEQ 'seq'
#define VECMPI 'mpi'
#define VECFETI 'feti'
#define VECSHARED 'shared'
#define VECESI 'esi'
#define VECPETSCESI 'petscesi'
#endif
#if !defined (PETSC_AVOID_DECLARATIONS)
!
!
! Types of vector and matrix norms
!
PetscEnum NORM_1,NORM_2,NORM_FROBENIUS,NORM_INFINITY
PetscEnum NORM_MAX,NORM_1_AND_2
parameter (NORM_1=0,NORM_2=1,NORM_FROBENIUS=2,NORM_INFINITY=3)
parameter (NORM_MAX=3,NORM_1_AND_2=4)
!
! Flags for VecSetValues() and MatSetValues()
!
PetscEnum NOT_SET_VALUES,INSERT_VALUES,ADD_VALUES,MAX_VALUES
parameter (NOT_SET_VALUES=0,INSERT_VALUES=1,ADD_VALUES=2)
parameter (MAX_VALUES=3)
!
! Types of vector scatters
!
PetscEnum SCATTER_FORWARD,SCATTER_REVERSE,SCATTER_FORWARD_LOCAL
PetscEnum SCATTER_REVERSE_LOCAL,SCATTER_LOCAL
parameter (SCATTER_FORWARD=0,SCATTER_REVERSE=1)
parameter (SCATTER_FORWARD_LOCAL=2,SCATTER_REVERSE_LOCAL=3)
parameter (SCATTER_LOCAL=2)
!
! VecOption
!
PetscEnum VEC_IGNORE_OFF_PROC_ENTRIES, VEC_TREAT_OFF_PROC_ENTRIES
PetscEnum VEC_IGNORE_NEGATIVE_INDICES, VEC_TREAT_NEGATIVE_INDICES
parameter (VEC_IGNORE_OFF_PROC_ENTRIES=0)
parameter (VEC_TREAT_OFF_PROC_ENTRIES=1)
parameter (VEC_IGNORE_NEGATIVE_INDICES=2)
parameter (VEC_TREAT_NEGATIVE_INDICES=3)
!
! VecOperation
!
PetscEnum VECOP_VIEW,VECOP_LOADINTOVECTOR
parameter (VECOP_VIEW=33,VECOP_LOADINTOVECTOR=40)
!
! End of Fortran include file for the Vec package in PETSc
#endif
syntax highlighted by Code2HTML, v. 0.9.1