Actual source code: petscvec.h90
petsc-3.8.4 2018-03-24
1: Interface
2: subroutine VecScatterCreateToAll(a,b,c,z)
3: use petscvecdef
4: Vec a
5: VecScatter b
6: Vec c
7: integer z
8: end subroutine
9: end Interface
11: Interface
12: subroutine VecScatterCreateToZero(a,b,c,z)
13: use petscvecdef
14: Vec a
15: VecScatter b
16: Vec c
17: integer z
18: end subroutine
19: end Interface
21: Interface VecSetValuesLocal
22: subroutine VecSetValuesLocal0(a,b,c,d,e,z)
23: use petscvecdef
24: Vec a ! Vec
25: PetscInt b ! PetscInt
26: PetscInt c (*) ! PetscInt
27: PetscScalar d (*) ! PetscScalar
28: InsertMode e ! InsertMode
29: integer z
30: end subroutine
31: subroutine VecSetValuesLocal11(a,b,c,d,e,z)
32: use petscvecdef
33: Vec a ! Vec
34: PetscInt b ! PetscInt
35: PetscInt c ! PetscInt
36: PetscScalar d ! PetscScalar
37: InsertMode e ! InsertMode
38: integer z
39: end subroutine
40: end interface VecSetValuesLocal
42: Interface VecSetValues
43: subroutine VecSetValues0(a,b,c,d,e,z)
44: use petscvecdef
45: Vec a ! Vec
46: PetscInt b ! PetscInt
47: PetscInt c (*) ! PetscInt
48: PetscScalar d (*) ! PetscScalar
49: InsertMode e ! InsertMode
50: integer z
51: end subroutine
52: subroutine VecSetValues1(a,b,c,d,e,z)
53: use petscvecdef
54: Vec a ! Vec
55: PetscInt b ! PetscInt
56: PetscInt c ! PetscInt
57: PetscScalar d (*) ! PetscScalar
58: InsertMode e ! InsertMode
59: integer z
60: end subroutine
61: subroutine VecSetValues11(a,b,c,d,e,z)
62: use petscvecdef
63: Vec a ! Vec
64: PetscInt b ! PetscInt
65: PetscInt c ! PetscInt
66: PetscScalar d ! PetscScalar
67: InsertMode e ! InsertMode
68: integer z
69: end subroutine
70: End Interface VecSetValues
72: Interface VecSetValuesBlocked
73: subroutine VecSetValuesBlocked0(a,b,c,d,e,z)
74: use petscvecdef
75: Vec a ! Vec
76: PetscInt b ! PetscInt
77: PetscInt c (*) ! PetscInt
78: PetscScalar d (*) ! PetscScalar
79: InsertMode e ! InsertMode
80: integer z
81: end subroutine
82: subroutine VecSetValuesBlocked1(a,b,c,d,e,z)
83: use petscvecdef
84: Vec a ! Vec
85: PetscInt b ! PetscInt
86: PetscInt c ! PetscInt
87: PetscScalar d (*) ! PetscScalar
88: InsertMode e ! InsertMode
89: integer z
90: end subroutine
91: subroutine VecSetValuesBlocked11(a,b,c,d,e,z)
92: use petscvecdef
93: Vec a ! Vec
94: PetscInt b ! PetscInt
95: PetscInt c ! PetscInt
96: PetscScalar d ! PetscScalar
97: InsertMode e ! InsertMode
98: integer z
99: end subroutine
100: End Interface VecSetValuesBlocked
102: Interface
103: Subroutine VecGetArrayF90(v,array,ierr)
104: use petscvecdef
105: PetscScalar, pointer :: array(:)
106: PetscErrorCode ierr
107: Vec v
108: End Subroutine
109: End Interface
111: Interface
112: Subroutine VecRestoreArrayF90(v,array,ierr)
113: use petscvecdef
114: PetscScalar, pointer :: array(:)
115: PetscErrorCode ierr
116: Vec v
117: End Subroutine
118: End Interface
120: Interface
121: Subroutine VecGetArrayReadF90(v,array,ierr)
122: use petscvecdef
123: PetscScalar, pointer :: array(:)
124: PetscErrorCode ierr
125: Vec v
126: End Subroutine
127: End Interface
129: Interface
130: Subroutine VecRestoreArrayReadF90(v,array,ierr)
131: use petscvecdef
132: PetscScalar, pointer :: array(:)
133: PetscErrorCode ierr
134: Vec v
135: End Subroutine
136: End Interface
138: Interface
139: Subroutine VecSetValuesSectionF90(v,s,p,va,mode,ierr)
140: use petscvecdef
141: PetscScalar, pointer :: va(:)
142: PetscErrorCode ierr
143: Vec v
144: PetscSection s
145: PetscInt p
146: InsertMode mode
147: End Subroutine
148: End Interface
150: ! -------------------------------------------------------------
152: Interface
153: Subroutine VecDuplicateVecsF90(v,m,vs,ierr)
154: use petscvecdef
155: Vec, pointer :: vs(:)
156: PetscInt m
157: PetscErrorCode ierr
158: Vec v
159: End Subroutine
160: End Interface
161: !
162: ! Question: should VecDestroyVecsF90() take the m argument since
163: ! the array of vectors already knows how long it is? Yes, to
164: ! match calling sequence for C/C++.
165: !
166: Interface
167: Subroutine VecDestroyVecsF90(m,vs,ierr)
168: use petscvecdef
169: Vec, pointer :: vs(:)
170: PetscInt m
171: PetscErrorCode ierr
172: End Subroutine
173: End Interface