Actual source code: petscmat.h

  1: !
  2: !  Used by petscmatmod.F90 to create Fortran module file
  3: !
  4: #include "petsc/finclude/petscmat.h"

  6:       type tMat
  7:         sequence
  8:         PetscFortranAddr:: v PETSC_FORTRAN_TYPE_INITIALIZE
  9:       end type tMat
 10:       type tMatNullSpace
 11:         sequence
 12:         PetscFortranAddr:: v PETSC_FORTRAN_TYPE_INITIALIZE
 13:       end type tMatNullSpace
 14:       type tMatFDColoring
 15:         sequence
 16:         PetscFortranAddr:: v PETSC_FORTRAN_TYPE_INITIALIZE
 17:       end type tMatFDColoring

 19:       Mat, parameter :: PETSC_NULL_MAT = tMat(0)
 20:       MatFDColoring, parameter :: PETSC_NULL_MATFDCOLORING = tMatFDColoring(0)
 21:       MatNullSpace, parameter :: PETSC_NULL_MATNULLSPACE = tMatNullSpace(0)
 22: !
 23: !  Flag for matrix assembly
 24: !
 25:       PetscEnum, parameter :: MAT_FLUSH_ASSEMBLY=1
 26:       PetscEnum, parameter :: MAT_FINAL_ASSEMBLY=0
 27: !
 28: !
 29: !
 30:       PetscEnum, parameter :: MAT_FACTOR_NONE=0
 31:       PetscEnum, parameter :: MAT_FACTOR_LU=1
 32:       PetscEnum, parameter :: MAT_FACTOR_CHOLESKY=2
 33:       PetscEnum, parameter :: MAT_FACTOR_ILU=3
 34:       PetscEnum, parameter :: MAT_FACTOR_ICC=4
 35:       PetscEnum, parameter :: MAT_FACTOR_ILUDT=5
 36:       PetscEnum, parameter :: MAT_FACTOR_QR=6
 37: !
 38: ! MatCreateSubMatrixOption
 39: !
 40:       PetscEnum, parameter :: MAT_DO_NOT_GET_VALUES=0
 41:       PetscEnum, parameter :: MAT_GET_VALUES=1
 42: !
 43: !  MatOption; must match those in include/petscmat.h
 44: !
 45:       PetscEnum, parameter :: MAT_OPTION_MIN = -3
 46:       PetscEnum, parameter :: MAT_UNUSED_NONZERO_LOCATION_ERR = -2
 47:       PetscEnum, parameter :: MAT_ROW_ORIENTED = -1
 48:       PetscEnum, parameter :: MAT_SYMMETRIC = 1
 49:       PetscEnum, parameter :: MAT_STRUCTURALLY_SYMMETRIC = 2
 50:       PetscEnum, parameter :: MAT_FORCE_DIAGONAL_ENTRIES = 3
 51:       PetscEnum, parameter :: MAT_IGNORE_OFF_PROC_ENTRIES = 4
 52:       PetscEnum, parameter :: MAT_USE_HASH_TABLE = 5
 53:       PetscEnum, parameter :: MAT_KEEP_NONZERO_PATTERN = 6
 54:       PetscEnum, parameter :: MAT_IGNORE_ZERO_ENTRIES = 7
 55:       PetscEnum, parameter :: MAT_USE_INODES = 8
 56:       PetscEnum, parameter :: MAT_HERMITIAN = 9
 57:       PetscEnum, parameter :: MAT_SYMMETRY_ETERNAL = 10
 58:       PetscEnum, parameter :: MAT_NEW_NONZERO_LOCATION_ERR = 11
 59:       PetscEnum, parameter :: MAT_IGNORE_LOWER_TRIANGULAR = 12
 60:       PetscEnum, parameter :: MAT_ERROR_LOWER_TRIANGULAR = 13
 61:       PetscEnum, parameter :: MAT_GETROW_UPPERTRIANGULAR = 14
 62:       PetscEnum, parameter :: MAT_SPD = 15
 63:       PetscEnum, parameter :: MAT_NO_OFF_PROC_ZERO_ROWS = 16
 64:       PetscEnum, parameter :: MAT_NO_OFF_PROC_ENTRIES = 17
 65:       PetscEnum, parameter :: MAT_NEW_NONZERO_LOCATIONS = 18
 66:       PetscEnum, parameter :: MAT_NEW_NONZERO_ALLOCATION_ERR = 19
 67:       PetscEnum, parameter :: MAT_SUBSET_OFF_PROC_ENTRIES = 20
 68:       PetscEnum, parameter :: MAT_SUBMAT_SINGLEIS = 21
 69:       PetscEnum, parameter :: MAT_STRUCTURE_ONLY = 22
 70:       PetscEnum, parameter :: MAT_SORTED_FULL = 23
 71:       PetscEnum, parameter :: MAT_FORM_EXPLICIT_TRANSPOSE = 24
 72:       PetscEnum, parameter :: MAT_STRUCTURAL_SYMMETRY_ETERNAL = 25
 73:       PetscEnum, parameter :: MAT_SPD_ETERNAL = 26
 74:       PetscEnum, parameter :: MAT_OPTION_MAX = 27
 75: !
 76: !  MatFactorShiftType
 77: !
 78:       PetscEnum, parameter :: MAT_SHIFT_NONE=0
 79:       PetscEnum, parameter :: MAT_SHIFT_NONZERO=1
 80:       PetscEnum, parameter :: MAT_SHIFT_POSITIVE_DEFINITE=2
 81:       PetscEnum, parameter :: MAT_SHIFT_INBLOCKS=3
 82: !
 83: !  MatFactorError
 84: !
 85:       PetscEnum, parameter :: MAT_FACTOR_NOERROR=0
 86:       PetscEnum, parameter :: MAT_FACTOR_STRUCT_ZEROPIVOT=1
 87:       PetscEnum, parameter :: MAT_FACTOR_NUMERIC_ZEROPIVOT=2
 88:       PetscEnum, parameter :: MAT_FACTOR_OUTMEMORY=3
 89:       PetscEnum, parameter :: MAT_FACTOR_OTHER=4
 90: !
 91: !  MatDuplicateOption
 92: !
 93:       PetscEnum, parameter :: MAT_DO_NOT_COPY_VALUES=0
 94:       PetscEnum, parameter :: MAT_COPY_VALUES=1
 95:       PetscEnum, parameter :: MAT_SHARE_NONZERO_PATTERN=2
 96: !
 97: !  Flags for MatCopy, MatAXPY
 98: !
 99:       PetscEnum, parameter :: DIFFERENT_NONZERO_PATTERN = 0
