Actual source code: gvecf.c

  1: /* gvec.c */
  2: /* Fortran interface file */

  4: /*
  5: * This file was generated automatically by bfort from the C source
  6: * file.  
  7:  */

  9: #ifdef PETSC_USE_POINTER_CONVERSION
 10: #if defined(__cplusplus)
 11: extern "C" {
 12: #endif 
 13: extern void *PetscToPointer(void *);
 14: extern int PetscFromPointer(void *);
 15: extern void PetscRmPointer(void *);
 16: #if defined(__cplusplus)
 17: }
 18: #endif 

 20: #else

 22: #define PetscToPointer(a) (*(long *)(a))
 23: #define PetscFromPointer(a) (long)(a)
 24: #define PetscRmPointer(a)
 25: #endif

 27: #include "petscfix.h"
 28:  #include gvec.h
 29: #ifdef MPI_BUILD_PROFILING
 30: #ifdef PETSC_HAVE_FORTRAN_CAPS
 31: #define gvecviewfromoptions_ PGVECVIEWFROMOPTIONS
 32: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
 33: #define gvecviewfromoptions_ pgvecviewfromoptions
 34: #else
 35: #define gvecviewfromoptions_ pgvecviewfromoptions_
 36: #endif
 37: #else
 38: #ifdef PETSC_HAVE_FORTRAN_CAPS
 39: #define gvecviewfromoptions_ GVECVIEWFROMOPTIONS
 40: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
 41: #define gvecviewfromoptions_ gvecviewfromoptions
 42: #endif
 43: #endif

 45: #ifdef MPI_BUILD_PROFILING
 46: #ifdef PETSC_HAVE_FORTRAN_CAPS
 47: #define gvecview_ PGVECVIEW
 48: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
 49: #define gvecview_ pgvecview
 50: #else
 51: #define gvecview_ pgvecview_
 52: #endif
 53: #else
 54: #ifdef PETSC_HAVE_FORTRAN_CAPS
 55: #define gvecview_ GVECVIEW
 56: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
 57: #define gvecview_ gvecview
 58: #endif
 59: #endif

 61: #ifdef MPI_BUILD_PROFILING
 62: #ifdef PETSC_HAVE_FORTRAN_CAPS
 63: #define gvecserialize_ PGVECSERIALIZE
 64: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
 65: #define gvecserialize_ pgvecserialize
 66: #else
 67: #define gvecserialize_ pgvecserialize_
 68: #endif
 69: #else
 70: #ifdef PETSC_HAVE_FORTRAN_CAPS
 71: #define gvecserialize_ GVECSERIALIZE
 72: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
 73: #define gvecserialize_ gvecserialize
 74: #endif
 75: #endif

 77: #ifdef MPI_BUILD_PROFILING
 78: #ifdef PETSC_HAVE_FORTRAN_CAPS
 79: #define gvecgetgrid_ PGVECGETGRID
 80: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
 81: #define gvecgetgrid_ pgvecgetgrid
 82: #else
 83: #define gvecgetgrid_ pgvecgetgrid_
 84: #endif
 85: #else
 86: #ifdef PETSC_HAVE_FORTRAN_CAPS
 87: #define gvecgetgrid_ GVECGETGRID
 88: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
 89: #define gvecgetgrid_ gvecgetgrid
 90: #endif
 91: #endif

 93: #ifdef MPI_BUILD_PROFILING
 94: #ifdef PETSC_HAVE_FORTRAN_CAPS
 95: #define gvecgetorder_ PGVECGETORDER
 96: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
 97: #define gvecgetorder_ pgvecgetorder
 98: #else
 99: #define gvecgetorder_ pgvecgetorder_
100: #endif
101: #else
102: #ifdef PETSC_HAVE_FORTRAN_CAPS
103: #define gvecgetorder_ GVECGETORDER
104: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
105: #define gvecgetorder_ gvecgetorder
106: #endif
107: #endif

109: #ifdef MPI_BUILD_PROFILING
110: #ifdef PETSC_HAVE_FORTRAN_CAPS
111: #define gvecgetlocalworkgvec_ PGVECGETLOCALWORKGVEC
112: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
113: #define gvecgetlocalworkgvec_ pgvecgetlocalworkgvec
114: #else
115: #define gvecgetlocalworkgvec_ pgvecgetlocalworkgvec_
116: #endif
117: #else
118: #ifdef PETSC_HAVE_FORTRAN_CAPS
119: #define gvecgetlocalworkgvec_ GVECGETLOCALWORKGVEC
120: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
121: #define gvecgetlocalworkgvec_ gvecgetlocalworkgvec
122: #endif
123: #endif

