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: ! MatProduct
316:       PetscEnum, parameter :: MATPRODUCT_UNSPECIFIED=0
317:       PetscEnum, parameter :: MATPRODUCT_AB=1
318:       PetscEnum, parameter :: MATPRODUCT_AtB=2
319:       PetscEnum, parameter :: MATPRODUCT_ABt=3
320:       PetscEnum, parameter :: MATPRODUCT_PtAP=4
321:       PetscEnum, parameter :: MATPRODUCT_RARt=5
322:       PetscEnum, parameter :: MATPRODUCT_ABC=6
323: !
324: !
325:       PetscEnum, parameter :: MATRIX_BINARY_FORMAT_DENSE=-1
326: !
327: ! MPChacoGlobalType
328:       PetscEnum, parameter :: MP_CHACO_MULTILEVEL_KL=0
329:       PetscEnum, parameter :: MP_CHACO_SPECTRAL=1
330:       PetscEnum, parameter :: MP_CHACO_LINEAR=2
331:       PetscEnum, parameter :: MP_CHACO_RANDOM=3
332:       PetscEnum, parameter :: MP_CHACO_SCATTERED=4
333: !
334: ! MPChacoLocalType
335:       PetscEnum, parameter :: MP_CHACO_KERNIGHAN_LIN=0
336:       PetscEnum, parameter :: MP_CHACO_NONE=1
337: !
338: ! MPChacoEigenType
339:       PetscEnum, parameter :: MP_CHACO_LANCZOS=0
340:       PetscEnum, parameter :: MP_CHACO_RQI_SYMMLQ=1
341: !
342: ! MPPTScotchStrategyType
343:       PetscEnum, parameter :: MP_PTSCOTCH_QUALITY = 0
344:       PetscEnum, parameter :: MP_PTSCOTCH_SPEED = 1
345:       PetscEnum, parameter :: MP_PTSCOTCH_BALANCE = 2
346:       PetscEnum, parameter :: MP_PTSCOTCH_SAFETY = 3
347:       PetscEnum, parameter :: MP_PTSCOTCH_SCALABILITY = 4
348: !
349: ! MatSTRUMPACKReordering
350: #if defined(PETSC_HAVE_STRUMPACK)
351:       PetscEnum, parameter :: MAT_STRUMPACK_NATURAL = 0
352:       PetscEnum, parameter :: MAT_STRUMPACK_METIS = 1
353:       PetscEnum, parameter :: MAT_STRUMPACK_PARMETIS = 2
354:       PetscEnum, parameter :: MAT_STRUMPACK_SCOTCH = 3
355:       PetscEnum, parameter :: MAT_STRUMPACK_PTSCOTCH = 4
356:       PetscEnum, parameter :: MAT_STRUMPACK_RCM = 5
357:       PetscEnum, parameter :: MAT_STRUMPACK_GEOMETRIC = 6
358:       PetscEnum, parameter :: MAT_STRUMPACK_AMD = 7
359:       PetscEnum, parameter :: MAT_STRUMPACK_MMD = 8
360:       PetscEnum, parameter :: MAT_STRUMPACK_AND = 9
361:       PetscEnum, parameter :: MAT_STRUMPACK_MLF = 10
362:       PetscEnum, parameter :: MAT_STRUMPACK_SPECTRAL = 11
363: !
364: ! MatSTRUMPACKCompressionType
365:       PetscEnum, parameter :: MAT_STRUMPACK_COMPRESSION_TYPE_NONE = 0
366:       PetscEnum, parameter :: MAT_STRUMPACK_COMPRESSION_TYPE_HSS = 1
367:       PetscEnum, parameter :: MAT_STRUMPACK_COMPRESSION_TYPE_BLR = 2
368:       PetscEnum, parameter :: MAT_STRUMPACK_COMPRESSION_TYPE_HODLR = 3
369:       PetscEnum, parameter :: MAT_STRUMPACK_COMPRESSION_TYPE_BLR_HODLR = 4
370:       PetscEnum, parameter :: MAT_STRUMPACK_COMPRESSION_TYPE_ZFP_BLR_HODLR = 5
371:       PetscEnum, parameter :: MAT_STRUMPACK_COMPRESSION_TYPE_LOSSLESS = 6
372:       PetscEnum, parameter :: MAT_STRUMPACK_COMPRESSION_TYPE_LOSSY = 7
373: #endif

375: ! PetscScalarPrecision
376:       PetscEnum, parameter :: PETSC_SCALAR_DOUBLE=0
377:       PetscEnum, parameter :: PETSC_SCALAR_SINGLE=1
378:       PetscEnum, parameter :: PETSC_SCALAR_LONG_DOUBLE=2
379: !
380: !     CUSPARSE enumerated types
381: !
382: #if defined(PETSC_HAVE_CUDA)
383:       PetscEnum, parameter :: MAT_CUSPARSE_CSR=0
384:       PetscEnum, parameter :: MAT_CUSPARSE_ELL=1
385:       PetscEnum, parameter :: MAT_CUSPARSE_HYB=2
386:       PetscEnum, parameter :: MAT_CUSPARSE_MULT_DIAG=0
387:       PetscEnum, parameter :: MAT_CUSPARSE_MULT_OFFDIAG=1
388:       PetscEnum, parameter :: MAT_CUSPARSE_MULT=2
389:       PetscEnum, parameter :: MAT_CUSPARSE_ALL=3
390: #endif

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