Actual source code: petscvec.h
petsc-3.10.5 2019-03-28
1: !
2: !
3: ! Include file for Fortran use of the Vec package in PETSc
4: !
5: #include "petsc/finclude/petscvec.h"
7: type tVec
8: sequence
9: PetscFortranAddr:: v PETSC_FORTRAN_TYPE_INITIALIZE
10: end type tVec
11: type tVecScatter
12: sequence
13: PetscFortranAddr:: v PETSC_FORTRAN_TYPE_INITIALIZE
14: end type tVecScatter
15: type tVecTagger
16: sequence
17: PetscFortranAddr:: v PETSC_FORTRAN_TYPE_INITIALIZE
18: end type tVecTagger
20: Vec, parameter :: PETSC_NULL_VEC = tVec(0)
21: VecScatter, parameter :: PETSC_NULL_VECSCATTER = &
22: & tVecScatter(0)
23: VecTagger, parameter :: PETSC_NULL_VECTAGGER = &
24: & tVecTagger(0)
25: !
26: !
27: ! Types of vector and matrix norms
28: !
29: PetscEnum NORM_1
30: PetscEnum NORM_2
31: PetscEnum NORM_FROBENIUS
32: PetscEnum NORM_INFINITY
33: PetscEnum NORM_MAX
34: PetscEnum NORM_1_AND_2
36: parameter (NORM_1=0,NORM_2=1,NORM_FROBENIUS=2,NORM_INFINITY=3)
37: parameter (NORM_MAX=3,NORM_1_AND_2=4)
38: !
39: ! Flags for VecSetValues() and MatSetValues()
40: !
41: PetscEnum NOT_SET_VALUES
42: PetscEnum INSERT_VALUES
43: PetscEnum ADD_VALUES
44: PetscEnum MAX_VALUES
45: PetscEnum INSERT_ALL_VALUES
46: PetscEnum ADD_ALL_VALUES
47: PetscEnum INSERT_BC_VALUES
48: PetscEnum ADD_BC_VALUES
50: parameter (NOT_SET_VALUES=0,INSERT_VALUES=1,ADD_VALUES=2)
51: parameter (MAX_VALUES=3)
52: parameter (INSERT_ALL_VALUES=4,ADD_ALL_VALUES=5)
53: parameter (INSERT_BC_VALUES=6,ADD_BC_VALUES=7)
54: !
55: ! Types of vector scatters
56: !
57: PetscEnum SCATTER_FORWARD
58: PetscEnum SCATTER_REVERSE
59: PetscEnum SCATTER_FORWARD_LOCAL
60: PetscEnum SCATTER_REVERSE_LOCAL
61: PetscEnum SCATTER_LOCAL
63: parameter (SCATTER_FORWARD=0,SCATTER_REVERSE=1)
64: parameter (SCATTER_FORWARD_LOCAL=2,SCATTER_REVERSE_LOCAL=3)
65: parameter (SCATTER_LOCAL=2)
66: !
67: ! VecOption
68: !
69: PetscEnum VEC_IGNORE_OFF_PROC_ENTRIES
70: PetscEnum VEC_IGNORE_NEGATIVE_INDICES
71: PetscEnum VEC_SUBSET_OFF_PROC_ENTRIES
73: parameter (VEC_IGNORE_OFF_PROC_ENTRIES=0)
74: parameter (VEC_IGNORE_NEGATIVE_INDICES=1)
75: parameter (VEC_SUBSET_OFF_PROC_ENTRIES=2)
77: !
78: ! VecOperation
79: !
80: PetscEnum VECOP_DUPLICATE
81: PetscEnum VECOP_VIEW
82: PetscEnum VECOP_LOAD
83: PetscEnum VECOP_VIEWNATIVE
84: PetscEnum VECOP_LOADNATIVE
86: parameter (VECOP_DUPLICATE=0,VECOP_VIEW=33,VECOP_LOAD=41)
87: parameter (VECOP_VIEWNATIVE=68,VECOP_LOADNATIVE=69)
88: !
89: ! End of Fortran include file for the Vec package in PETSc
91: #if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
92: !DEC$ ATTRIBUTES DLLEXPORT::PETSC_NULL_VEC
93: !DEC$ ATTRIBUTES DLLEXPORT::PETSC_NULL_VECSCATTER
94: !DEC$ ATTRIBUTES DLLEXPORT::PETSC_NULL_VECTAGGER
95: !DEC$ ATTRIBUTES DLLEXPORT::NORM_1
96: !DEC$ ATTRIBUTES DLLEXPORT::NORM_2
97: !DEC$ ATTRIBUTES DLLEXPORT::NORM_FROBENIUS
98: !DEC$ ATTRIBUTES DLLEXPORT::NORM_INFINITY
99: !DEC$ ATTRIBUTES DLLEXPORT::NORM_MAX
100: !DEC$ ATTRIBUTES DLLEXPORT::NORM_1_AND_2
101: !DEC$ ATTRIBUTES DLLEXPORT::NOT_SET_VALUES
102: !DEC$ ATTRIBUTES DLLEXPORT::INSERT_VALUES
103: !DEC$ ATTRIBUTES DLLEXPORT::ADD_VALUES
104: !DEC$ ATTRIBUTES DLLEXPORT::MAX_VALUES
105: !DEC$ ATTRIBUTES DLLEXPORT::INSERT_ALL_VALUES
106: !DEC$ ATTRIBUTES DLLEXPORT::ADD_ALL_VALUES
107: !DEC$ ATTRIBUTES DLLEXPORT::INSERT_BC_VALUES
108: !DEC$ ATTRIBUTES DLLEXPORT::ADD_BC_VALUES
109: !DEC$ ATTRIBUTES DLLEXPORT::SCATTER_FORWARD
110: !DEC$ ATTRIBUTES DLLEXPORT::SCATTER_REVERSE
111: !DEC$ ATTRIBUTES DLLEXPORT::SCATTER_FORWARD_LOCAL
112: !DEC$ ATTRIBUTES DLLEXPORT::SCATTER_REVERSE_LOCAL
113: !DEC$ ATTRIBUTES DLLEXPORT::SCATTER_LOCAL
114: !DEC$ ATTRIBUTES DLLEXPORT::VEC_IGNORE_OFF_PROC_ENTRIES
115: !DEC$ ATTRIBUTES DLLEXPORT::VEC_IGNORE_NEGATIVE_INDICES
116: !DEC$ ATTRIBUTES DLLEXPORT::VEC_SUBSET_OFF_PROC_ENTRIES
117: !DEC$ ATTRIBUTES DLLEXPORT::VECOP_DUPLICATE
118: !DEC$ ATTRIBUTES DLLEXPORT::VECOP_VIEW
119: !DEC$ ATTRIBUTES DLLEXPORT::VECOP_LOAD
120: !DEC$ ATTRIBUTES DLLEXPORT::VECOP_VIEWNATIVE
121: !DEC$ ATTRIBUTES DLLEXPORT::VECOP_LOADNATIVE
122: #endif