125: #ifdef MPI_BUILD_PROFILING
126: #ifdef PETSC_HAVE_FORTRAN_CAPS
127: #define gvecrestorelocalworkgvec_ PGVECRESTORELOCALWORKGVEC
128: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
129: #define gvecrestorelocalworkgvec_ pgvecrestorelocalworkgvec
130: #else
131: #define gvecrestorelocalworkgvec_ pgvecrestorelocalworkgvec_
132: #endif
133: #else
134: #ifdef PETSC_HAVE_FORTRAN_CAPS
135: #define gvecrestorelocalworkgvec_ GVECRESTORELOCALWORKGVEC
136: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
137: #define gvecrestorelocalworkgvec_ gvecrestorelocalworkgvec
138: #endif
139: #endif

141: #ifdef MPI_BUILD_PROFILING
142: #ifdef PETSC_HAVE_FORTRAN_CAPS
143: #define gvecgetworkgvec_ PGVECGETWORKGVEC
144: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
145: #define gvecgetworkgvec_ pgvecgetworkgvec
146: #else
147: #define gvecgetworkgvec_ pgvecgetworkgvec_
148: #endif
149: #else
150: #ifdef PETSC_HAVE_FORTRAN_CAPS
151: #define gvecgetworkgvec_ GVECGETWORKGVEC
152: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
153: #define gvecgetworkgvec_ gvecgetworkgvec
154: #endif
155: #endif

157: #ifdef MPI_BUILD_PROFILING
158: #ifdef PETSC_HAVE_FORTRAN_CAPS
159: #define gvecrestoreworkgvec_ PGVECRESTOREWORKGVEC
160: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
161: #define gvecrestoreworkgvec_ pgvecrestoreworkgvec
162: #else
163: #define gvecrestoreworkgvec_ pgvecrestoreworkgvec_
164: #endif
165: #else
166: #ifdef PETSC_HAVE_FORTRAN_CAPS
167: #define gvecrestoreworkgvec_ GVECRESTOREWORKGVEC
168: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
169: #define gvecrestoreworkgvec_ gvecrestoreworkgvec
170: #endif
171: #endif

173: #ifdef MPI_BUILD_PROFILING
174: #ifdef PETSC_HAVE_FORTRAN_CAPS
175: #define gvecglobaltolocal_ PGVECGLOBALTOLOCAL
176: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
177: #define gvecglobaltolocal_ pgvecglobaltolocal
178: #else
179: #define gvecglobaltolocal_ pgvecglobaltolocal_
180: #endif
181: #else
182: #ifdef PETSC_HAVE_FORTRAN_CAPS
183: #define gvecglobaltolocal_ GVECGLOBALTOLOCAL
184: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
185: #define gvecglobaltolocal_ gvecglobaltolocal
186: #endif
187: #endif

189: #ifdef MPI_BUILD_PROFILING
190: #ifdef PETSC_HAVE_FORTRAN_CAPS
191: #define gveclocaltoglobal_ PGVECLOCALTOGLOBAL
192: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
193: #define gveclocaltoglobal_ pgveclocaltoglobal
194: #else
195: #define gveclocaltoglobal_ pgveclocaltoglobal_
196: #endif
197: #else
198: #ifdef PETSC_HAVE_FORTRAN_CAPS
199: #define gveclocaltoglobal_ GVECLOCALTOGLOBAL
200: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
201: #define gveclocaltoglobal_ gveclocaltoglobal
202: #endif
203: #endif

205: #ifdef MPI_BUILD_PROFILING
206: #ifdef PETSC_HAVE_FORTRAN_CAPS
207: #define gvecevaluatefunction_ PGVECEVALUATEFUNCTION
208: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
209: #define gvecevaluatefunction_ pgvecevaluatefunction
210: #else
211: #define gvecevaluatefunction_ pgvecevaluatefunction_
212: #endif
213: #else
214: #ifdef PETSC_HAVE_FORTRAN_CAPS
215: #define gvecevaluatefunction_ GVECEVALUATEFUNCTION
216: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
217: #define gvecevaluatefunction_ gvecevaluatefunction
218: #endif
219: #endif

221: #ifdef MPI_BUILD_PROFILING
222: #ifdef PETSC_HAVE_FORTRAN_CAPS
223: #define gvecevaluatefunctioncollective_ PGVECEVALUATEFUNCTIONCOLLECTIVE
224: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
225: #define gvecevaluatefunctioncollective_ pgvecevaluatefunctioncollective
226: #else
227: #define gvecevaluatefunctioncollective_ pgvecevaluatefunctioncollective_
228: #endif
229: #else
230: #ifdef PETSC_HAVE_FORTRAN_CAPS
231: #define gvecevaluatefunctioncollective_ GVECEVALUATEFUNCTIONCOLLECTIVE
232: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
233: #define gvecevaluatefunctioncollective_ gvecevaluatefunctioncollective
234: #endif
235: #endif

237: #ifdef MPI_BUILD_PROFILING
238: #ifdef PETSC_HAVE_FORTRAN_CAPS
239: #define gvecevaluatefunctionrectangular_ PGVECEVALUATEFUNCTIONRECTANGULAR
240: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
241: #define gvecevaluatefunctionrectangular_ pgvecevaluatefunctionrectangular
242: #else
243: #define gvecevaluatefunctionrectangular_ pgvecevaluatefunctionrectangular_
244: #endif
245: #else
246: #ifdef PETSC_HAVE_FORTRAN_CAPS
247: #define gvecevaluatefunctionrectangular_ GVECEVALUATEFUNCTIONRECTANGULAR
248: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
249: #define gvecevaluatefunctionrectangular_ gvecevaluatefunctionrectangular
250: #endif
251: #endif