100:       PetscEnum, parameter :: SUBSET_NONZERO_PATTERN = 1
101:       PetscEnum, parameter :: SAME_NONZERO_PATTERN = 2
102:       PetscEnum, parameter :: UNKNOWN_NONZERO_PATTERN = 3

104: #include "../src/mat/f90-mod/petscmatinfosize.h"

106:       PetscEnum, parameter :: MAT_INFO_BLOCK_SIZE=1
107:       PetscEnum, parameter :: MAT_INFO_NZ_ALLOCATED=2
108:       PetscEnum, parameter :: MAT_INFO_NZ_USED=3
109:       PetscEnum, parameter :: MAT_INFO_NZ_UNNEEDED=4
110:       PetscEnum, parameter :: MAT_INFO_MEMORY=5
111:       PetscEnum, parameter :: MAT_INFO_ASSEMBLIES=6
112:       PetscEnum, parameter :: MAT_INFO_MALLOCS=7
113:       PetscEnum, parameter :: MAT_INFO_FILL_RATIO_GIVEN=8
114:       PetscEnum, parameter :: MAT_INFO_FILL_RATIO_NEEDED=9
115:       PetscEnum, parameter :: MAT_INFO_FACTOR_MALLOCS=10
116: !
117: !  MatReuse
118: !
119:       PetscEnum, parameter :: MAT_INITIAL_MATRIX=0
120:       PetscEnum, parameter :: MAT_REUSE_MATRIX=1
121:       PetscEnum, parameter :: MAT_IGNORE_MATRIX=2
122:       PetscEnum, parameter :: MAT_INPLACE_MATRIX=3
123: !
124: !  MatInfoType
125: !
126:       PetscEnum, parameter :: MAT_LOCAL=1
127:       PetscEnum, parameter :: MAT_GLOBAL_MAX=2
128:       PetscEnum, parameter :: MAT_GLOBAL_SUM=3

130: !
131: !  MatCompositeType
132: !
133:       PetscEnum, parameter :: MAT_COMPOSITE_ADDITIVE = 0
134:       PetscEnum, parameter :: MAT_COMPOSITE_MULTIPLICATIVE = 1

136: #include "../src/mat/f90-mod/petscmatfactorinfosize.h"

