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, VEC_TREAT_OFF_PROC_ENTRIES
56: PetscEnum VEC_IGNORE_NEGATIVE_INDICES, VEC_TREAT_NEGATIVE_INDICES
58: parameter (VEC_IGNORE_OFF_PROC_ENTRIES=0)
59: parameter (VEC_TREAT_OFF_PROC_ENTRIES=1)
60: parameter (VEC_IGNORE_NEGATIVE_INDICES=2)
61: parameter (VEC_TREAT_NEGATIVE_INDICES=3)
63: !
64: ! VecOperation
65: !
66: PetscEnum VECOP_VIEW,VECOP_LOADINTOVECTOR
68: parameter (VECOP_VIEW=33,VECOP_LOADINTOVECTOR=40)
69: !
70: ! End of Fortran include file for the Vec package in PETSc
72: #endif