253: #ifdef MPI_BUILD_PROFILING
254: #ifdef PETSC_HAVE_FORTRAN_CAPS
255: #define gvecevaluatefunctiongalerkin_ PGVECEVALUATEFUNCTIONGALERKIN
256: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
257: #define gvecevaluatefunctiongalerkin_ pgvecevaluatefunctiongalerkin
258: #else
259: #define gvecevaluatefunctiongalerkin_ pgvecevaluatefunctiongalerkin_
260: #endif
261: #else
262: #ifdef PETSC_HAVE_FORTRAN_CAPS
263: #define gvecevaluatefunctiongalerkin_ GVECEVALUATEFUNCTIONGALERKIN
264: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
265: #define gvecevaluatefunctiongalerkin_ gvecevaluatefunctiongalerkin
266: #endif
267: #endif

269: #ifdef MPI_BUILD_PROFILING
270: #ifdef PETSC_HAVE_FORTRAN_CAPS
271: #define gvecevaluatefunctiongalerkincollective_ PGVECEVALUATEFUNCTIONGALERKINCOLLECTIVE
272: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
273: #define gvecevaluatefunctiongalerkincollective_ pgvecevaluatefunctiongalerkincollective
274: #else
275: #define gvecevaluatefunctiongalerkincollective_ pgvecevaluatefunctiongalerkincollective_
276: #endif
277: #else
278: #ifdef PETSC_HAVE_FORTRAN_CAPS
279: #define gvecevaluatefunctiongalerkincollective_ GVECEVALUATEFUNCTIONGALERKINCOLLECTIVE
280: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
281: #define gvecevaluatefunctiongalerkincollective_ gvecevaluatefunctiongalerkincollective
282: #endif
283: #endif

285: #ifdef MPI_BUILD_PROFILING
286: #ifdef PETSC_HAVE_FORTRAN_CAPS
287: #define gvecevaluateboundaryfunctiongalerkin_ PGVECEVALUATEBOUNDARYFUNCTIONGALERKIN
288: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
289: #define gvecevaluateboundaryfunctiongalerkin_ pgvecevaluateboundaryfunctiongalerkin
290: #else
291: #define gvecevaluateboundaryfunctiongalerkin_ pgvecevaluateboundaryfunctiongalerkin_
292: #endif
293: #else
294: #ifdef PETSC_HAVE_FORTRAN_CAPS
295: #define gvecevaluateboundaryfunctiongalerkin_ GVECEVALUATEBOUNDARYFUNCTIONGALERKIN
296: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
297: #define gvecevaluateboundaryfunctiongalerkin_ gvecevaluateboundaryfunctiongalerkin
298: #endif
299: #endif

301: #ifdef MPI_BUILD_PROFILING
302: #ifdef PETSC_HAVE_FORTRAN_CAPS
303: #define gvecevaluateboundaryfunctiongalerkincollective_ PGVECEVALUATEBOUNDARYFUNCTIONGALERKINCOLLECTIVE
304: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
305: #define gvecevaluateboundaryfunctiongalerkincollective_ pgvecevaluateboundaryfunctiongalerkincollective
306: #else
307: #define gvecevaluateboundaryfunctiongalerkincollective_ pgvecevaluateboundaryfunctiongalerkincollective_
308: #endif
309: #else
310: #ifdef PETSC_HAVE_FORTRAN_CAPS
311: #define gvecevaluateboundaryfunctiongalerkincollective_ GVECEVALUATEBOUNDARYFUNCTIONGALERKINCOLLECTIVE
312: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
313: #define gvecevaluateboundaryfunctiongalerkincollective_ gvecevaluateboundaryfunctiongalerkincollective
314: #endif
315: #endif

317: #ifdef MPI_BUILD_PROFILING
318: #ifdef PETSC_HAVE_FORTRAN_CAPS
319: #define gvecevaluatenonlinearoperatorgalerkin_ PGVECEVALUATENONLINEAROPERATORGALERKIN
320: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
321: #define gvecevaluatenonlinearoperatorgalerkin_ pgvecevaluatenonlinearoperatorgalerkin
322: #else
323: #define gvecevaluatenonlinearoperatorgalerkin_ pgvecevaluatenonlinearoperatorgalerkin_
324: #endif
325: #else
326: #ifdef PETSC_HAVE_FORTRAN_CAPS
327: #define gvecevaluatenonlinearoperatorgalerkin_ GVECEVALUATENONLINEAROPERATORGALERKIN
328: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
329: #define gvecevaluatenonlinearoperatorgalerkin_ gvecevaluatenonlinearoperatorgalerkin
330: #endif
331: #endif