138:       PetscEnum, parameter :: MAT_FACTORINFO_DIAGONAL_FILL = 1
139:       PetscEnum, parameter :: MAT_FACTORINFO_USEDT = 2
140:       PetscEnum, parameter :: MAT_FACTORINFO_DT = 3
141:       PetscEnum, parameter :: MAT_FACTORINFO_DTCOL = 4
142:       PetscEnum, parameter :: MAT_FACTORINFO_DTCOUNT = 5
143:       PetscEnum, parameter :: MAT_FACTORINFO_FILL = 6
144:       PetscEnum, parameter :: MAT_FACTORINFO_LEVELS = 7
145:       PetscEnum, parameter :: MAT_FACTORINFO_PIVOT_IN_BLOCKS = 8
146:       PetscEnum, parameter :: MAT_FACTORINFO_ZERO_PIVOT = 9
147:       PetscEnum, parameter :: MAT_FACTORINFO_SHIFT_TYPE = 10
148:       PetscEnum, parameter :: MAT_FACTORINFO_SHIFT_AMOUNT = 11
149: !
150: !  Options for SOR and SSOR
151: !  MatSorType may be bitwise ORd together, so do not change the numbers
152: !
153:       PetscEnum, parameter :: SOR_FORWARD_SWEEP=1
154:       PetscEnum, parameter :: SOR_BACKWARD_SWEEP=2
155:       PetscEnum, parameter :: SOR_SYMMETRIC_SWEEP=3
156:       PetscEnum, parameter :: SOR_LOCAL_FORWARD_SWEEP=4
157:       PetscEnum, parameter :: SOR_LOCAL_BACKWARD_SWEEP=8
158:       PetscEnum, parameter :: SOR_LOCAL_SYMMETRIC_SWEEP=12
159:       PetscEnum, parameter :: SOR_ZERO_INITIAL_GUESS=16
160:       PetscEnum, parameter :: SOR_EISENSTAT=32
161:       PetscEnum, parameter :: SOR_APPLY_UPPER=64
162:       PetscEnum, parameter :: SOR_APPLY_LOWER=128
163: !
164: !  MatOperation
165: !
166:       PetscEnum, parameter :: MATOP_SET_VALUES=0
167:       PetscEnum, parameter :: MATOP_GET_ROW=1
168:       PetscEnum, parameter :: MATOP_RESTORE_ROW=2
169:       PetscEnum, parameter :: MATOP_MULT=3
170:       PetscEnum, parameter :: MATOP_MULT_ADD=4
171:       PetscEnum, parameter :: MATOP_MULT_TRANSPOSE=5
172:       PetscEnum, parameter :: MATOP_MULT_TRANSPOSE_ADD=6
173:       PetscEnum, parameter :: MATOP_SOLVE=7
174:       PetscEnum, parameter :: MATOP_SOLVE_ADD=8
175:       PetscEnum, parameter :: MATOP_SOLVE_TRANSPOSE=9
176:       PetscEnum, parameter :: MATOP_SOLVE_TRANSPOSE_ADD=10
177:       PetscEnum, parameter :: MATOP_LUFACTOR=11
178:       PetscEnum, parameter :: MATOP_CHOLESKYFACTOR=12
179:       PetscEnum, parameter :: MATOP_SOR=13
180:       PetscEnum, parameter :: MATOP_TRANSPOSE=14
181:       PetscEnum, parameter :: MATOP_GETINFO=15
182:       PetscEnum, parameter :: MATOP_EQUAL=16
183:       PetscEnum, parameter :: MATOP_GET_DIAGONAL=17
184:       PetscEnum, parameter :: MATOP_DIAGONAL_SCALE=18
185:       PetscEnum, parameter :: MATOP_NORM=19
186:       PetscEnum, parameter :: MATOP_ASSEMBLY_BEGIN=20
187:       PetscEnum, parameter :: MATOP_ASSEMBLY_END=21
188:       PetscEnum, parameter :: MATOP_SET_OPTION=22
189:       PetscEnum, parameter :: MATOP_ZERO_ENTRIES=23
190:       PetscEnum, parameter :: MATOP_ZERO_ROWS=24
191:       PetscEnum, parameter :: MATOP_LUFACTOR_SYMBOLIC=25
192:       PetscEnum, parameter :: MATOP_LUFACTOR_NUMERIC=26
193:       PetscEnum, parameter :: MATOP_CHOLESKY_FACTOR_SYMBOLIC=27
194:       PetscEnum, parameter :: MATOP_CHOLESKY_FACTOR_NUMERIC=28
195:       PetscEnum, parameter :: MATOP_SETUP=29
196:       PetscEnum, parameter :: MATOP_ILUFACTOR_SYMBOLIC=30
197:       PetscEnum, parameter :: MATOP_ICCFACTOR_SYMBOLIC=31
198:       PetscEnum, parameter :: MATOP_GET_DIAGONAL_BLOCK=32
199:       PetscEnum, parameter :: MATOP_SET_INF=33
200:       PetscEnum, parameter :: MATOP_DUPLICATE=34
201:       PetscEnum, parameter :: MATOP_FORWARD_SOLVE=35
202:       PetscEnum, parameter :: MATOP_BACKWARD_SOLVE=36
203:       PetscEnum, parameter :: MATOP_ILUFACTOR=37
204:       PetscEnum, parameter :: MATOP_ICCFACTOR=38
205:       PetscEnum, parameter :: MATOP_AXPY=39
206:       PetscEnum, parameter :: MATOP_CREATE_SUBMATRICES=40
207:       PetscEnum, parameter :: MATOP_INCREASE_OVERLAP=41
208:       PetscEnum, parameter :: MATOP_GET_VALUES=42
209:       PetscEnum, parameter :: MATOP_COPY=43
210:       PetscEnum, parameter :: MATOP_GET_ROW_MAX=44
211:       PetscEnum, parameter :: MATOP_SCALE=45
212:       PetscEnum, parameter :: MATOP_SHIFT=46
213:       PetscEnum, parameter :: MATOP_DIAGONAL_SET=47
214:       PetscEnum, parameter :: MATOP_ZERO_ROWS_COLUMNS=48
215:       PetscEnum, parameter :: MATOP_SET_RANDOM=49
216:       PetscEnum, parameter :: MATOP_GET_ROW_IJ=50
217:       PetscEnum, parameter :: MATOP_RESTORE_ROW_IJ=51
218:       PetscEnum, parameter :: MATOP_GET_COLUMN_IJ=52
219:       PetscEnum, parameter :: MATOP_RESTORE_COLUMN_IJ=53
220:       PetscEnum, parameter :: MATOP_FDCOLORING_CREATE=54
221:       PetscEnum, parameter :: MATOP_COLORING_PATCH=55
222:       PetscEnum, parameter :: MATOP_SET_UNFACTORED=56
223:       PetscEnum, parameter :: MATOP_PERMUTE=57
224:       PetscEnum, parameter :: MATOP_SET_VALUES_BLOCKED=58
225:       PetscEnum, parameter :: MATOP_CREATE_SUBMATRIX=59
226:       PetscEnum, parameter :: MATOP_DESTROY=60
227:       PetscEnum, parameter :: MATOP_VIEW=61
228:       PetscEnum, parameter :: MATOP_CONVERT_FROM=62
229:       PetscEnum, parameter :: MATOP_PLACEHOLDER_63=63
230:       PetscEnum, parameter :: MATOP_MATMAT_MULT_SYMBOLIC=64
231:       PetscEnum, parameter :: MATOP_MATMAT_MULT_NUMERIC=65
232:       PetscEnum, parameter :: MATOP_SET_LOCAL_TO_GLOBAL_MAP=66
233:       PetscEnum, parameter :: MATOP_SET_VALUES_LOCAL=67
234:       PetscEnum, parameter :: MATOP_ZERO_ROWS_LOCAL=68
235:       PetscEnum, parameter :: MATOP_GET_ROW_MAX_ABS=69
236:       PetscEnum, parameter :: MATOP_GET_ROW_MIN_ABS=70
237:       PetscEnum, parameter :: MATOP_CONVERT=71
238:       PetscEnum, parameter :: MATOP_HAS_OPERATION=72
239:       PetscEnum, parameter :: MATOP_PLACEHOLDER_73=73
240:       PetscEnum, parameter :: MATOP_SET_VALUES_ADIFOR=74
241:       PetscEnum, parameter :: MATOP_FD_COLORING_APPLY=75
242:       PetscEnum, parameter :: MATOP_SET_FROM_OPTIONS=76
243:       PetscEnum, parameter :: MATOP_PLACEHOLDER_77=77
244:       PetscEnum, parameter :: MATOP_PLACEHOLDER_78=78
245:       PetscEnum, parameter :: MATOP_FIND_ZERO_DIAGONALS=79
246:       PetscEnum, parameter :: MATOP_MULT_MULTIPLE=80
247:       PetscEnum, parameter :: MATOP_SOLVE_MULTIPLE=81
248:       PetscEnum, parameter :: MATOP_GET_INERTIA=82
249:       PetscEnum, parameter :: MATOP_LOAD=83
250:       PetscEnum, parameter :: MATOP_IS_SYMMETRIC=84
251:       PetscEnum, parameter :: MATOP_IS_HERMITIAN=85
252:       PetscEnum, parameter :: MATOP_IS_STRUCTURALLY_SYMMETRIC=86
253:       PetscEnum, parameter :: MATOP_SET_VALUES_BLOCKEDLOCAL=87
254:       PetscEnum, parameter :: MATOP_CREATE_VECS=88
255:       PetscEnum, parameter :: MATOP_PLACEHOLDER_89=89
256:       PetscEnum, parameter :: MATOP_MAT_MULT_SYMBOLIC=90
257:       PetscEnum, parameter :: MATOP_MAT_MULT_NUMERIC=91
258:       PetscEnum, parameter :: MATOP_PLACEHOLDER_92=92
259:       PetscEnum, parameter :: MATOP_PTAP_SYMBOLIC=93
260:       PetscEnum, parameter :: MATOP_PTAP_NUMERIC=94
261:       PetscEnum, parameter :: MATOP_PLACEHOLDER_95=95
262:       PetscEnum, parameter :: MATOP_MAT_TRANSPOSE_MULT_SYMBO=96
263:       PetscEnum, parameter :: MATOP_MAT_TRANSPOSE_MULT_NUMER=97
264:       PetscEnum, parameter :: MATOP_BIND_TO_CPU=98
265:       PetscEnum, parameter :: MATOP_PRODUCTSETFROMOPTIONS=99
266:       PetscEnum, parameter :: MATOP_PRODUCTSYMBOLIC=100
267:       PetscEnum, parameter :: MATOP_PRODUCTNUMERIC=101
268:       PetscEnum, parameter :: MATOP_CONJUGATE=102
269:       PetscEnum, parameter :: MATOP_VIEW_NATIVE=103
270:       PetscEnum, parameter :: MATOP_SET_VALUES_ROW=104
271:       PetscEnum, parameter :: MATOP_REAL_PART=105
272:       PetscEnum, parameter :: MATOP_IMAGINARY_PART=106
273:       PetscEnum, parameter :: MATOP_GET_ROW_UPPER_TRIANGULAR=107
274:       PetscEnum, parameter :: MATOP_RESTORE_ROW_UPPER_TRIANG=108
275:       PetscEnum, parameter :: MATOP_MAT_SOLVE=109
276:       PetscEnum, parameter :: MATOP_MAT_SOLVE_TRANSPOSE=110
277:       PetscEnum, parameter :: MATOP_GET_ROW_MIN=111
278:       PetscEnum, parameter :: MATOP_GET_COLUMN_VECTOR=112
279:       PetscEnum, parameter :: MATOP_MISSING_DIAGONAL=113
280:       PetscEnum, parameter :: MATOP_GET_SEQ_NONZERO_STRUCTUR=114
281:       PetscEnum, parameter :: MATOP_CREATE=115
282:       PetscEnum, parameter :: MATOP_GET_GHOSTS=116
283:       PetscEnum, parameter :: MATOP_GET_LOCAL_SUB_MATRIX=117
284:       PetscEnum, parameter :: MATOP_RESTORE_LOCALSUB_MATRIX=118
285:       PetscEnum, parameter :: MATOP_MULT_DIAGONAL_BLOCK=119
286:       PetscEnum, parameter :: MATOP_HERMITIAN_TRANSPOSE=120
287:       PetscEnum, parameter :: MATOP_MULT_HERMITIAN_TRANSPOSE=121
288:       PetscEnum, parameter :: MATOP_MULT_HERMITIAN_TRANS_ADD=122
289:       PetscEnum, parameter :: MATOP_GET_MULTI_PROC_BLOCK=123
290:       PetscEnum, parameter :: MATOP_FIND_NONZERO_ROWS=124
291:       PetscEnum, parameter :: MATOP_GET_COLUMN_NORMS=125
292:       PetscEnum, parameter :: MATOP_INVERT_BLOCK_DIAGONAL=126
293:       PetscEnum, parameter :: MATOP_INVERT_VBLOCK_DIAGONAL=127
294:       PetscEnum, parameter :: MATOP_CREATE_SUB_MATRICES_MPI=128
295:       PetscEnum, parameter :: MATOP_SET_VALUES_BATCH=129
296:       PetscEnum, parameter :: MATOP_PLACEHOLDER_130=130
297:       PetscEnum, parameter :: MATOP_TRANSPOSE_MAT_MULT_SYMBO=131
298:       PetscEnum, parameter :: MATOP_TRANSPOSE_MAT_MULT_NUMER=132
299:       PetscEnum, parameter :: MATOP_TRANSPOSE_COLORING_CREAT=133
300:       PetscEnum, parameter :: MATOP_TRANS_COLORING_APPLY_SPT=134
301:       PetscEnum, parameter :: MATOP_TRANS_COLORING_APPLY_DEN=135
302:       PetscEnum, parameter :: MATOP_PLACEHOLDER_136=136
303:       PetscEnum, parameter :: MATOP_RART_SYMBOLIC=137
304:       PetscEnum, parameter :: MATOP_RART_NUMERIC=138
305:       PetscEnum, parameter :: MATOP_SET_BLOCK_SIZES=139
306:       PetscEnum, parameter :: MATOP_AYPX=140
307:       PetscEnum, parameter :: MATOP_RESIDUAL=141
308:       PetscEnum, parameter :: MATOP_FDCOLORING_SETUP=142
309:       PetscEnum, parameter :: MATOP_FIND_OFFBLOCK_ENTRIES=143
310:       PetscEnum, parameter :: MATOP_MPICONCATENATESEQ=144
311:       PetscEnum, parameter :: MATOP_DESTROYSUBMATRICES=145
312:       PetscEnum, parameter :: MATOP_TRANSPOSE_SOLVE=146
313:       PetscEnum, parameter :: MATOP_GET_VALUES_LOCAL=147
314: !
315: !
316: !
317:       PetscEnum, parameter :: MATRIX_BINARY_FORMAT_DENSE=-1
318: !
319: ! MPChacoGlobalType
320:       PetscEnum, parameter :: MP_CHACO_MULTILEVEL_KL=0
321:       PetscEnum, parameter :: MP_CHACO_SPECTRAL=1
322:       PetscEnum, parameter :: MP_CHACO_LINEAR=2
323:       PetscEnum, parameter :: MP_CHACO_RANDOM=3
324:       PetscEnum, parameter :: MP_CHACO_SCATTERED=4
325: !
326: ! MPChacoLocalType
327:       PetscEnum, parameter :: MP_CHACO_KERNIGHAN_LIN=0
328:       PetscEnum, parameter :: MP_CHACO_NONE=1
329: !
330: ! MPChacoEigenType
331:       PetscEnum, parameter :: MP_CHACO_LANCZOS=0
332:       PetscEnum, parameter :: MP_CHACO_RQI_SYMMLQ=1
333: !
334: ! MPPTScotchStrategyType
335:       PetscEnum, parameter :: MP_PTSCOTCH_QUALITY = 0
336:       PetscEnum, parameter :: MP_PTSCOTCH_SPEED = 1
337:       PetscEnum, parameter :: MP_PTSCOTCH_BALANCE = 2
338:       PetscEnum, parameter :: MP_PTSCOTCH_SAFETY = 3
339:       PetscEnum, parameter :: MP_PTSCOTCH_SCALABILITY = 4

