Actual source code: petscvec.h
petsc-3.13.6 2020-09-29
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 = tVecScatter(0)
22: VecTagger, parameter :: PETSC_NULL_VECTAGGER = tVecTagger(0)
23: !
24: !
25: ! Types of vector and matrix norms
26: !
27: PetscEnum, parameter :: NORM_1 = 0
28: PetscEnum, parameter :: NORM_2 = 1
29: PetscEnum, parameter :: NORM_FROBENIUS = 2
30: PetscEnum, parameter :: NORM_INFINITY = 3
31: PetscEnum, parameter :: NORM_MAX = 3
32: PetscEnum, parameter :: NORM_1_AND_2 = 4
33: !
34: ! Flags for VecSetValues() and MatSetValues()
35: !
36: PetscEnum, parameter :: NOT_SET_VALUES = 0
37: PetscEnum, parameter :: INSERT_VALUES = 1
38: PetscEnum, parameter :: ADD_VALUES = 2
39: PetscEnum, parameter :: MAX_VALUES = 3
40: PetscEnum, parameter :: MIN_VALUES = 4
41: PetscEnum, parameter :: INSERT_ALL_VALUES = 5
42: PetscEnum, parameter :: ADD_ALL_VALUES = 6
43: PetscEnum, parameter :: INSERT_BC_VALUES = 7
44: PetscEnum, parameter :: ADD_BC_VALUES = 8
45: !
46: ! Types of vector scatters
47: !
48: PetscEnum, parameter :: SCATTER_FORWARD = 0
49: PetscEnum, parameter :: SCATTER_REVERSE = 1
50: PetscEnum, parameter :: SCATTER_FORWARD_LOCAL = 2
51: PetscEnum, parameter :: SCATTER_REVERSE_LOCAL = 3
52: PetscEnum, parameter :: SCATTER_LOCAL = 2
53: !
54: ! VecOption
55: !
56: PetscEnum, parameter :: VEC_IGNORE_OFF_PROC_ENTRIES = 0
57: PetscEnum, parameter :: VEC_IGNORE_NEGATIVE_INDICES = 1
58: PetscEnum, parameter :: VEC_SUBSET_OFF_PROC_ENTRIES = 2
59: !
60: ! VecOperation
61: !
62: PetscEnum, parameter :: VECOP_DUPLICATE = 0
63: PetscEnum, parameter :: VECOP_VIEW = 33
64: PetscEnum, parameter :: VECOP_LOAD = 41
65: PetscEnum, parameter :: VECOP_VIEWNATIVE = 68
66: PetscEnum, parameter :: VECOP_LOADNATIVE = 69
67: !
68: ! End of Fortran include file for the Vec package in PETSc
70: #if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
71: !DEC$ ATTRIBUTES DLLEXPORT::PETSC_NULL_VEC
72: !DEC$ ATTRIBUTES DLLEXPORT::PETSC_NULL_VECSCATTER
73: !DEC$ ATTRIBUTES DLLEXPORT::PETSC_NULL_VECTAGGER
74: !DEC$ ATTRIBUTES DLLEXPORT::NORM_1
75: !DEC$ ATTRIBUTES DLLEXPORT::NORM_2
76: !DEC$ ATTRIBUTES DLLEXPORT::NORM_FROBENIUS
77: !DEC$ ATTRIBUTES DLLEXPORT::NORM_INFINITY
78: !DEC$ ATTRIBUTES DLLEXPORT::NORM_MAX
79: !DEC$ ATTRIBUTES DLLEXPORT::NORM_1_AND_2
80: !DEC$ ATTRIBUTES DLLEXPORT::NOT_SET_VALUES
81: !DEC$ ATTRIBUTES DLLEXPORT::INSERT_VALUES
82: !DEC$ ATTRIBUTES DLLEXPORT::ADD_VALUES
83: !DEC$ ATTRIBUTES DLLEXPORT::MAX_VALUES
84: !DEC$ ATTRIBUTES DLLEXPORT::INSERT_ALL_VALUES
85: !DEC$ ATTRIBUTES DLLEXPORT::ADD_ALL_VALUES
86: !DEC$ ATTRIBUTES DLLEXPORT::INSERT_BC_VALUES
87: !DEC$ ATTRIBUTES DLLEXPORT::ADD_BC_VALUES
88: !DEC$ ATTRIBUTES DLLEXPORT::SCATTER_FORWARD
89: !DEC$ ATTRIBUTES DLLEXPORT::SCATTER_REVERSE
90: !DEC$ ATTRIBUTES DLLEXPORT::SCATTER_FORWARD_LOCAL
91: !DEC$ ATTRIBUTES DLLEXPORT::SCATTER_REVERSE_LOCAL
92: !DEC$ ATTRIBUTES DLLEXPORT::SCATTER_LOCAL
93: !DEC$ ATTRIBUTES DLLEXPORT::VEC_IGNORE_OFF_PROC_ENTRIES
94: !DEC$ ATTRIBUTES DLLEXPORT::VEC_IGNORE_NEGATIVE_INDICES
95: !DEC$ ATTRIBUTES DLLEXPORT::VEC_SUBSET_OFF_PROC_ENTRIES
96: !DEC$ ATTRIBUTES DLLEXPORT::VECOP_DUPLICATE
97: !DEC$ ATTRIBUTES DLLEXPORT::VECOP_VIEW
98: !DEC$ ATTRIBUTES DLLEXPORT::VECOP_LOAD
99: !DEC$ ATTRIBUTES DLLEXPORT::VECOP_VIEWNATIVE
100: !DEC$ ATTRIBUTES DLLEXPORT::VECOP_LOADNATIVE
101: #endif