333: #ifdef MPI_BUILD_PROFILING
334: #ifdef PETSC_HAVE_FORTRAN_CAPS
335: #define gvecevaluateoperatorgalerkin_ PGVECEVALUATEOPERATORGALERKIN
336: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
337: #define gvecevaluateoperatorgalerkin_ pgvecevaluateoperatorgalerkin
338: #else
339: #define gvecevaluateoperatorgalerkin_ pgvecevaluateoperatorgalerkin_
340: #endif
341: #else
342: #ifdef PETSC_HAVE_FORTRAN_CAPS
343: #define gvecevaluateoperatorgalerkin_ GVECEVALUATEOPERATORGALERKIN
344: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
345: #define gvecevaluateoperatorgalerkin_ gvecevaluateoperatorgalerkin
346: #endif
347: #endif

349: #ifdef MPI_BUILD_PROFILING
350: #ifdef PETSC_HAVE_FORTRAN_CAPS
351: #define gvecevaluateoperatorgalerkinrectangular_ PGVECEVALUATEOPERATORGALERKINRECTANGULAR
352: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
353: #define gvecevaluateoperatorgalerkinrectangular_ pgvecevaluateoperatorgalerkinrectangular
354: #else
355: #define gvecevaluateoperatorgalerkinrectangular_ pgvecevaluateoperatorgalerkinrectangular_
356: #endif
357: #else
358: #ifdef PETSC_HAVE_FORTRAN_CAPS
359: #define gvecevaluateoperatorgalerkinrectangular_ GVECEVALUATEOPERATORGALERKINRECTANGULAR
360: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
361: #define gvecevaluateoperatorgalerkinrectangular_ gvecevaluateoperatorgalerkinrectangular
362: #endif
363: #endif

365: #ifdef MPI_BUILD_PROFILING
366: #ifdef PETSC_HAVE_FORTRAN_CAPS
367: #define gvecevaluatejacobian_ PGVECEVALUATEJACOBIAN
368: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
369: #define gvecevaluatejacobian_ pgvecevaluatejacobian
370: #else
371: #define gvecevaluatejacobian_ pgvecevaluatejacobian_
372: #endif
373: #else
374: #ifdef PETSC_HAVE_FORTRAN_CAPS
375: #define gvecevaluatejacobian_ GVECEVALUATEJACOBIAN
376: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
377: #define gvecevaluatejacobian_ gvecevaluatejacobian
378: #endif
379: #endif

381: #ifdef MPI_BUILD_PROFILING
382: #ifdef PETSC_HAVE_FORTRAN_CAPS
383: #define gvecevaluatejacobiandiagonal_ PGVECEVALUATEJACOBIANDIAGONAL
384: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
385: #define gvecevaluatejacobiandiagonal_ pgvecevaluatejacobiandiagonal
386: #else
387: #define gvecevaluatejacobiandiagonal_ pgvecevaluatejacobiandiagonal_
388: #endif
389: #else
390: #ifdef PETSC_HAVE_FORTRAN_CAPS
391: #define gvecevaluatejacobiandiagonal_ GVECEVALUATEJACOBIANDIAGONAL
392: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
393: #define gvecevaluatejacobiandiagonal_ gvecevaluatejacobiandiagonal
394: #endif
395: #endif

397: #ifdef MPI_BUILD_PROFILING
398: #ifdef PETSC_HAVE_FORTRAN_CAPS
399: #define gvecevaluatejacobianconstrained_ PGVECEVALUATEJACOBIANCONSTRAINED
400: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
401: #define gvecevaluatejacobianconstrained_ pgvecevaluatejacobianconstrained
402: #else
403: #define gvecevaluatejacobianconstrained_ pgvecevaluatejacobianconstrained_
404: #endif
405: #else
406: #ifdef PETSC_HAVE_FORTRAN_CAPS
407: #define gvecevaluatejacobianconstrained_ GVECEVALUATEJACOBIANCONSTRAINED
408: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
409: #define gvecevaluatejacobianconstrained_ gvecevaluatejacobianconstrained
410: #endif
411: #endif

413: #ifdef MPI_BUILD_PROFILING
414: #ifdef PETSC_HAVE_FORTRAN_CAPS
415: #define gvecsolvejacobianconstrained_ PGVECSOLVEJACOBIANCONSTRAINED
416: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
417: #define gvecsolvejacobianconstrained_ pgvecsolvejacobianconstrained
418: #else
419: #define gvecsolvejacobianconstrained_ pgvecsolvejacobianconstrained_
420: #endif
421: #else
422: #ifdef PETSC_HAVE_FORTRAN_CAPS
423: #define gvecsolvejacobianconstrained_ GVECSOLVEJACOBIANCONSTRAINED
424: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
425: #define gvecsolvejacobianconstrained_ gvecsolvejacobianconstrained
426: #endif
427: #endif