341: ! PetscScalarPrecision
342:       PetscEnum, parameter :: PETSC_SCALAR_DOUBLE=0
343:       PetscEnum, parameter :: PETSC_SCALAR_SINGLE=1
344:       PetscEnum, parameter :: PETSC_SCALAR_LONG_DOUBLE=2
345: !
346: !     CUSPARSE enumerated types
347: !
348: #if defined(PETSC_HAVE_CUDA)
349:       PetscEnum, parameter :: MAT_CUSPARSE_CSR=0
350:       PetscEnum, parameter :: MAT_CUSPARSE_ELL=1
351:       PetscEnum, parameter :: MAT_CUSPARSE_HYB=2
352:       PetscEnum, parameter :: MAT_CUSPARSE_MULT_DIAG=0
353:       PetscEnum, parameter :: MAT_CUSPARSE_MULT_OFFDIAG=1
354:       PetscEnum, parameter :: MAT_CUSPARSE_MULT=2
355:       PetscEnum, parameter :: MAT_CUSPARSE_ALL=3
356: #endif

358: #if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
359: !DEC$ ATTRIBUTES DLLEXPORT::PETSC_NULL_MAT
360: !DEC$ ATTRIBUTES DLLEXPORT::PETSC_NULL_MATFDCOLORING
361: !DEC$ ATTRIBUTES DLLEXPORT::PETSC_NULL_MATNULLSPACE
362: !DEC$ ATTRIBUTES DLLEXPORT::MAT_FLUSH_ASSEMBLY
363: !DEC$ ATTRIBUTES DLLEXPORT::MAT_FINAL_ASSEMBLY
364: !DEC$ ATTRIBUTES DLLEXPORT::MAT_FACTOR_NONE
365: !DEC$ ATTRIBUTES DLLEXPORT::MAT_FACTOR_LU
366: !DEC$ ATTRIBUTES DLLEXPORT::MAT_FACTOR_CHOLESKY
367: !DEC$ ATTRIBUTES DLLEXPORT::MAT_FACTOR_ILU
368: !DEC$ ATTRIBUTES DLLEXPORT::MAT_FACTOR_ICC
369: !DEC$ ATTRIBUTES DLLEXPORT::MAT_FACTOR_ILUDT
370: !DEC$ ATTRIBUTES DLLEXPORT::MAT_FACTOR_QR
371: !DEC$ ATTRIBUTES DLLEXPORT::MAT_DO_NOT_GET_VALUES
372: !DEC$ ATTRIBUTES DLLEXPORT::MAT_GET_VALUES
373: !DEC$ ATTRIBUTES DLLEXPORT::MAT_OPTION_MIN
374: !DEC$ ATTRIBUTES DLLEXPORT::MAT_UNUSED_NONZERO_LOCATION_ERR
375: !DEC$ ATTRIBUTES DLLEXPORT::MAT_ROW_ORIENTED
376: !DEC$ ATTRIBUTES DLLEXPORT::MAT_SYMMETRIC
377: !DEC$ ATTRIBUTES DLLEXPORT::MAT_STRUCTURALLY_SYMMETRIC
378: !DEC$ ATTRIBUTES DLLEXPORT::MAT_FORCE_DIAGONAL_ENTRIES
379: !DEC$ ATTRIBUTES DLLEXPORT::MAT_IGNORE_OFF_PROC_ENTRIES
380: !DEC$ ATTRIBUTES DLLEXPORT::MAT_USE_HASH_TABLE
381: !DEC$ ATTRIBUTES DLLEXPORT::MAT_KEEP_NONZERO_PATTERN
382: !DEC$ ATTRIBUTES DLLEXPORT::MAT_IGNORE_ZERO_ENTRIES
383: !DEC$ ATTRIBUTES DLLEXPORT::MAT_USE_INODES
384: !DEC$ ATTRIBUTES DLLEXPORT::MAT_HERMITIAN
385: !DEC$ ATTRIBUTES DLLEXPORT::MAT_SYMMETRY_ETERNAL
386: !DEC$ ATTRIBUTES DLLEXPORT::MAT_NEW_NONZERO_LOCATION_ERR
387: !DEC$ ATTRIBUTES DLLEXPORT::MAT_IGNORE_LOWER_TRIANGULAR
388: !DEC$ ATTRIBUTES DLLEXPORT::MAT_ERROR_LOWER_TRIANGULAR
389: !DEC$ ATTRIBUTES DLLEXPORT::MAT_GETROW_UPPERTRIANGULAR
390: !DEC$ ATTRIBUTES DLLEXPORT::MAT_SPD
391: !DEC$ ATTRIBUTES DLLEXPORT::MAT_NO_OFF_PROC_ZERO_ROWS
392: !DEC$ ATTRIBUTES DLLEXPORT::MAT_NO_OFF_PROC_ENTRIES
393: !DEC$ ATTRIBUTES DLLEXPORT::MAT_NEW_NONZERO_LOCATIONS
394: !DEC$ ATTRIBUTES DLLEXPORT::MAT_NEW_NONZERO_ALLOCATION_ERR
395: !DEC$ ATTRIBUTES DLLEXPORT::MAT_SUBSET_OFF_PROC_ENTRIES
396: !DEC$ ATTRIBUTES DLLEXPORT::MAT_SUBMAT_SINGLEIS
397: !DEC$ ATTRIBUTES DLLEXPORT::MAT_STRUCTURE_ONLY
398: !DEC$ ATTRIBUTES DLLEXPORT::MAT_OPTION_MAX
399: !DEC$ ATTRIBUTES DLLEXPORT::MAT_SHIFT_NONE
400: !DEC$ ATTRIBUTES DLLEXPORT::MAT_SHIFT_NONZERO
401: !DEC$ ATTRIBUTES DLLEXPORT::MAT_SHIFT_POSITIVE_DEFINITE
402: !DEC$ ATTRIBUTES DLLEXPORT::MAT_SHIFT_INBLOCKS
403: !DEC$ ATTRIBUTES DLLEXPORT::MAT_FACTOR_NOERROR
404: !DEC$ ATTRIBUTES DLLEXPORT::MAT_FACTOR_STRUCT_ZEROPIVOT
405: !DEC$ ATTRIBUTES DLLEXPORT::MAT_FACTOR_NUMERIC_ZEROPIVOT
406: !DEC$ ATTRIBUTES DLLEXPORT::MAT_FACTOR_OUTMEMORY
407: !DEC$ ATTRIBUTES DLLEXPORT::MAT_FACTOR_OTHER
408: !DEC$ ATTRIBUTES DLLEXPORT::MAT_DO_NOT_COPY_VALUES
409: !DEC$ ATTRIBUTES DLLEXPORT::MAT_COPY_VALUES
410: !DEC$ ATTRIBUTES DLLEXPORT::MAT_SHARE_NONZERO_PATTERN
411: !DEC$ ATTRIBUTES DLLEXPORT::DIFFERENT_NONZERO_PATTERN
412: !DEC$ ATTRIBUTES DLLEXPORT::SUBSET_NONZERO_PATTERN
413: !DEC$ ATTRIBUTES DLLEXPORT::SAME_NONZERO_PATTERN
414: !DEC$ ATTRIBUTES DLLEXPORT::MAT_INFO_BLOCK_SIZE
415: !DEC$ ATTRIBUTES DLLEXPORT::MAT_INFO_NZ_ALLOCATED
416: !DEC$ ATTRIBUTES DLLEXPORT::MAT_INFO_NZ_USED
417: !DEC$ ATTRIBUTES DLLEXPORT::MAT_INFO_NZ_UNNEEDED
418: !DEC$ ATTRIBUTES DLLEXPORT::MAT_INFO_MEMORY
419: !DEC$ ATTRIBUTES DLLEXPORT::MAT_INFO_ASSEMBLIES
420: !DEC$ ATTRIBUTES DLLEXPORT::MAT_INFO_MALLOCS
421: !DEC$ ATTRIBUTES DLLEXPORT::MAT_INFO_FILL_RATIO_GIVEN
422: !DEC$ ATTRIBUTES DLLEXPORT::MAT_INFO_FILL_RATIO_NEEDED
423: !DEC$ ATTRIBUTES DLLEXPORT::MAT_INFO_FACTOR_MALLOCS
424: !DEC$ ATTRIBUTES DLLEXPORT::MAT_INITIAL_MATRIX
425: !DEC$ ATTRIBUTES DLLEXPORT::MAT_REUSE_MATRIX
426: !DEC$ ATTRIBUTES DLLEXPORT::MAT_IGNORE_MATRIX
427: !DEC$ ATTRIBUTES DLLEXPORT::MAT_INPLACE_MATRIX
428: !DEC$ ATTRIBUTES DLLEXPORT::MAT_LOCAL
429: !DEC$ ATTRIBUTES DLLEXPORT::MAT_GLOBAL_MAX
430: !DEC$ ATTRIBUTES DLLEXPORT::MAT_GLOBAL_SUM
431: !DEC$ ATTRIBUTES DLLEXPORT::MAT_COMPOSITE_ADDITIVE
432: !DEC$ ATTRIBUTES DLLEXPORT::MAT_COMPOSITE_MULTIPLICATIVE
433: !DEC$ ATTRIBUTES DLLEXPORT::MAT_FACTORINFO_DIAGONAL_FILL
434: !DEC$ ATTRIBUTES DLLEXPORT::MAT_FACTORINFO_USEDT
435: !DEC$ ATTRIBUTES DLLEXPORT::MAT_FACTORINFO_DT
436: !DEC$ ATTRIBUTES DLLEXPORT::MAT_FACTORINFO_DTCOL
437: !DEC$ ATTRIBUTES DLLEXPORT::MAT_FACTORINFO_DTCOUNT
438: !DEC$ ATTRIBUTES DLLEXPORT::MAT_FACTORINFO_FILL
439: !DEC$ ATTRIBUTES DLLEXPORT::MAT_FACTORINFO_LEVELS
440: !DEC$ ATTRIBUTES DLLEXPORT::MAT_FACTORINFO_PIVOT_IN_BLOCKS
441: !DEC$ ATTRIBUTES DLLEXPORT::MAT_FACTORINFO_ZERO_PIVOT
442: !DEC$ ATTRIBUTES DLLEXPORT::MAT_FACTORINFO_SHIFT_TYPE
443: !DEC$ ATTRIBUTES DLLEXPORT::MAT_FACTORINFO_SHIFT_AMOUNT
444: !DEC$ ATTRIBUTES DLLEXPORT::SOR_FORWARD_SWEEP
445: !DEC$ ATTRIBUTES DLLEXPORT::SOR_BACKWARD_SWEEP
446: !DEC$ ATTRIBUTES DLLEXPORT::SOR_SYMMETRIC_SWEEP
447: !DEC$ ATTRIBUTES DLLEXPORT::SOR_LOCAL_FORWARD_SWEEP
448: !DEC$ ATTRIBUTES DLLEXPORT::SOR_LOCAL_BACKWARD_SWEEP
449: !DEC$ ATTRIBUTES DLLEXPORT::SOR_LOCAL_SYMMETRIC_SWEEP
450: !DEC$ ATTRIBUTES DLLEXPORT::SOR_ZERO_INITIAL_GUESS
451: !DEC$ ATTRIBUTES DLLEXPORT::SOR_EISENSTAT
452: !DEC$ ATTRIBUTES DLLEXPORT::SOR_APPLY_UPPER
453: !DEC$ ATTRIBUTES DLLEXPORT::SOR_APPLY_LOWER
454: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_SET_VALUES
455: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_GET_ROWMATOP_RESTORE_ROW
456: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_MULT
457: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_MULT_ADD
458: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_MULT_TRANSPOSE
459: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_MULT_TRANSPOSE_ADD
460: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_SOLVE
461: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_SOLVE_ADD
462: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_SOLVE_TRANSPOSE
463: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_SOLVE_TRANSPOSE_ADD
464: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_LUFACTOR
465: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_CHOLESKYFACTOR
466: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_SOR
467: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_TRANSPOSE
468: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_GETINFO
469: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_EQUAL
470: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_GET_DIAGONAL
471: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_DIAGONAL_SCALE
472: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_NORM
473: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_ASSEMBLY_BEGIN
474: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_ASSEMBLY_END
475: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_SET_OPTION
476: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_ZERO_ENTRIES
477: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_ZERO_ROWS
478: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_LUFACTOR_SYMBOLIC
479: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_LUFACTOR_NUMERIC
480: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_CHOLESKY_FACTOR_SYMBOLIC
481: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_CHOLESKY_FACTOR_NUMERIC
482: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_SETUP_PREALLOCATION
483: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_ILUFACTOR_SYMBOLIC
484: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_ICCFACTOR_SYMBOLIC
485: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_GET_DIAGONAL_BLOCK
486: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_DUPLICATE
487: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_FORWARD_SOLVE
488: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_BACKWARD_SOLVE
489: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_ILUFACTOR
490: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_ICCFACTOR
491: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_AXPY
492: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_CREATE_SUBMATRICES
493: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_INCREASE_OVERLAP
494: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_GET_VALUES
495: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_COPY
496: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_GET_ROW_MAX
497: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_SCALE
498: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_SHIFT
499: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_DIAGONAL_SET
500: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_ZERO_ROWS_COLUMNS
501: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_SET_RANDOM
502: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_GET_ROW_IJ
503: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_RESTORE_ROW_IJ
504: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_GET_COLUMN_IJ
505: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_RESTORE_COLUMN_IJ
506: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_FDCOLORING_CREATE
507: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_COLORING_PATCH
508: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_SET_UNFACTORED
509: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_PERMUTE
510: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_SET_VALUES_BLOCKED
511: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_CREATE_SUBMATRIX
512: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_DESTROY
513: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_VIEW
514: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_CONVERT_FROM
515: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_MATMAT_MULT
516: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_MATMAT_MULT_SYMBOLIC
517: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_MATMAT_MULT_NUMERIC
518: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_SET_LOCAL_TO_GLOBAL_MAP
519: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_SET_VALUES_LOCAL
520: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_ZERO_ROWS_LOCAL
521: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_GET_ROW_MAX_ABS
522: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_GET_ROW_MIN_ABS
523: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_CONVERT
524: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_SET_COLORING
525: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_SET_VALUES_ADIFOR
526: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_FD_COLORING_APPLY
527: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_SET_FROM_OPTIONS
528: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_MULT_CONSTRAINED
529: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_MULT_TRANSPOSE_CONSTRAIN
530: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_FIND_ZERO_DIAGONALS
531: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_MULT_MULTIPLE
532: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_SOLVE_MULTIPLE
533: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_GET_INERTIA
534: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_LOAD
535: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_IS_SYMMETRIC
536: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_IS_HERMITIAN
537: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_IS_STRUCTURALLY_SYMMETRIC
538: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_SET_VALUES_BLOCKEDLOCAL
539: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_CREATE_VECS
540: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_MAT_MULT
541: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_MAT_MULT_SYMBOLIC
542: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_MAT_MULT_NUMERIC
543: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_PTAP
544: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_PTAP_SYMBOLIC
545: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_PTAP_NUMERIC
546: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_MAT_TRANSPOSE_MULT
547: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_MAT_TRANSPOSE_MULT_SYMBO
548: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_MAT_TRANSPOSE_MULT_NUMER
549: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_CONJUGATE
550: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_SET_VALUES_ROW
551: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_REAL_PART
552: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_IMAGINARY_PART
553: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_GET_ROW_UPPER_TRIANGULAR
554: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_RESTORE_ROW_UPPER_TRIANG
555: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_MAT_SOLVE
556: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_MAT_SOLVE_TRANSPOSE
557: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_GET_ROW_MIN
558: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_GET_COLUMN_VECTOR
559: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_MISSING_DIAGONAL
560: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_GET_SEQ_NONZERO_STRUCTUR
561: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_CREATE
562: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_GET_GHOSTS
563: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_GET_LOCAL_SUB_MATRIX
564: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_RESTORE_LOCALSUB_MATRIX
565: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_MULT_DIAGONAL_BLOCK
566: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_HERMITIAN_TRANSPOSE
567: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_MULT_HERMITIAN_TRANSPOSE
568: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_MULT_HERMITIAN_TRANS_ADD
569: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_GET_MULTI_PROC_BLOCK
570: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_FIND_NONZERO_ROWS
571: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_GET_COLUMN_NORMS
572: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_INVERT_BLOCK_DIAGONAL
573: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_CREATE_SUB_MATRICES_MPI
574: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_SET_VALUES_BATCH
575: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_TRANSPOSE_MAT_MULT
576: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_TRANSPOSE_MAT_MULT_SYMBO
577: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_TRANSPOSE_MAT_MULT_NUMER
578: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_TRANSPOSE_COLORING_CREAT
579: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_TRANS_COLORING_APPLY_SPT
580: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_TRANS_COLORING_APPLY_DEN
581: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_RART
582: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_RART_SYMBOLIC
583: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_RART_NUMERIC
584: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_SET_BLOCK_SIZES
585: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_AYPX
586: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_RESIDUAL
587: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_FDCOLORING_SETUP
588: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_MPICONCATENATESEQ
589: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_DESTROYSUBMATRICES
590: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_TRANSPOSE_SOLVE
591: !DEC$ ATTRIBUTES DLLEXPORT::MATOP_GET_VALUES_LOCAL
592: !DEC$ ATTRIBUTES DLLEXPORT::MP_CHACO_MULTILEVEL_KL
593: !DEC$ ATTRIBUTES DLLEXPORT::MP_CHACO_SPECTRAL
594: !DEC$ ATTRIBUTES DLLEXPORT::MP_CHACO_LINEAR
595: !DEC$ ATTRIBUTES DLLEXPORT::MP_CHACO_RANDOM
596: !DEC$ ATTRIBUTES DLLEXPORT::MP_CHACO_SCATTERED
597: !DEC$ ATTRIBUTES DLLEXPORT::MP_CHACO_KERNIGHAN_LIN
598: !DEC$ ATTRIBUTES DLLEXPORT::MP_CHACO_NONE
599: !DEC$ ATTRIBUTES DLLEXPORT::MP_CHACO_LANCZOS
600: !DEC$ ATTRIBUTES DLLEXPORT::MP_CHACO_RQI_SYMMLQ
601: !DEC$ ATTRIBUTES DLLEXPORT::MP_PTSCOTCH_QUALITY
602: !DEC$ ATTRIBUTES DLLEXPORT::MP_PTSCOTCH_SPEED
603: !DEC$ ATTRIBUTES DLLEXPORT::MP_PTSCOTCH_BALANCE
604: !DEC$ ATTRIBUTES DLLEXPORT::MP_PTSCOTCH_SAFETY
605: !DEC$ ATTRIBUTES DLLEXPORT::MP_PTSCOTCH_SCALABILITY
606: !DEC$ ATTRIBUTES DLLEXPORT::PETSC_SCALAR_DOUBLE
607: !DEC$ ATTRIBUTES DLLEXPORT::PETSC_SCALAR_SINGLE
608: !DEC$ ATTRIBUTES DLLEXPORT::PETSC_SCALAR_LONG_DOUBLE
609: #if defined(PETSC_HAVE_CUDA)
610: !DEC$ ATTRIBUTES DLLEXPORT::MAT_CUSPARSE_CSR
611: !DEC$ ATTRIBUTES DLLEXPORT::MAT_CUSPARSE_ELL
612: !DEC$ ATTRIBUTES DLLEXPORT::MAT_CUSPARSE_HYB
613: !DEC$ ATTRIBUTES DLLEXPORT::
614: !DEC$ ATTRIBUTES DLLEXPORT::MAT_CUSPARSE_MULT_DIAG
615: !DEC$ ATTRIBUTES DLLEXPORT::MAT_CUSPARSE_MULT_OFFDIAG
616: !DEC$ ATTRIBUTES DLLEXPORT::MAT_CUSPARSE_MULT
617: !DEC$ ATTRIBUTES DLLEXPORT::MAT_CUSPARSE_ALL
618: #endif
619: #endif