Actual source code: matrixf.c
1: /* matrix.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 petscmat.h
29: #ifdef MPI_BUILD_PROFILING
30: #ifdef PETSC_HAVE_FORTRAN_CAPS
31: #define matvalid_ PMATVALID
32: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
33: #define matvalid_ pmatvalid
34: #else
35: #define matvalid_ pmatvalid_
36: #endif
37: #else
38: #ifdef PETSC_HAVE_FORTRAN_CAPS
39: #define matvalid_ MATVALID
40: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
41: #define matvalid_ matvalid
42: #endif
43: #endif
45: #ifdef MPI_BUILD_PROFILING
46: #ifdef PETSC_HAVE_FORTRAN_CAPS
47: #define matsetvalues_ PMATSETVALUES
48: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
49: #define matsetvalues_ pmatsetvalues
50: #else
51: #define matsetvalues_ pmatsetvalues_
52: #endif
53: #else
54: #ifdef PETSC_HAVE_FORTRAN_CAPS
55: #define matsetvalues_ MATSETVALUES
56: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
57: #define matsetvalues_ matsetvalues
58: #endif
59: #endif
61: #ifdef MPI_BUILD_PROFILING
62: #ifdef PETSC_HAVE_FORTRAN_CAPS
63: #define matsetstencil_ PMATSETSTENCIL
64: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
65: #define matsetstencil_ pmatsetstencil
66: #else
67: #define matsetstencil_ pmatsetstencil_
68: #endif
69: #else
70: #ifdef PETSC_HAVE_FORTRAN_CAPS
71: #define matsetstencil_ MATSETSTENCIL
72: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
73: #define matsetstencil_ matsetstencil
74: #endif
75: #endif
77: #ifdef MPI_BUILD_PROFILING
78: #ifdef PETSC_HAVE_FORTRAN_CAPS
79: #define matsetvaluesblocked_ PMATSETVALUESBLOCKED
80: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
81: #define matsetvaluesblocked_ pmatsetvaluesblocked
82: #else
83: #define matsetvaluesblocked_ pmatsetvaluesblocked_
84: #endif
85: #else
86: #ifdef PETSC_HAVE_FORTRAN_CAPS
87: #define matsetvaluesblocked_ MATSETVALUESBLOCKED
88: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
89: #define matsetvaluesblocked_ matsetvaluesblocked
90: #endif
91: #endif
93: #ifdef MPI_BUILD_PROFILING
94: #ifdef PETSC_HAVE_FORTRAN_CAPS
95: #define matgetvalues_ PMATGETVALUES
96: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
97: #define matgetvalues_ pmatgetvalues
98: #else
99: #define matgetvalues_ pmatgetvalues_
100: #endif
101: #else
102: #ifdef PETSC_HAVE_FORTRAN_CAPS
103: #define matgetvalues_ MATGETVALUES
104: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
105: #define matgetvalues_ matgetvalues
106: #endif
107: #endif
109: #ifdef MPI_BUILD_PROFILING
110: #ifdef PETSC_HAVE_FORTRAN_CAPS
111: #define matsetlocaltoglobalmapping_ PMATSETLOCALTOGLOBALMAPPING
112: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
113: #define matsetlocaltoglobalmapping_ pmatsetlocaltoglobalmapping
114: #else
115: #define matsetlocaltoglobalmapping_ pmatsetlocaltoglobalmapping_
116: #endif
117: #else
118: #ifdef PETSC_HAVE_FORTRAN_CAPS
119: #define matsetlocaltoglobalmapping_ MATSETLOCALTOGLOBALMAPPING
120: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
121: #define matsetlocaltoglobalmapping_ matsetlocaltoglobalmapping
122: #endif
123: #endif
125: #ifdef MPI_BUILD_PROFILING
126: #ifdef PETSC_HAVE_FORTRAN_CAPS
127: #define matsetlocaltoglobalmappingblock_ PMATSETLOCALTOGLOBALMAPPINGBLOCK
128: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
129: #define matsetlocaltoglobalmappingblock_ pmatsetlocaltoglobalmappingblock
130: #else
131: #define matsetlocaltoglobalmappingblock_ pmatsetlocaltoglobalmappingblock_
132: #endif
133: #else
134: #ifdef PETSC_HAVE_FORTRAN_CAPS
135: #define matsetlocaltoglobalmappingblock_ MATSETLOCALTOGLOBALMAPPINGBLOCK
136: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
137: #define matsetlocaltoglobalmappingblock_ matsetlocaltoglobalmappingblock
138: #endif
139: #endif
141: #ifdef MPI_BUILD_PROFILING
142: #ifdef PETSC_HAVE_FORTRAN_CAPS
143: #define matsetvalueslocal_ PMATSETVALUESLOCAL
144: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
145: #define matsetvalueslocal_ pmatsetvalueslocal
146: #else
147: #define matsetvalueslocal_ pmatsetvalueslocal_
148: #endif
149: #else
150: #ifdef PETSC_HAVE_FORTRAN_CAPS
151: #define matsetvalueslocal_ MATSETVALUESLOCAL
152: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
153: #define matsetvalueslocal_ matsetvalueslocal
154: #endif
155: #endif
157: #ifdef MPI_BUILD_PROFILING
158: #ifdef PETSC_HAVE_FORTRAN_CAPS
159: #define matsetvaluesblockedlocal_ PMATSETVALUESBLOCKEDLOCAL
160: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
161: #define matsetvaluesblockedlocal_ pmatsetvaluesblockedlocal
162: #else
163: #define matsetvaluesblockedlocal_ pmatsetvaluesblockedlocal_
164: #endif
165: #else
166: #ifdef PETSC_HAVE_FORTRAN_CAPS
167: #define matsetvaluesblockedlocal_ MATSETVALUESBLOCKEDLOCAL
168: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
169: #define matsetvaluesblockedlocal_ matsetvaluesblockedlocal
170: #endif
171: #endif
173: #ifdef MPI_BUILD_PROFILING
174: #ifdef PETSC_HAVE_FORTRAN_CAPS
175: #define matmult_ PMATMULT
176: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
177: #define matmult_ pmatmult
178: #else
179: #define matmult_ pmatmult_
180: #endif
181: #else
182: #ifdef PETSC_HAVE_FORTRAN_CAPS
183: #define matmult_ MATMULT
184: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
185: #define matmult_ matmult
186: #endif
187: #endif
189: #ifdef MPI_BUILD_PROFILING
190: #ifdef PETSC_HAVE_FORTRAN_CAPS
191: #define matmulttranspose_ PMATMULTTRANSPOSE
192: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
193: #define matmulttranspose_ pmatmulttranspose
194: #else
195: #define matmulttranspose_ pmatmulttranspose_
196: #endif
197: #else
198: #ifdef PETSC_HAVE_FORTRAN_CAPS
199: #define matmulttranspose_ MATMULTTRANSPOSE
200: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
201: #define matmulttranspose_ matmulttranspose
202: #endif
203: #endif
205: #ifdef MPI_BUILD_PROFILING
206: #ifdef PETSC_HAVE_FORTRAN_CAPS
207: #define matmultadd_ PMATMULTADD
208: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
209: #define matmultadd_ pmatmultadd
210: #else
211: #define matmultadd_ pmatmultadd_
212: #endif
213: #else
214: #ifdef PETSC_HAVE_FORTRAN_CAPS
215: #define matmultadd_ MATMULTADD
216: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
217: #define matmultadd_ matmultadd
218: #endif
219: #endif
221: #ifdef MPI_BUILD_PROFILING
222: #ifdef PETSC_HAVE_FORTRAN_CAPS
223: #define matmulttransposeadd_ PMATMULTTRANSPOSEADD
224: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
225: #define matmulttransposeadd_ pmatmulttransposeadd
226: #else
227: #define matmulttransposeadd_ pmatmulttransposeadd_
228: #endif
229: #else
230: #ifdef PETSC_HAVE_FORTRAN_CAPS
231: #define matmulttransposeadd_ MATMULTTRANSPOSEADD
232: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
233: #define matmulttransposeadd_ matmulttransposeadd
234: #endif
235: #endif
237: #ifdef MPI_BUILD_PROFILING
238: #ifdef PETSC_HAVE_FORTRAN_CAPS
239: #define matmultconstrained_ PMATMULTCONSTRAINED
240: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
241: #define matmultconstrained_ pmatmultconstrained
242: #else
243: #define matmultconstrained_ pmatmultconstrained_
244: #endif
245: #else
246: #ifdef PETSC_HAVE_FORTRAN_CAPS
247: #define matmultconstrained_ MATMULTCONSTRAINED
248: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
249: #define matmultconstrained_ matmultconstrained
250: #endif
251: #endif
253: #ifdef MPI_BUILD_PROFILING
254: #ifdef PETSC_HAVE_FORTRAN_CAPS
255: #define matmulttransposeconstrained_ PMATMULTTRANSPOSECONSTRAINED
256: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
257: #define matmulttransposeconstrained_ pmatmulttransposeconstrained
258: #else
259: #define matmulttransposeconstrained_ pmatmulttransposeconstrained_
260: #endif
261: #else
262: #ifdef PETSC_HAVE_FORTRAN_CAPS
263: #define matmulttransposeconstrained_ MATMULTTRANSPOSECONSTRAINED
264: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
265: #define matmulttransposeconstrained_ matmulttransposeconstrained
266: #endif
267: #endif
269: #ifdef MPI_BUILD_PROFILING
270: #ifdef PETSC_HAVE_FORTRAN_CAPS
271: #define matlufactor_ PMATLUFACTOR
272: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
273: #define matlufactor_ pmatlufactor
274: #else
275: #define matlufactor_ pmatlufactor_
276: #endif
277: #else
278: #ifdef PETSC_HAVE_FORTRAN_CAPS
279: #define matlufactor_ MATLUFACTOR
280: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
281: #define matlufactor_ matlufactor
282: #endif
283: #endif
285: #ifdef MPI_BUILD_PROFILING
286: #ifdef PETSC_HAVE_FORTRAN_CAPS
287: #define matilufactor_ PMATILUFACTOR
288: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
289: #define matilufactor_ pmatilufactor
290: #else
291: #define matilufactor_ pmatilufactor_
292: #endif
293: #else
294: #ifdef PETSC_HAVE_FORTRAN_CAPS
295: #define matilufactor_ MATILUFACTOR
296: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
297: #define matilufactor_ matilufactor
298: #endif
299: #endif
301: #ifdef MPI_BUILD_PROFILING
302: #ifdef PETSC_HAVE_FORTRAN_CAPS
303: #define matlufactorsymbolic_ PMATLUFACTORSYMBOLIC
304: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
305: #define matlufactorsymbolic_ pmatlufactorsymbolic
306: #else
307: #define matlufactorsymbolic_ pmatlufactorsymbolic_
308: #endif
309: #else
310: #ifdef PETSC_HAVE_FORTRAN_CAPS
311: #define matlufactorsymbolic_ MATLUFACTORSYMBOLIC
312: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
313: #define matlufactorsymbolic_ matlufactorsymbolic
314: #endif
315: #endif
317: #ifdef MPI_BUILD_PROFILING
318: #ifdef PETSC_HAVE_FORTRAN_CAPS
319: #define matlufactornumeric_ PMATLUFACTORNUMERIC
320: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
321: #define matlufactornumeric_ pmatlufactornumeric
322: #else
323: #define matlufactornumeric_ pmatlufactornumeric_
324: #endif
325: #else
326: #ifdef PETSC_HAVE_FORTRAN_CAPS
327: #define matlufactornumeric_ MATLUFACTORNUMERIC
328: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
329: #define matlufactornumeric_ matlufactornumeric
330: #endif
331: #endif
333: #ifdef MPI_BUILD_PROFILING
334: #ifdef PETSC_HAVE_FORTRAN_CAPS
335: #define matcholeskyfactor_ PMATCHOLESKYFACTOR
336: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
337: #define matcholeskyfactor_ pmatcholeskyfactor
338: #else
339: #define matcholeskyfactor_ pmatcholeskyfactor_
340: #endif
341: #else
342: #ifdef PETSC_HAVE_FORTRAN_CAPS
343: #define matcholeskyfactor_ MATCHOLESKYFACTOR
344: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
345: #define matcholeskyfactor_ matcholeskyfactor
346: #endif
347: #endif
349: #ifdef MPI_BUILD_PROFILING
350: #ifdef PETSC_HAVE_FORTRAN_CAPS
351: #define matcholeskyfactorsymbolic_ PMATCHOLESKYFACTORSYMBOLIC
352: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
353: #define matcholeskyfactorsymbolic_ pmatcholeskyfactorsymbolic
354: #else
355: #define matcholeskyfactorsymbolic_ pmatcholeskyfactorsymbolic_
356: #endif
357: #else
358: #ifdef PETSC_HAVE_FORTRAN_CAPS
359: #define matcholeskyfactorsymbolic_ MATCHOLESKYFACTORSYMBOLIC
360: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
361: #define matcholeskyfactorsymbolic_ matcholeskyfactorsymbolic
362: #endif
363: #endif
365: #ifdef MPI_BUILD_PROFILING
366: #ifdef PETSC_HAVE_FORTRAN_CAPS
367: #define matcholeskyfactornumeric_ PMATCHOLESKYFACTORNUMERIC
368: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
369: #define matcholeskyfactornumeric_ pmatcholeskyfactornumeric
370: #else
371: #define matcholeskyfactornumeric_ pmatcholeskyfactornumeric_
372: #endif
373: #else
374: #ifdef PETSC_HAVE_FORTRAN_CAPS
375: #define matcholeskyfactornumeric_ MATCHOLESKYFACTORNUMERIC
376: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
377: #define matcholeskyfactornumeric_ matcholeskyfactornumeric
378: #endif
379: #endif
381: #ifdef MPI_BUILD_PROFILING
382: #ifdef PETSC_HAVE_FORTRAN_CAPS
383: #define matsolve_ PMATSOLVE
384: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
385: #define matsolve_ pmatsolve
386: #else
387: #define matsolve_ pmatsolve_
388: #endif
389: #else
390: #ifdef PETSC_HAVE_FORTRAN_CAPS
391: #define matsolve_ MATSOLVE
392: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
393: #define matsolve_ matsolve
394: #endif
395: #endif
397: #ifdef MPI_BUILD_PROFILING
398: #ifdef PETSC_HAVE_FORTRAN_CAPS
399: #define matsolveadd_ PMATSOLVEADD
400: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
401: #define matsolveadd_ pmatsolveadd
402: #else
403: #define matsolveadd_ pmatsolveadd_
404: #endif
405: #else
406: #ifdef PETSC_HAVE_FORTRAN_CAPS
407: #define matsolveadd_ MATSOLVEADD
408: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
409: #define matsolveadd_ matsolveadd
410: #endif
411: #endif
413: #ifdef MPI_BUILD_PROFILING
414: #ifdef PETSC_HAVE_FORTRAN_CAPS
415: #define matsolvetranspose_ PMATSOLVETRANSPOSE
416: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
417: #define matsolvetranspose_ pmatsolvetranspose
418: #else
419: #define matsolvetranspose_ pmatsolvetranspose_
420: #endif
421: #else
422: #ifdef PETSC_HAVE_FORTRAN_CAPS
423: #define matsolvetranspose_ MATSOLVETRANSPOSE
424: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
425: #define matsolvetranspose_ matsolvetranspose
426: #endif
427: #endif
429: #ifdef MPI_BUILD_PROFILING
430: #ifdef PETSC_HAVE_FORTRAN_CAPS
431: #define matsolvetransposeadd_ PMATSOLVETRANSPOSEADD
432: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
433: #define matsolvetransposeadd_ pmatsolvetransposeadd
434: #else
435: #define matsolvetransposeadd_ pmatsolvetransposeadd_
436: #endif
437: #else
438: #ifdef PETSC_HAVE_FORTRAN_CAPS
439: #define matsolvetransposeadd_ MATSOLVETRANSPOSEADD
440: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
441: #define matsolvetransposeadd_ matsolvetransposeadd
442: #endif
443: #endif
445: #ifdef MPI_BUILD_PROFILING
446: #ifdef PETSC_HAVE_FORTRAN_CAPS
447: #define matrelax_ PMATRELAX
448: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
449: #define matrelax_ pmatrelax
450: #else
451: #define matrelax_ pmatrelax_
452: #endif
453: #else
454: #ifdef PETSC_HAVE_FORTRAN_CAPS
455: #define matrelax_ MATRELAX
456: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
457: #define matrelax_ matrelax
458: #endif
459: #endif
461: #ifdef MPI_BUILD_PROFILING
462: #ifdef PETSC_HAVE_FORTRAN_CAPS
463: #define matgetdiagonal_ PMATGETDIAGONAL
464: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
465: #define matgetdiagonal_ pmatgetdiagonal
466: #else
467: #define matgetdiagonal_ pmatgetdiagonal_
468: #endif
469: #else
470: #ifdef PETSC_HAVE_FORTRAN_CAPS
471: #define matgetdiagonal_ MATGETDIAGONAL
472: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
473: #define matgetdiagonal_ matgetdiagonal
474: #endif
475: #endif
477: #ifdef MPI_BUILD_PROFILING
478: #ifdef PETSC_HAVE_FORTRAN_CAPS
479: #define matgetrowmax_ PMATGETROWMAX
480: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
481: #define matgetrowmax_ pmatgetrowmax
482: #else
483: #define matgetrowmax_ pmatgetrowmax_
484: #endif
485: #else
486: #ifdef PETSC_HAVE_FORTRAN_CAPS
487: #define matgetrowmax_ MATGETROWMAX
488: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
489: #define matgetrowmax_ matgetrowmax
490: #endif
491: #endif
493: #ifdef MPI_BUILD_PROFILING
494: #ifdef PETSC_HAVE_FORTRAN_CAPS
495: #define matequal_ PMATEQUAL
496: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
497: #define matequal_ pmatequal
498: #else
499: #define matequal_ pmatequal_
500: #endif
501: #else
502: #ifdef PETSC_HAVE_FORTRAN_CAPS
503: #define matequal_ MATEQUAL
504: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
505: #define matequal_ matequal
506: #endif
507: #endif
509: #ifdef MPI_BUILD_PROFILING
510: #ifdef PETSC_HAVE_FORTRAN_CAPS
511: #define matdiagonalscale_ PMATDIAGONALSCALE
512: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
513: #define matdiagonalscale_ pmatdiagonalscale
514: #else
515: #define matdiagonalscale_ pmatdiagonalscale_
516: #endif
517: #else
518: #ifdef PETSC_HAVE_FORTRAN_CAPS
519: #define matdiagonalscale_ MATDIAGONALSCALE
520: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
521: #define matdiagonalscale_ matdiagonalscale
522: #endif
523: #endif
525: #ifdef MPI_BUILD_PROFILING
526: #ifdef PETSC_HAVE_FORTRAN_CAPS
527: #define matscale_ PMATSCALE
528: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
529: #define matscale_ pmatscale
530: #else
531: #define matscale_ pmatscale_
532: #endif
533: #else
534: #ifdef PETSC_HAVE_FORTRAN_CAPS
535: #define matscale_ MATSCALE
536: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
537: #define matscale_ matscale
538: #endif
539: #endif
541: #ifdef MPI_BUILD_PROFILING
542: #ifdef PETSC_HAVE_FORTRAN_CAPS
543: #define matnorm_ PMATNORM
544: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
545: #define matnorm_ pmatnorm
546: #else
547: #define matnorm_ pmatnorm_
548: #endif
549: #else
550: #ifdef PETSC_HAVE_FORTRAN_CAPS
551: #define matnorm_ MATNORM
552: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
553: #define matnorm_ matnorm
554: #endif
555: #endif
557: #ifdef MPI_BUILD_PROFILING
558: #ifdef PETSC_HAVE_FORTRAN_CAPS
559: #define matassemblybegin_ PMATASSEMBLYBEGIN
560: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
561: #define matassemblybegin_ pmatassemblybegin
562: #else
563: #define matassemblybegin_ pmatassemblybegin_
564: #endif
565: #else
566: #ifdef PETSC_HAVE_FORTRAN_CAPS
567: #define matassemblybegin_ MATASSEMBLYBEGIN
568: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
569: #define matassemblybegin_ matassemblybegin
570: #endif
571: #endif
573: #ifdef MPI_BUILD_PROFILING
574: #ifdef PETSC_HAVE_FORTRAN_CAPS
575: #define matassembled_ PMATASSEMBLED
576: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
577: #define matassembled_ pmatassembled
578: #else
579: #define matassembled_ pmatassembled_
580: #endif
581: #else
582: #ifdef PETSC_HAVE_FORTRAN_CAPS
583: #define matassembled_ MATASSEMBLED
584: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
585: #define matassembled_ matassembled
586: #endif
587: #endif
589: #ifdef MPI_BUILD_PROFILING
590: #ifdef PETSC_HAVE_FORTRAN_CAPS
591: #define matassemblyend_ PMATASSEMBLYEND
592: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
593: #define matassemblyend_ pmatassemblyend
594: #else
595: #define matassemblyend_ pmatassemblyend_
596: #endif
597: #else
598: #ifdef PETSC_HAVE_FORTRAN_CAPS
599: #define matassemblyend_ MATASSEMBLYEND
600: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
601: #define matassemblyend_ matassemblyend
602: #endif
603: #endif
605: #ifdef MPI_BUILD_PROFILING
606: #ifdef PETSC_HAVE_FORTRAN_CAPS
607: #define matcompress_ PMATCOMPRESS
608: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
609: #define matcompress_ pmatcompress
610: #else
611: #define matcompress_ pmatcompress_
612: #endif
613: #else
614: #ifdef PETSC_HAVE_FORTRAN_CAPS
615: #define matcompress_ MATCOMPRESS
616: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
617: #define matcompress_ matcompress
618: #endif
619: #endif
621: #ifdef MPI_BUILD_PROFILING
622: #ifdef PETSC_HAVE_FORTRAN_CAPS
623: #define matsetoption_ PMATSETOPTION
624: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
625: #define matsetoption_ pmatsetoption
626: #else
627: #define matsetoption_ pmatsetoption_
628: #endif
629: #else
630: #ifdef PETSC_HAVE_FORTRAN_CAPS
631: #define matsetoption_ MATSETOPTION
632: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
633: #define matsetoption_ matsetoption
634: #endif
635: #endif
637: #ifdef MPI_BUILD_PROFILING
638: #ifdef PETSC_HAVE_FORTRAN_CAPS
639: #define matzeroentries_ PMATZEROENTRIES
640: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
641: #define matzeroentries_ pmatzeroentries
642: #else
643: #define matzeroentries_ pmatzeroentries_
644: #endif
645: #else
646: #ifdef PETSC_HAVE_FORTRAN_CAPS
647: #define matzeroentries_ MATZEROENTRIES
648: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
649: #define matzeroentries_ matzeroentries
650: #endif
651: #endif
653: #ifdef MPI_BUILD_PROFILING
654: #ifdef PETSC_HAVE_FORTRAN_CAPS
655: #define matgetsize_ PMATGETSIZE
656: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
657: #define matgetsize_ pmatgetsize
658: #else
659: #define matgetsize_ pmatgetsize_
660: #endif
661: #else
662: #ifdef PETSC_HAVE_FORTRAN_CAPS
663: #define matgetsize_ MATGETSIZE
664: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
665: #define matgetsize_ matgetsize
666: #endif
667: #endif
669: #ifdef MPI_BUILD_PROFILING
670: #ifdef PETSC_HAVE_FORTRAN_CAPS
671: #define matgetlocalsize_ PMATGETLOCALSIZE
672: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
673: #define matgetlocalsize_ pmatgetlocalsize
674: #else
675: #define matgetlocalsize_ pmatgetlocalsize_
676: #endif
677: #else
678: #ifdef PETSC_HAVE_FORTRAN_CAPS
679: #define matgetlocalsize_ MATGETLOCALSIZE
680: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
681: #define matgetlocalsize_ matgetlocalsize
682: #endif
683: #endif
685: #ifdef MPI_BUILD_PROFILING
686: #ifdef PETSC_HAVE_FORTRAN_CAPS
687: #define matgetownershiprange_ PMATGETOWNERSHIPRANGE
688: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
689: #define matgetownershiprange_ pmatgetownershiprange
690: #else
691: #define matgetownershiprange_ pmatgetownershiprange_
692: #endif
693: #else
694: #ifdef PETSC_HAVE_FORTRAN_CAPS
695: #define matgetownershiprange_ MATGETOWNERSHIPRANGE
696: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
697: #define matgetownershiprange_ matgetownershiprange
698: #endif
699: #endif
701: #ifdef MPI_BUILD_PROFILING
702: #ifdef PETSC_HAVE_FORTRAN_CAPS
703: #define matilufactorsymbolic_ PMATILUFACTORSYMBOLIC
704: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
705: #define matilufactorsymbolic_ pmatilufactorsymbolic
706: #else
707: #define matilufactorsymbolic_ pmatilufactorsymbolic_
708: #endif
709: #else
710: #ifdef PETSC_HAVE_FORTRAN_CAPS
711: #define matilufactorsymbolic_ MATILUFACTORSYMBOLIC
712: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
713: #define matilufactorsymbolic_ matilufactorsymbolic
714: #endif
715: #endif
717: #ifdef MPI_BUILD_PROFILING
718: #ifdef PETSC_HAVE_FORTRAN_CAPS
719: #define maticcfactorsymbolic_ PMATICCFACTORSYMBOLIC
720: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
721: #define maticcfactorsymbolic_ pmaticcfactorsymbolic
722: #else
723: #define maticcfactorsymbolic_ pmaticcfactorsymbolic_
724: #endif
725: #else
726: #ifdef PETSC_HAVE_FORTRAN_CAPS
727: #define maticcfactorsymbolic_ MATICCFACTORSYMBOLIC
728: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
729: #define maticcfactorsymbolic_ maticcfactorsymbolic
730: #endif
731: #endif
733: #ifdef MPI_BUILD_PROFILING
734: #ifdef PETSC_HAVE_FORTRAN_CAPS
735: #define matincreaseoverlap_ PMATINCREASEOVERLAP
736: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
737: #define matincreaseoverlap_ pmatincreaseoverlap
738: #else
739: #define matincreaseoverlap_ pmatincreaseoverlap_
740: #endif
741: #else
742: #ifdef PETSC_HAVE_FORTRAN_CAPS
743: #define matincreaseoverlap_ MATINCREASEOVERLAP
744: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
745: #define matincreaseoverlap_ matincreaseoverlap
746: #endif
747: #endif
749: #ifdef MPI_BUILD_PROFILING
750: #ifdef PETSC_HAVE_FORTRAN_CAPS
751: #define matprinthelp_ PMATPRINTHELP
752: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
753: #define matprinthelp_ pmatprinthelp
754: #else
755: #define matprinthelp_ pmatprinthelp_
756: #endif
757: #else
758: #ifdef PETSC_HAVE_FORTRAN_CAPS
759: #define matprinthelp_ MATPRINTHELP
760: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
761: #define matprinthelp_ matprinthelp
762: #endif
763: #endif
765: #ifdef MPI_BUILD_PROFILING
766: #ifdef PETSC_HAVE_FORTRAN_CAPS
767: #define matgetblocksize_ PMATGETBLOCKSIZE
768: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
769: #define matgetblocksize_ pmatgetblocksize
770: #else
771: #define matgetblocksize_ pmatgetblocksize_
772: #endif
773: #else
774: #ifdef PETSC_HAVE_FORTRAN_CAPS
775: #define matgetblocksize_ MATGETBLOCKSIZE
776: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
777: #define matgetblocksize_ matgetblocksize
778: #endif
779: #endif
781: #ifdef MPI_BUILD_PROFILING
782: #ifdef PETSC_HAVE_FORTRAN_CAPS
783: #define matsetunfactored_ PMATSETUNFACTORED
784: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
785: #define matsetunfactored_ pmatsetunfactored
786: #else
787: #define matsetunfactored_ pmatsetunfactored_
788: #endif
789: #else
790: #ifdef PETSC_HAVE_FORTRAN_CAPS
791: #define matsetunfactored_ MATSETUNFACTORED
792: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
793: #define matsetunfactored_ matsetunfactored
794: #endif
795: #endif
797: #ifdef MPI_BUILD_PROFILING
798: #ifdef PETSC_HAVE_FORTRAN_CAPS
799: #define matgetsubmatrix_ PMATGETSUBMATRIX
800: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
801: #define matgetsubmatrix_ pmatgetsubmatrix
802: #else
803: #define matgetsubmatrix_ pmatgetsubmatrix_
804: #endif
805: #else
806: #ifdef PETSC_HAVE_FORTRAN_CAPS
807: #define matgetsubmatrix_ MATGETSUBMATRIX
808: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
809: #define matgetsubmatrix_ matgetsubmatrix
810: #endif
811: #endif
813: #ifdef MPI_BUILD_PROFILING
814: #ifdef PETSC_HAVE_FORTRAN_CAPS
815: #define matsetstashinitialsize_ PMATSETSTASHINITIALSIZE
816: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
817: #define matsetstashinitialsize_ pmatsetstashinitialsize
818: #else
819: #define matsetstashinitialsize_ pmatsetstashinitialsize_
820: #endif
821: #else
822: #ifdef PETSC_HAVE_FORTRAN_CAPS
823: #define matsetstashinitialsize_ MATSETSTASHINITIALSIZE
824: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
825: #define matsetstashinitialsize_ matsetstashinitialsize
826: #endif
827: #endif
829: #ifdef MPI_BUILD_PROFILING
830: #ifdef PETSC_HAVE_FORTRAN_CAPS
831: #define matinterpolateadd_ PMATINTERPOLATEADD
832: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
833: #define matinterpolateadd_ pmatinterpolateadd
834: #else
835: #define matinterpolateadd_ pmatinterpolateadd_
836: #endif
837: #else
838: #ifdef PETSC_HAVE_FORTRAN_CAPS
839: #define matinterpolateadd_ MATINTERPOLATEADD
840: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
841: #define matinterpolateadd_ matinterpolateadd
842: #endif
843: #endif
845: #ifdef MPI_BUILD_PROFILING
846: #ifdef PETSC_HAVE_FORTRAN_CAPS
847: #define matinterpolate_ PMATINTERPOLATE
848: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
849: #define matinterpolate_ pmatinterpolate
850: #else
851: #define matinterpolate_ pmatinterpolate_
852: #endif
853: #else
854: #ifdef PETSC_HAVE_FORTRAN_CAPS
855: #define matinterpolate_ MATINTERPOLATE
856: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
857: #define matinterpolate_ matinterpolate
858: #endif
859: #endif
861: #ifdef MPI_BUILD_PROFILING
862: #ifdef PETSC_HAVE_FORTRAN_CAPS
863: #define matrestrict_ PMATRESTRICT
864: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
865: #define matrestrict_ pmatrestrict
866: #else
867: #define matrestrict_ pmatrestrict_
868: #endif
869: #else
870: #ifdef PETSC_HAVE_FORTRAN_CAPS
871: #define matrestrict_ MATRESTRICT
872: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
873: #define matrestrict_ matrestrict
874: #endif
875: #endif
877: #ifdef MPI_BUILD_PROFILING
878: #ifdef PETSC_HAVE_FORTRAN_CAPS
879: #define maticcfactor_ PMATICCFACTOR
880: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
881: #define maticcfactor_ pmaticcfactor
882: #else
883: #define maticcfactor_ pmaticcfactor_
884: #endif
885: #else
886: #ifdef PETSC_HAVE_FORTRAN_CAPS
887: #define maticcfactor_ MATICCFACTOR
888: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
889: #define maticcfactor_ maticcfactor
890: #endif
891: #endif
893: #ifdef MPI_BUILD_PROFILING
894: #ifdef PETSC_HAVE_FORTRAN_CAPS
895: #define matsetvaluesadic_ PMATSETVALUESADIC
896: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
897: #define matsetvaluesadic_ pmatsetvaluesadic
898: #else
899: #define matsetvaluesadic_ pmatsetvaluesadic_
900: #endif
901: #else
902: #ifdef PETSC_HAVE_FORTRAN_CAPS
903: #define matsetvaluesadic_ MATSETVALUESADIC
904: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
905: #define matsetvaluesadic_ matsetvaluesadic
906: #endif
907: #endif
909: #ifdef MPI_BUILD_PROFILING
910: #ifdef PETSC_HAVE_FORTRAN_CAPS
911: #define matsetcoloring_ PMATSETCOLORING
912: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
913: #define matsetcoloring_ pmatsetcoloring
914: #else
915: #define matsetcoloring_ pmatsetcoloring_
916: #endif
917: #else
918: #ifdef PETSC_HAVE_FORTRAN_CAPS
919: #define matsetcoloring_ MATSETCOLORING
920: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
921: #define matsetcoloring_ matsetcoloring
922: #endif
923: #endif
925: #ifdef MPI_BUILD_PROFILING
926: #ifdef PETSC_HAVE_FORTRAN_CAPS
927: #define matsetvaluesadifor_ PMATSETVALUESADIFOR
928: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
929: #define matsetvaluesadifor_ pmatsetvaluesadifor
930: #else
931: #define matsetvaluesadifor_ pmatsetvaluesadifor_
932: #endif
933: #else
934: #ifdef PETSC_HAVE_FORTRAN_CAPS
935: #define matsetvaluesadifor_ MATSETVALUESADIFOR
936: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
937: #define matsetvaluesadifor_ matsetvaluesadifor
938: #endif
939: #endif
941: #ifdef MPI_BUILD_PROFILING
942: #ifdef PETSC_HAVE_FORTRAN_CAPS
943: #define matdiagonalscalelocal_ PMATDIAGONALSCALELOCAL
944: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
945: #define matdiagonalscalelocal_ pmatdiagonalscalelocal
946: #else
947: #define matdiagonalscalelocal_ pmatdiagonalscalelocal_
948: #endif
949: #else
950: #ifdef PETSC_HAVE_FORTRAN_CAPS
951: #define matdiagonalscalelocal_ MATDIAGONALSCALELOCAL
952: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
953: #define matdiagonalscalelocal_ matdiagonalscalelocal
954: #endif
955: #endif
959: /* Definitions of Fortran Wrapper routines */
960: #if defined(__cplusplus)
961: extern "C" {
962: #endif
963: void PETSC_STDCALL matvalid_(Mat m,PetscTruth *flg, int *ierr ){
964: *MatValid(
965: (Mat)PetscToPointer( (m) ),flg);
966: }
967: void PETSC_STDCALL matsetvalues_(Mat mat,int *m,int *idxm,int *n,int *idxn,PetscScalar *v,InsertMode *addv, int *ierr ){
968: *MatSetValues(
969: (Mat)PetscToPointer( (mat) ),*m,idxm,*n,idxn,v,*addv);
970: }
971: void PETSC_STDCALL matsetstencil_(Mat mat,int *dim,int *dims,int *starts,int *dof, int *ierr ){
972: *MatSetStencil(
973: (Mat)PetscToPointer( (mat) ),*dim,dims,starts,*dof);
974: }
975: void PETSC_STDCALL matsetvaluesblocked_(Mat mat,int *m,int *idxm,int *n,int *idxn,PetscScalar *v,InsertMode *addv, int *ierr ){
976: *MatSetValuesBlocked(
977: (Mat)PetscToPointer( (mat) ),*m,idxm,*n,idxn,v,*addv);
978: }
979: void PETSC_STDCALL matgetvalues_(Mat mat,int *m,int *idxm,int *n,int *idxn,PetscScalar *v, int *ierr ){
980: *MatGetValues(
981: (Mat)PetscToPointer( (mat) ),*m,idxm,*n,idxn,v);
982: }
983: void PETSC_STDCALL matsetlocaltoglobalmapping_(Mat x,ISLocalToGlobalMapping *mapping, int *ierr ){
984: *MatSetLocalToGlobalMapping(
985: (Mat)PetscToPointer( (x) ),*mapping);
986: }
987: void PETSC_STDCALL matsetlocaltoglobalmappingblock_(Mat x,ISLocalToGlobalMapping *mapping, int *ierr ){
988: *MatSetLocalToGlobalMappingBlock(
989: (Mat)PetscToPointer( (x) ),*mapping);
990: }
991: void PETSC_STDCALL matsetvalueslocal_(Mat mat,int *nrow,int *irow,int *ncol,int *icol,PetscScalar *y,InsertMode *addv, int *ierr ){
992: *MatSetValuesLocal(
993: (Mat)PetscToPointer( (mat) ),*nrow,irow,*ncol,icol,y,*addv);
994: }
995: void PETSC_STDCALL matsetvaluesblockedlocal_(Mat mat,int *nrow,int *irow,int *ncol,int *icol,PetscScalar *y,InsertMode *addv, int *ierr ){
996: *MatSetValuesBlockedLocal(
997: (Mat)PetscToPointer( (mat) ),*nrow,irow,*ncol,icol,y,*addv);
998: }
999: void PETSC_STDCALL matmult_(Mat mat,Vec x,Vec y, int *ierr ){
1000: *MatMult(
1001: (Mat)PetscToPointer( (mat) ),
1002: (Vec)PetscToPointer( (x) ),
1003: (Vec)PetscToPointer( (y) ));
1004: }
1005: void PETSC_STDCALL matmulttranspose_(Mat mat,Vec x,Vec y, int *ierr ){
1006: *MatMultTranspose(
1007: (Mat)PetscToPointer( (mat) ),
1008: (Vec)PetscToPointer( (x) ),
1009: (Vec)PetscToPointer( (y) ));
1010: }
1011: void PETSC_STDCALL matmultadd_(Mat mat,Vec v1,Vec v2,Vec v3, int *ierr ){
1012: *MatMultAdd(
1013: (Mat)PetscToPointer( (mat) ),
1014: (Vec)PetscToPointer( (v1) ),
1015: (Vec)PetscToPointer( (v2) ),
1016: (Vec)PetscToPointer( (v3) ));
1017: }
1018: void PETSC_STDCALL matmulttransposeadd_(Mat mat,Vec v1,Vec v2,Vec v3, int *ierr ){
1019: *MatMultTransposeAdd(
1020: (Mat)PetscToPointer( (mat) ),
1021: (Vec)PetscToPointer( (v1) ),
1022: (Vec)PetscToPointer( (v2) ),
1023: (Vec)PetscToPointer( (v3) ));
1024: }
1025: void PETSC_STDCALL matmultconstrained_(Mat mat,Vec x,Vec y, int *ierr ){
1026: *MatMultConstrained(
1027: (Mat)PetscToPointer( (mat) ),
1028: (Vec)PetscToPointer( (x) ),
1029: (Vec)PetscToPointer( (y) ));
1030: }
1031: void PETSC_STDCALL matmulttransposeconstrained_(Mat mat,Vec x,Vec y, int *ierr ){
1032: *MatMultTransposeConstrained(
1033: (Mat)PetscToPointer( (mat) ),
1034: (Vec)PetscToPointer( (x) ),
1035: (Vec)PetscToPointer( (y) ));
1036: }
1037: void PETSC_STDCALL matlufactor_(Mat mat,IS row,IS col,MatLUInfo *info, int *ierr ){
1038: *MatLUFactor(
1039: (Mat)PetscToPointer( (mat) ),
1040: (IS)PetscToPointer( (row) ),
1041: (IS)PetscToPointer( (col) ),
1042: (MatLUInfo* )PetscToPointer( (info) ));
1043: }
1044: void PETSC_STDCALL matilufactor_(Mat mat,IS row,IS col,MatILUInfo *info, int *ierr ){
1045: *MatILUFactor(
1046: (Mat)PetscToPointer( (mat) ),
1047: (IS)PetscToPointer( (row) ),
1048: (IS)PetscToPointer( (col) ),
1049: (MatILUInfo* )PetscToPointer( (info) ));
1050: }
1051: void PETSC_STDCALL matlufactorsymbolic_(Mat mat,IS row,IS col,MatLUInfo *info,Mat *fact, int *ierr ){
1052: *MatLUFactorSymbolic(
1053: (Mat)PetscToPointer( (mat) ),
1054: (IS)PetscToPointer( (row) ),
1055: (IS)PetscToPointer( (col) ),
1056: (MatLUInfo* )PetscToPointer( (info) ),fact);
1057: }
1058: void PETSC_STDCALL matlufactornumeric_(Mat mat,Mat *fact, int *ierr ){
1059: *MatLUFactorNumeric(
1060: (Mat)PetscToPointer( (mat) ),fact);
1061: }
1062: void PETSC_STDCALL matcholeskyfactor_(Mat mat,IS perm,PetscReal *f, int *ierr ){
1063: *MatCholeskyFactor(
1064: (Mat)PetscToPointer( (mat) ),
1065: (IS)PetscToPointer( (perm) ),*f);
1066: }
1067: void PETSC_STDCALL matcholeskyfactorsymbolic_(Mat mat,IS perm,PetscReal *f,Mat *fact, int *ierr ){
1068: *MatCholeskyFactorSymbolic(
1069: (Mat)PetscToPointer( (mat) ),
1070: (IS)PetscToPointer( (perm) ),*f,fact);
1071: }
1072: void PETSC_STDCALL matcholeskyfactornumeric_(Mat mat,Mat *fact, int *ierr ){
1073: *MatCholeskyFactorNumeric(
1074: (Mat)PetscToPointer( (mat) ),fact);
1075: }
1076: void PETSC_STDCALL matsolve_(Mat mat,Vec b,Vec x, int *ierr ){
1077: *MatSolve(
1078: (Mat)PetscToPointer( (mat) ),
1079: (Vec)PetscToPointer( (b) ),
1080: (Vec)PetscToPointer( (x) ));
1081: }
1082: void PETSC_STDCALL matsolveadd_(Mat mat,Vec b,Vec y,Vec x, int *ierr ){
1083: *MatSolveAdd(
1084: (Mat)PetscToPointer( (mat) ),
1085: (Vec)PetscToPointer( (b) ),
1086: (Vec)PetscToPointer( (y) ),
1087: (Vec)PetscToPointer( (x) ));
1088: }
1089: void PETSC_STDCALL matsolvetranspose_(Mat mat,Vec b,Vec x, int *ierr ){
1090: *MatSolveTranspose(
1091: (Mat)PetscToPointer( (mat) ),
1092: (Vec)PetscToPointer( (b) ),
1093: (Vec)PetscToPointer( (x) ));
1094: }
1095: void PETSC_STDCALL matsolvetransposeadd_(Mat mat,Vec b,Vec y,Vec x, int *ierr ){
1096: *MatSolveTransposeAdd(
1097: (Mat)PetscToPointer( (mat) ),
1098: (Vec)PetscToPointer( (b) ),
1099: (Vec)PetscToPointer( (y) ),
1100: (Vec)PetscToPointer( (x) ));
1101: }
1102: void PETSC_STDCALL matrelax_(Mat mat,Vec b,PetscReal *omega,MatSORType *flag,PetscReal *shift,int *its,int *lits,Vec x, int *ierr ){
1103: *MatRelax(
1104: (Mat)PetscToPointer( (mat) ),
1105: (Vec)PetscToPointer( (b) ),*omega,*flag,*shift,*its,*lits,
1106: (Vec)PetscToPointer( (x) ));
1107: }
1108: void PETSC_STDCALL matgetdiagonal_(Mat mat,Vec v, int *ierr ){
1109: *MatGetDiagonal(
1110: (Mat)PetscToPointer( (mat) ),
1111: (Vec)PetscToPointer( (v) ));
1112: }
1113: void PETSC_STDCALL matgetrowmax_(Mat mat,Vec v, int *ierr ){
1114: *MatGetRowMax(
1115: (Mat)PetscToPointer( (mat) ),
1116: (Vec)PetscToPointer( (v) ));
1117: }
1118: void PETSC_STDCALL matequal_(Mat A,Mat B,PetscTruth *flg, int *ierr ){
1119: *MatEqual(
1120: (Mat)PetscToPointer( (A) ),
1121: (Mat)PetscToPointer( (B) ),flg);
1122: }
1123: void PETSC_STDCALL matdiagonalscale_(Mat mat,Vec l,Vec r, int *ierr ){
1124: *MatDiagonalScale(
1125: (Mat)PetscToPointer( (mat) ),
1126: (Vec)PetscToPointer( (l) ),
1127: (Vec)PetscToPointer( (r) ));
1128: }
1129: void PETSC_STDCALL matscale_(PetscScalar *a,Mat mat, int *ierr ){
1130: *MatScale(a,
1131: (Mat)PetscToPointer( (mat) ));
1132: }
1133: void PETSC_STDCALL matnorm_(Mat mat,NormType *type,PetscReal *nrm, int *ierr ){
1134: *MatNorm(
1135: (Mat)PetscToPointer( (mat) ),*type,nrm);
1136: }
1137: void PETSC_STDCALL matassemblybegin_(Mat mat,MatAssemblyType *type, int *ierr ){
1138: *MatAssemblyBegin(
1139: (Mat)PetscToPointer( (mat) ),*type);
1140: }
1141: void PETSC_STDCALL matassembled_(Mat mat,PetscTruth *assembled, int *ierr ){
1142: *MatAssembled(
1143: (Mat)PetscToPointer( (mat) ),assembled);
1144: }
1145: void PETSC_STDCALL matassemblyend_(Mat mat,MatAssemblyType *type, int *ierr ){
1146: *MatAssemblyEnd(
1147: (Mat)PetscToPointer( (mat) ),*type);
1148: }
1149: void PETSC_STDCALL matcompress_(Mat mat, int *ierr ){
1150: *MatCompress(
1151: (Mat)PetscToPointer( (mat) ));
1152: }
1153: void PETSC_STDCALL matsetoption_(Mat mat,MatOption *op, int *ierr ){
1154: *MatSetOption(
1155: (Mat)PetscToPointer( (mat) ),*op);
1156: }
1157: void PETSC_STDCALL matzeroentries_(Mat mat, int *ierr ){
1158: *MatZeroEntries(
1159: (Mat)PetscToPointer( (mat) ));
1160: }
1161: void PETSC_STDCALL matgetsize_(Mat mat,int *m,int* n, int *ierr ){
1162: *MatGetSize(
1163: (Mat)PetscToPointer( (mat) ),m,n);
1164: }
1165: void PETSC_STDCALL matgetlocalsize_(Mat mat,int *m,int* n, int *ierr ){
1166: *MatGetLocalSize(
1167: (Mat)PetscToPointer( (mat) ),m,n);
1168: }
1169: void PETSC_STDCALL matgetownershiprange_(Mat mat,int *m,int* n, int *ierr ){
1170: *MatGetOwnershipRange(
1171: (Mat)PetscToPointer( (mat) ),m,n);
1172: }
1173: void PETSC_STDCALL matilufactorsymbolic_(Mat mat,IS row,IS col,MatILUInfo *info,Mat *fact, int *ierr ){
1174: *MatILUFactorSymbolic(
1175: (Mat)PetscToPointer( (mat) ),
1176: (IS)PetscToPointer( (row) ),
1177: (IS)PetscToPointer( (col) ),
1178: (MatILUInfo* )PetscToPointer( (info) ),fact);
1179: }
1180: void PETSC_STDCALL maticcfactorsymbolic_(Mat mat,IS perm,PetscReal *f,int *fill,Mat *fact, int *ierr ){
1181: *MatICCFactorSymbolic(
1182: (Mat)PetscToPointer( (mat) ),
1183: (IS)PetscToPointer( (perm) ),*f,*fill,fact);
1184: }
1185: void PETSC_STDCALL matincreaseoverlap_(Mat mat,int *n,IS *is,int *ov, int *ierr ){
1186: *MatIncreaseOverlap(
1187: (Mat)PetscToPointer( (mat) ),*n,is,*ov);
1188: }
1189: void PETSC_STDCALL matprinthelp_(Mat mat, int *ierr ){
1190: *MatPrintHelp(
1191: (Mat)PetscToPointer( (mat) ));
1192: }
1193: void PETSC_STDCALL matgetblocksize_(Mat mat,int *bs, int *ierr ){
1194: *MatGetBlockSize(
1195: (Mat)PetscToPointer( (mat) ),bs);
1196: }
1197: void PETSC_STDCALL matsetunfactored_(Mat mat, int *ierr ){
1198: *MatSetUnfactored(
1199: (Mat)PetscToPointer( (mat) ));
1200: }
1201: void PETSC_STDCALL matgetsubmatrix_(Mat mat,IS isrow,IS iscol,int *csize,MatReuse *cll,Mat *newmat, int *ierr ){
1202: *MatGetSubMatrix(
1203: (Mat)PetscToPointer( (mat) ),
1204: (IS)PetscToPointer( (isrow) ),
1205: (IS)PetscToPointer( (iscol) ),*csize,*cll,newmat);
1206: }
1207: void PETSC_STDCALL matsetstashinitialsize_(Mat mat,int *size,int *bsize, int *ierr ){
1208: *MatSetStashInitialSize(
1209: (Mat)PetscToPointer( (mat) ),*size,*bsize);
1210: }
1211: void PETSC_STDCALL matinterpolateadd_(Mat A,Vec x,Vec y,Vec w, int *ierr ){
1212: *MatInterpolateAdd(
1213: (Mat)PetscToPointer( (A) ),
1214: (Vec)PetscToPointer( (x) ),
1215: (Vec)PetscToPointer( (y) ),
1216: (Vec)PetscToPointer( (w) ));
1217: }
1218: void PETSC_STDCALL matinterpolate_(Mat A,Vec x,Vec y, int *ierr ){
1219: *MatInterpolate(
1220: (Mat)PetscToPointer( (A) ),
1221: (Vec)PetscToPointer( (x) ),
1222: (Vec)PetscToPointer( (y) ));
1223: }
1224: void PETSC_STDCALL matrestrict_(Mat A,Vec x,Vec y, int *ierr ){
1225: *MatRestrict(
1226: (Mat)PetscToPointer( (A) ),
1227: (Vec)PetscToPointer( (x) ),
1228: (Vec)PetscToPointer( (y) ));
1229: }
1230: void PETSC_STDCALL maticcfactor_(Mat mat,IS row,PetscReal *fill,int *level, int *ierr ){
1231: *MatICCFactor(
1232: (Mat)PetscToPointer( (mat) ),
1233: (IS)PetscToPointer( (row) ),*fill,*level);
1234: }
1235: void PETSC_STDCALL matsetvaluesadic_(Mat mat,void*v, int *ierr ){
1236: *MatSetValuesAdic(
1237: (Mat)PetscToPointer( (mat) ),v);
1238: }
1239: void PETSC_STDCALL matsetcoloring_(Mat mat,ISColoring *coloring, int *ierr ){
1240: *MatSetColoring(
1241: (Mat)PetscToPointer( (mat) ),*coloring);
1242: }
1243: void PETSC_STDCALL matsetvaluesadifor_(Mat mat,int *nl,void*v, int *ierr ){
1244: *MatSetValuesAdifor(
1245: (Mat)PetscToPointer( (mat) ),*nl,v);
1246: }
1247: void PETSC_STDCALL matdiagonalscalelocal_(Mat mat,Vec diag, int *ierr ){
1248: *MatDiagonalScaleLocal(
1249: (Mat)PetscToPointer( (mat) ),
1250: (Vec)PetscToPointer( (diag) ));
1251: }
1252: #if defined(__cplusplus)
1253: }
1254: #endif