429: #ifdef MPI_BUILD_PROFILING
430: #ifdef PETSC_HAVE_FORTRAN_CAPS
431: #define gvecsetboundary_ PGVECSETBOUNDARY
432: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
433: #define gvecsetboundary_ pgvecsetboundary
434: #else
435: #define gvecsetboundary_ pgvecsetboundary_
436: #endif
437: #else
438: #ifdef PETSC_HAVE_FORTRAN_CAPS
439: #define gvecsetboundary_ GVECSETBOUNDARY
440: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
441: #define gvecsetboundary_ gvecsetboundary
442: #endif
443: #endif

445: #ifdef MPI_BUILD_PROFILING
446: #ifdef PETSC_HAVE_FORTRAN_CAPS
447: #define gvecsetboundaryzero_ PGVECSETBOUNDARYZERO
448: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
449: #define gvecsetboundaryzero_ pgvecsetboundaryzero
450: #else
451: #define gvecsetboundaryzero_ pgvecsetboundaryzero_
452: #endif
453: #else
454: #ifdef PETSC_HAVE_FORTRAN_CAPS
455: #define gvecsetboundaryzero_ GVECSETBOUNDARYZERO
456: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
457: #define gvecsetboundaryzero_ gvecsetboundaryzero
458: #endif
459: #endif

461: #ifdef MPI_BUILD_PROFILING
462: #ifdef PETSC_HAVE_FORTRAN_CAPS
463: #define gvecsetboundarydifference_ PGVECSETBOUNDARYDIFFERENCE
464: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
465: #define gvecsetboundarydifference_ pgvecsetboundarydifference
466: #else
467: #define gvecsetboundarydifference_ pgvecsetboundarydifference_
468: #endif
469: #else
470: #ifdef PETSC_HAVE_FORTRAN_CAPS
471: #define gvecsetboundarydifference_ GVECSETBOUNDARYDIFFERENCE
472: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
473: #define gvecsetboundarydifference_ gvecsetboundarydifference
474: #endif
475: #endif

477: #ifdef MPI_BUILD_PROFILING
478: #ifdef PETSC_HAVE_FORTRAN_CAPS
479: #define gvecinterpolatefield_ PGVECINTERPOLATEFIELD
480: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
481: #define gvecinterpolatefield_ pgvecinterpolatefield
482: #else
483: #define gvecinterpolatefield_ pgvecinterpolatefield_
484: #endif
485: #else
486: #ifdef PETSC_HAVE_FORTRAN_CAPS
487: #define gvecinterpolatefield_ GVECINTERPOLATEFIELD
488: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
489: #define gvecinterpolatefield_ gvecinterpolatefield
490: #endif
491: #endif

493: #ifdef MPI_BUILD_PROFILING
494: #ifdef PETSC_HAVE_FORTRAN_CAPS
495: #define gveccreate_ PGVECCREATE
496: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
497: #define gveccreate_ pgveccreate
498: #else
499: #define gveccreate_ pgveccreate_
500: #endif
501: #else
502: #ifdef PETSC_HAVE_FORTRAN_CAPS
503: #define gveccreate_ GVECCREATE
504: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
505: #define gveccreate_ gveccreate
506: #endif
507: #endif

509: #ifdef MPI_BUILD_PROFILING
510: #ifdef PETSC_HAVE_FORTRAN_CAPS
511: #define gveccreateghost_ PGVECCREATEGHOST
512: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
513: #define gveccreateghost_ pgveccreateghost
514: #else
515: #define gveccreateghost_ pgveccreateghost_
516: #endif
517: #else
518: #ifdef PETSC_HAVE_FORTRAN_CAPS
519: #define gveccreateghost_ GVECCREATEGHOST
520: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
521: #define gveccreateghost_ gveccreateghost
522: #endif
523: #endif

525: #ifdef MPI_BUILD_PROFILING
526: #ifdef PETSC_HAVE_FORTRAN_CAPS
527: #define gveccreaterectangular_ PGVECCREATERECTANGULAR
528: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
529: #define gveccreaterectangular_ pgveccreaterectangular
530: #else
531: #define gveccreaterectangular_ pgveccreaterectangular_
532: #endif
533: #else
534: #ifdef PETSC_HAVE_FORTRAN_CAPS
535: #define gveccreaterectangular_ GVECCREATERECTANGULAR
536: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
537: #define gveccreaterectangular_ gveccreaterectangular
538: #endif
539: #endif

541: #ifdef MPI_BUILD_PROFILING
542: #ifdef PETSC_HAVE_FORTRAN_CAPS
543: #define gveccreaterectangularghost_ PGVECCREATERECTANGULARGHOST
544: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
545: #define gveccreaterectangularghost_ pgveccreaterectangularghost
546: #else
547: #define gveccreaterectangularghost_ pgveccreaterectangularghost_
548: #endif
549: #else
550: #ifdef PETSC_HAVE_FORTRAN_CAPS
551: #define gveccreaterectangularghost_ GVECCREATERECTANGULARGHOST
552: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
553: #define gveccreaterectangularghost_ gveccreaterectangularghost
554: #endif
555: #endif

