Actual source code: axpyf.c

  1: /* axpy.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 mataxpy_ PMATAXPY
 32: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
 33: #define mataxpy_ pmataxpy
 34: #else
 35: #define mataxpy_ pmataxpy_
 36: #endif
 37: #else
 38: #ifdef PETSC_HAVE_FORTRAN_CAPS
 39: #define mataxpy_ MATAXPY
 40: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
 41: #define mataxpy_ mataxpy
 42: #endif
 43: #endif

 45: #ifdef MPI_BUILD_PROFILING
 46: #ifdef PETSC_HAVE_FORTRAN_CAPS
 47: #define matshift_ PMATSHIFT
 48: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
 49: #define matshift_ pmatshift
 50: #else
 51: #define matshift_ pmatshift_
 52: #endif
 53: #else
 54: #ifdef PETSC_HAVE_FORTRAN_CAPS
 55: #define matshift_ MATSHIFT
 56: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
 57: #define matshift_ matshift
 58: #endif
 59: #endif

 61: #ifdef MPI_BUILD_PROFILING
 62: #ifdef PETSC_HAVE_FORTRAN_CAPS
 63: #define matdiagonalset_ PMATDIAGONALSET
 64: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
 65: #define matdiagonalset_ pmatdiagonalset
 66: #else
 67: #define matdiagonalset_ pmatdiagonalset_
 68: #endif
 69: #else
 70: #ifdef PETSC_HAVE_FORTRAN_CAPS
 71: #define matdiagonalset_ MATDIAGONALSET
 72: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
 73: #define matdiagonalset_ matdiagonalset
 74: #endif
 75: #endif

 77: #ifdef MPI_BUILD_PROFILING
 78: #ifdef PETSC_HAVE_FORTRAN_CAPS
 79: #define mataypx_ PMATAYPX
 80: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
 81: #define mataypx_ pmataypx
 82: #else
 83: #define mataypx_ pmataypx_
 84: #endif
 85: #else
 86: #ifdef PETSC_HAVE_FORTRAN_CAPS
 87: #define mataypx_ MATAYPX
 88: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
 89: #define mataypx_ mataypx
 90: #endif
 91: #endif

 93: #ifdef MPI_BUILD_PROFILING
 94: #ifdef PETSC_HAVE_FORTRAN_CAPS
 95: #define matcomputeexplicitoperator_ PMATCOMPUTEEXPLICITOPERATOR
 96: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
 97: #define matcomputeexplicitoperator_ pmatcomputeexplicitoperator
 98: #else
 99: #define matcomputeexplicitoperator_ pmatcomputeexplicitoperator_
100: #endif
101: #else
102: #ifdef PETSC_HAVE_FORTRAN_CAPS
103: #define matcomputeexplicitoperator_ MATCOMPUTEEXPLICITOPERATOR
104: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
105: #define matcomputeexplicitoperator_ matcomputeexplicitoperator
106: #endif
107: #endif



111: /* Definitions of Fortran Wrapper routines */
112: #if defined(__cplusplus)
113: extern "C" {
114: #endif
115: void PETSC_STDCALL mataxpy_(PetscScalar *a,Mat X,Mat Y,MatStructure *str, int *ierr ){
116: *MatAXPY(a,
117:         (Mat)PetscToPointer( (X) ),
118:         (Mat)PetscToPointer( (Y) ),*str);
119: }
120: void PETSC_STDCALL matshift_(PetscScalar *a,Mat Y, int *ierr ){
121: *MatShift(a,
122:         (Mat)PetscToPointer( (Y) ));
123: }
124: void PETSC_STDCALL matdiagonalset_(Mat Y,Vec D,InsertMode *is, int *ierr ){
125: *MatDiagonalSet(
126:         (Mat)PetscToPointer( (Y) ),
127:         (Vec)PetscToPointer( (D) ),*is);
128: }
129: void PETSC_STDCALL mataypx_(PetscScalar *a,Mat X,Mat Y, int *ierr ){
130: *MatAYPX(a,
131:         (Mat)PetscToPointer( (X) ),
132:         (Mat)PetscToPointer( (Y) ));
133: }
134: void PETSC_STDCALL matcomputeexplicitoperator_(Mat inmat,Mat *mat, int *ierr ){
135: *MatComputeExplicitOperator(
136:         (Mat)PetscToPointer( (inmat) ),mat);
137: }
138: #if defined(__cplusplus)
139: }
140: #endif