Actual source code: slesf.c
1: /* sles.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 petscsles.h
28: #ifdef MPI_BUILD_PROFILING
29: #ifdef PETSC_HAVE_FORTRAN_CAPS
30: #define slessetfromoptions_ PSLESSETFROMOPTIONS
31: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
32: #define slessetfromoptions_ pslessetfromoptions
33: #else
34: #define slessetfromoptions_ pslessetfromoptions_
35: #endif
36: #else
37: #ifdef PETSC_HAVE_FORTRAN_CAPS
38: #define slessetfromoptions_ SLESSETFROMOPTIONS
39: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
40: #define slessetfromoptions_ slessetfromoptions
41: #endif
42: #endif
44: #ifdef MPI_BUILD_PROFILING
45: #ifdef PETSC_HAVE_FORTRAN_CAPS
46: #define slessetup_ PSLESSETUP
47: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
48: #define slessetup_ pslessetup
49: #else
50: #define slessetup_ pslessetup_
51: #endif
52: #else
53: #ifdef PETSC_HAVE_FORTRAN_CAPS
54: #define slessetup_ SLESSETUP
55: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
56: #define slessetup_ slessetup
57: #endif
58: #endif
60: #ifdef MPI_BUILD_PROFILING
61: #ifdef PETSC_HAVE_FORTRAN_CAPS
62: #define slessolve_ PSLESSOLVE
63: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
64: #define slessolve_ pslessolve
65: #else
66: #define slessolve_ pslessolve_
67: #endif
68: #else
69: #ifdef PETSC_HAVE_FORTRAN_CAPS
70: #define slessolve_ SLESSOLVE
71: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
72: #define slessolve_ slessolve
73: #endif
74: #endif
76: #ifdef MPI_BUILD_PROFILING
77: #ifdef PETSC_HAVE_FORTRAN_CAPS
78: #define slessolvetranspose_ PSLESSOLVETRANSPOSE
79: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
80: #define slessolvetranspose_ pslessolvetranspose
81: #else
82: #define slessolvetranspose_ pslessolvetranspose_
83: #endif
84: #else
85: #ifdef PETSC_HAVE_FORTRAN_CAPS
86: #define slessolvetranspose_ SLESSOLVETRANSPOSE
87: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
88: #define slessolvetranspose_ slessolvetranspose
89: #endif
90: #endif
92: #ifdef MPI_BUILD_PROFILING
93: #ifdef PETSC_HAVE_FORTRAN_CAPS
94: #define slessetoperators_ PSLESSETOPERATORS
95: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
96: #define slessetoperators_ pslessetoperators
97: #else
98: #define slessetoperators_ pslessetoperators_
99: #endif
100: #else
101: #ifdef PETSC_HAVE_FORTRAN_CAPS
102: #define slessetoperators_ SLESSETOPERATORS
103: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
104: #define slessetoperators_ slessetoperators
105: #endif
106: #endif
108: #ifdef MPI_BUILD_PROFILING
109: #ifdef PETSC_HAVE_FORTRAN_CAPS
110: #define slessetuponblocks_ PSLESSETUPONBLOCKS
111: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
112: #define slessetuponblocks_ pslessetuponblocks
113: #else
114: #define slessetuponblocks_ pslessetuponblocks_
115: #endif
116: #else
117: #ifdef PETSC_HAVE_FORTRAN_CAPS
118: #define slessetuponblocks_ SLESSETUPONBLOCKS
119: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) && !defined(FORTRANDOUBLEUNDERSCORE)
120: #define slessetuponblocks_ slessetuponblocks
121: #endif
122: #endif
126: /* Definitions of Fortran Wrapper routines */
127: #if defined(__cplusplus)
128: extern "C" {
129: #endif
130: void PETSC_STDCALL slessetfromoptions_(SLES sles, int *__ierr ){
131: *__SLESSetFromOptions(
132: (SLES)PetscToPointer( (sles) ));
133: }
134: void PETSC_STDCALL slessetup_(SLES sles,Vec b,Vec x, int *__ierr ){
135: *__SLESSetUp(
136: (SLES)PetscToPointer( (sles) ),
137: (Vec)PetscToPointer( (b) ),
138: (Vec)PetscToPointer( (x) ));
139: }
140: void PETSC_STDCALL slessolve_(SLES sles,Vec b,Vec x,int *its, int *__ierr ){
141: *__SLESSolve(
142: (SLES)PetscToPointer( (sles) ),
143: (Vec)PetscToPointer( (b) ),
144: (Vec)PetscToPointer( (x) ),its);
145: }
146: void PETSC_STDCALL slessolvetranspose_(SLES sles,Vec b,Vec x,int *its, int *__ierr ){
147: *__SLESSolveTranspose(
148: (SLES)PetscToPointer( (sles) ),
149: (Vec)PetscToPointer( (b) ),
150: (Vec)PetscToPointer( (x) ),its);
151: }
152: void PETSC_STDCALL slessetoperators_(SLES sles,Mat Amat,Mat Pmat,MatStructure *flag, int *__ierr ){
153: *__SLESSetOperators(
154: (SLES)PetscToPointer( (sles) ),
155: (Mat)PetscToPointer( (Amat) ),
156: (Mat)PetscToPointer( (Pmat) ),*flag);
157: }
158: void PETSC_STDCALL slessetuponblocks_(SLES sles, int *__ierr ){
159: *__SLESSetUpOnBlocks(
160: (SLES)PetscToPointer( (sles) ));
161: }
162: #if defined(__cplusplus)
163: }
164: #endif