557: #ifdef MPI_BUILD_PROFILING
558: #ifdef PETSC_HAVE_FORTRAN_CAPS
559: #define gveccreateconstrained_ PGVECCREATECONSTRAINED
560: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
561: #define gveccreateconstrained_ pgveccreateconstrained
562: #else
563: #define gveccreateconstrained_ pgveccreateconstrained_
564: #endif
565: #else
566: #ifdef PETSC_HAVE_FORTRAN_CAPS
567: #define gveccreateconstrained_ GVECCREATECONSTRAINED
568: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
569: #define gveccreateconstrained_ gveccreateconstrained
570: #endif
571: #endif

573: #ifdef MPI_BUILD_PROFILING
574: #ifdef PETSC_HAVE_FORTRAN_CAPS
575: #define gveccreateboundaryrestriction_ PGVECCREATEBOUNDARYRESTRICTION
576: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
577: #define gveccreateboundaryrestriction_ pgveccreateboundaryrestriction
578: #else
579: #define gveccreateboundaryrestriction_ pgveccreateboundaryrestriction_
580: #endif
581: #else
582: #ifdef PETSC_HAVE_FORTRAN_CAPS
583: #define gveccreateboundaryrestriction_ GVECCREATEBOUNDARYRESTRICTION
584: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
585: #define gveccreateboundaryrestriction_ gveccreateboundaryrestriction
586: #endif
587: #endif

589: #ifdef MPI_BUILD_PROFILING
590: #ifdef PETSC_HAVE_FORTRAN_CAPS
591: #define pointfunctioninterpolatefield_ PPOINTFUNCTIONINTERPOLATEFIELD
592: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
593: #define pointfunctioninterpolatefield_ ppointfunctioninterpolatefield
594: #else
595: #define pointfunctioninterpolatefield_ ppointfunctioninterpolatefield_
596: #endif
597: #else
598: #ifdef PETSC_HAVE_FORTRAN_CAPS
599: #define pointfunctioninterpolatefield_ POINTFUNCTIONINTERPOLATEFIELD
600: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
601: #define pointfunctioninterpolatefield_ pointfunctioninterpolatefield
602: #endif
603: #endif

605: #ifdef MPI_BUILD_PROFILING
606: #ifdef PETSC_HAVE_FORTRAN_CAPS
607: #define pointfunctioninterpolatefieldbatch_ PPOINTFUNCTIONINTERPOLATEFIELDBATCH
608: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
609: #define pointfunctioninterpolatefieldbatch_ ppointfunctioninterpolatefieldbatch
610: #else
611: #define pointfunctioninterpolatefieldbatch_ ppointfunctioninterpolatefieldbatch_
612: #endif
613: #else
614: #ifdef PETSC_HAVE_FORTRAN_CAPS
615: #define pointfunctioninterpolatefieldbatch_ POINTFUNCTIONINTERPOLATEFIELDBATCH
616: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
617: #define pointfunctioninterpolatefieldbatch_ pointfunctioninterpolatefieldbatch
618: #endif
619: #endif



623: /* Definitions of Fortran Wrapper routines */
624: #if defined(__cplusplus)
625: extern "C" {
626: #endif
627: void PETSC_STDCALL gvecviewfromoptions_(GVec gvec,char *title, int *ierr ){
628: *GVecViewFromOptions(
629:         (GVec)PetscToPointer( (gvec) ),title);
630: }
631: void PETSC_STDCALL gvecview_(GVec v,PetscViewer *viewer, int *ierr ){
632: *GVecView(
633:         (GVec)PetscToPointer( (v) ),*viewer);
634: }
635: void PETSC_STDCALL gvecserialize_(Grid grid,GVec *v,PetscViewer *viewer,PetscTruth *store, int *ierr ){
636: *GVecSerialize(
637:         (Grid)PetscToPointer( (grid) ),v,*viewer,*store);
638: }
639: void PETSC_STDCALL gvecgetgrid_(GVec v,Grid *grid, int *ierr ){
640: *GVecGetGrid(
641:         (GVec)PetscToPointer( (v) ),grid);
642: }
643: void PETSC_STDCALL gvecgetorder_(GVec v,VarOrdering *order, int *ierr ){
644: *GVecGetOrder(
645:         (GVec)PetscToPointer( (v) ),order);
646: }
647: void PETSC_STDCALL gvecgetlocalworkgvec_(GVec v,GVec *lv, int *ierr ){
648: *GVecGetLocalWorkGVec(
649:         (GVec)PetscToPointer( (v) ),lv);
650: }
651: void PETSC_STDCALL gvecrestorelocalworkgvec_(GVec v,GVec *lv, int *ierr ){
652: *GVecRestoreLocalWorkGVec(
653:         (GVec)PetscToPointer( (v) ),lv);
654: }
655: void PETSC_STDCALL gvecgetworkgvec_(GVec v,GVec *wv, int *ierr ){
656: *GVecGetWorkGVec(
657:         (GVec)PetscToPointer( (v) ),wv);
658: }
659: void PETSC_STDCALL gvecrestoreworkgvec_(GVec v,GVec *wv, int *ierr ){
660: *GVecRestoreWorkGVec(
661:         (GVec)PetscToPointer( (v) ),wv);
662: }
663: void PETSC_STDCALL gvecglobaltolocal_(GVec v,InsertMode *mode,GVec lv, int *ierr ){
664: *GVecGlobalToLocal(
665:         (GVec)PetscToPointer( (v) ),*mode,
666:         (GVec)PetscToPointer( (lv) ));
667: }
668: void PETSC_STDCALL gveclocaltoglobal_(GVec v,InsertMode *mode,GVec lv, int *ierr ){
669: *GVecLocalToGlobal(
670:         (GVec)PetscToPointer( (v) ),*mode,
671:         (GVec)PetscToPointer( (lv) ));
672: }
673: void PETSC_STDCALL gvecevaluatefunction_(GVec v,int *numFields,int *fields,PointFunction *f,PetscScalar *alpha,void*ctx, int *ierr ){
674: *GVecEvaluateFunction(
675:         (GVec)PetscToPointer( (v) ),*numFields,fields,*f,*alpha,ctx);
676: }
677: void PETSC_STDCALL gvecevaluatefunctioncollective_(GVec v,int *numFields,int *fields,PointFunction *f,PetscScalar *alpha,void*ctx, int *ierr ){
678: *GVecEvaluateFunctionCollective(
679:         (GVec)PetscToPointer( (v) ),*numFields,fields,*f,*alpha,ctx);
680: }
681: void PETSC_STDCALL gvecevaluatefunctionrectangular_(GVec v,VarOrdering order,PointFunction *f,PetscScalar *alpha,void*ctx, int *ierr ){
682: *GVecEvaluateFunctionRectangular(
683:         (GVec)PetscToPointer( (v) ),
684:         (VarOrdering)PetscToPointer( (order) ),*f,*alpha,ctx);
685: }
686: void PETSC_STDCALL gvecevaluatefunctiongalerkin_(GVec v,int *numFields,int *fields,PointFunction *f,PetscScalar *alpha,void*ctx, int *ierr ){
687: *GVecEvaluateFunctionGalerkin(
688:         (GVec)PetscToPointer( (v) ),*numFields,fields,*f,*alpha,ctx);
689: }
690: void PETSC_STDCALL gvecevaluatefunctiongalerkincollective_(GVec v,int *numFields,int *fields,PointFunction *f,PetscScalar *alpha,void*ctx, int *ierr ){
691: *GVecEvaluateFunctionGalerkinCollective(
692:         (GVec)PetscToPointer( (v) ),*numFields,fields,*f,*alpha,ctx);
693: }
694: void PETSC_STDCALL gvecevaluateboundaryfunctiongalerkin_(GVec v,int *numFields,int *fields,PointFunction *f,PetscScalar *alpha,void*ctx, int *ierr ){
695: *GVecEvaluateBoundaryFunctionGalerkin(
696:         (GVec)PetscToPointer( (v) ),*numFields,fields,*f,*alpha,ctx);
697: }
698: void PETSC_STDCALL gvecevaluateboundaryfunctiongalerkincollective_(GVec v,int *numFields,int *fields,PointFunction *f,PetscScalar *alpha,void*ctx, int *ierr ){
699: *GVecEvaluateBoundaryFunctionGalerkinCollective(
700:         (GVec)PetscToPointer( (v) ),*numFields,fields,*f,*alpha,ctx);
701: }
702: void PETSC_STDCALL gvecevaluatenonlinearoperatorgalerkin_(GVec v,int *n,GVec vecs[],int *numFields,int *fields,NonlinearOperator *op,
703:                                           PetscScalar *alpha,PetscTruth *isALE,void*ctx, int *ierr ){
704: *GVecEvaluateNonlinearOperatorGalerkin(
705:         (GVec)PetscToPointer( (v) ),*n,vecs,*numFields,fields,*op,*alpha,*isALE,ctx);
706: }
707: void PETSC_STDCALL gvecevaluateoperatorgalerkin_(GVec v,GVec x,GVec y,int *sField,int *tField,int *op,PetscScalar *alpha,void*ctx, int *ierr ){
708: *GVecEvaluateOperatorGalerkin(
709:         (GVec)PetscToPointer( (v) ),
710:         (GVec)PetscToPointer( (x) ),
711:         (GVec)PetscToPointer( (y) ),*sField,*tField,*op,*alpha,ctx);
712: }
713: void PETSC_STDCALL gvecevaluateoperatorgalerkinrectangular_(GVec v,GVec x,VarOrdering sOrder,LocalVarOrdering *sLocOrder,
714:                                             VarOrdering tOrder,LocalVarOrdering *tLocOrder,int *op,PetscScalar *alpha,
715:                                             void*ctx, int *ierr ){
716: *GVecEvaluateOperatorGalerkinRectangular(
717:         (GVec)PetscToPointer( (v) ),
718:         (GVec)PetscToPointer( (x) ),
719:         (VarOrdering)PetscToPointer( (sOrder) ),*sLocOrder,
720:         (VarOrdering)PetscToPointer( (tOrder) ),*tLocOrder,*op,*alpha,ctx);
721: }
722: void PETSC_STDCALL gvecevaluatejacobian_(GVec v,GVec x,GVec y,void*ctx, int *ierr ){
723: *GVecEvaluateJacobian(
724:         (GVec)PetscToPointer( (v) ),
725:         (GVec)PetscToPointer( (x) ),
726:         (GVec)PetscToPointer( (y) ),ctx);
727: }
728: void PETSC_STDCALL gvecevaluatejacobiandiagonal_(GVec d,GVec x,void*ctx, int *ierr ){
729: *GVecEvaluateJacobianDiagonal(
730:         (GVec)PetscToPointer( (d) ),
731:         (GVec)PetscToPointer( (x) ),ctx);
732: }
733: void PETSC_STDCALL gvecevaluatejacobianconstrained_(GVec v,GVec x, int *ierr ){
734: *GVecEvaluateJacobianConstrained(
735:         (GVec)PetscToPointer( (v) ),
736:         (GVec)PetscToPointer( (x) ));
737: }
738: void PETSC_STDCALL gvecsolvejacobianconstrained_(GVec v,GVec x, int *ierr ){
739: *GVecSolveJacobianConstrained(
740:         (GVec)PetscToPointer( (v) ),
741:         (GVec)PetscToPointer( (x) ));
742: }
743: void PETSC_STDCALL gvecsetboundary_(GVec v,void*ctx, int *ierr ){
744: *GVecSetBoundary(
745:         (GVec)PetscToPointer( (v) ),ctx);
746: }
747: void PETSC_STDCALL gvecsetboundaryzero_(GVec v,void*ctx, int *ierr ){
748: *GVecSetBoundaryZero(
749:         (GVec)PetscToPointer( (v) ),ctx);
750: }
751: void PETSC_STDCALL gvecsetboundarydifference_(GVec v,GVec u,void*ctx, int *ierr ){
752: *GVecSetBoundaryDifference(
753:         (GVec)PetscToPointer( (v) ),
754:         (GVec)PetscToPointer( (u) ),ctx);
755: }
756: void PETSC_STDCALL gvecinterpolatefield_(GVec v,int *field,double *x,double *y,double *z,PetscScalar *values,InterpolationContext *ctx, int *ierr ){
757: *GVecInterpolateField(
758:         (GVec)PetscToPointer( (v) ),*field,*x,*y,*z,values,
759:         (InterpolationContext* )PetscToPointer( (ctx) ));
760: }
761: void PETSC_STDCALL gveccreate_(Grid grid,GVec *gvec, int *ierr ){
762: *GVecCreate(
763:         (Grid)PetscToPointer( (grid) ),gvec);
764: }
765: void PETSC_STDCALL gveccreateghost_(Grid grid,GVec *gvec, int *ierr ){
766: *GVecCreateGhost(
767:         (Grid)PetscToPointer( (grid) ),gvec);
768: }
769: void PETSC_STDCALL gveccreaterectangular_(Grid grid,VarOrdering order,GVec *gvec, int *ierr ){
770: *GVecCreateRectangular(
771:         (Grid)PetscToPointer( (grid) ),
772:         (VarOrdering)PetscToPointer( (order) ),gvec);
773: }
774: void PETSC_STDCALL gveccreaterectangularghost_(Grid grid,VarOrdering order,GVec *gvec, int *ierr ){
775: *GVecCreateRectangularGhost(
776:         (Grid)PetscToPointer( (grid) ),
777:         (VarOrdering)PetscToPointer( (order) ),gvec);
778: }
779: void PETSC_STDCALL gveccreateconstrained_(Grid grid,GVec *gvec, int *ierr ){
780: *GVecCreateConstrained(
781:         (Grid)PetscToPointer( (grid) ),gvec);
782: }
783: void PETSC_STDCALL gveccreateboundaryrestriction_(Grid grid,GVec *gvec, int *ierr ){
784: *GVecCreateBoundaryRestriction(
785:         (Grid)PetscToPointer( (grid) ),gvec);
786: }
787: void PETSC_STDCALL pointfunctioninterpolatefield_(int *n,int *comp,double *x,double *y,double *z,PetscScalar *values,void*ctx, int *ierr ){
788: *PointFunctionInterpolateField(*n,*comp,x,y,z,values,ctx);
789: }
790: void PETSC_STDCALL pointfunctioninterpolatefieldbatch_(int *n,int *comp,double *x,double *y,double *z,PetscScalar *values,void*ctx, int *ierr ){
791: *PointFunctionInterpolateFieldBatch(*n,*comp,x,y,z,values,ctx);
792: }
793: #if defined(__cplusplus)
794: }
795: #endif