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, extends(tPetscObject) :: tMat
  7:       end type tMat
  8:       Mat, parameter :: PETSC_NULL_MAT = tMat(0)
  9: #if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
 10: !DEC$ ATTRIBUTES DLLEXPORT::PETSC_NULL_MAT
 11: #endif

 13:       type, extends(tPetscObject) :: tMatNullSpace
 14:       end type tMatNullSpace
 15:       MatNullSpace, parameter :: PETSC_NULL_MAT_NULLSPACE = tMatNullSpace(0)
 16: #if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
 17: !DEC$ ATTRIBUTES DLLEXPORT::PETSC_NULL_MAT_NULLSPACE
 18: #endif

 20:       type, extends(tPetscObject) :: tMatFDColoring
 21:       end type tMatFDColoring
 22:       MatFDColoring, parameter :: PETSC_NULL_MAT_FDCOLORING = tMatFDColoring(0)
 23: #if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
 24: !DEC$ ATTRIBUTES DLLEXPORT::PETSC_NULL_MAT_FDCOLORING
 25: #endif

 27:       type, extends(tPetscObject) :: tMatColoring
 28:       end type tMatColoring
 29:       MatColoring, parameter :: PETSC_NULL_MAT_COLORING = tMatColoring(0)
 30: #if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
 31: !DEC$ ATTRIBUTES DLLEXPORT::PETSC_NULL_MAT_COLORING
 32: #endif

 34:       type, extends(tPetscObject) :: tMatTransposeColoring
 35:       end type tMatTransposeColoring
 36:       MatTransposeColoring, parameter :: PETSC_NULL_MAT_TRANSPOSE_COLORING = tMatTransposeColoring(0)
 37: #if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
 38: !DEC$ ATTRIBUTES DLLEXPORT::PETSC_NULL_MAT_TRANSPOSE_COLORING
 39: #endif

 41:       type, extends(tPetscObject) :: tMatPartitioning
 42:       end type tMatPartitioning
 43:       MatPartitioning, parameter :: PETSC_NULL_MAT_PARTITIONING = tMatPartitioning(0)
 44: #if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
 45: !DEC$ ATTRIBUTES DLLEXPORT::PETSC_NULL_MAT_PARTITIONING
 46: #endif

 48:       type, extends(tPetscObject) :: tMatCoarsen
 49:       end type tMatCoarsen
 50:       MatCoarsen, parameter :: PETSC_NULL_MAT_COARSEN = tMatCoarsen(0)
 51: #if defined(_WIN32) && defined(PETSC_USE_SHARED_LIBRARIES)
 52: !DEC$ ATTRIBUTES DLLEXPORT::PETSC_NULL_MAT_COARSEN
 53: #endif
 54: !
 55: !
 56: !  Flag for matrix assembly
 57: !
 58:       PetscEnum, parameter :: MAT_FLUSH_ASSEMBLY=1
 59:       PetscEnum, parameter :: MAT_FINAL_ASSEMBLY=0
 60: !
 61: !
 62: !
 63:       PetscEnum, parameter :: MAT_FACTOR_NONE=0
 64:       PetscEnum, parameter :: MAT_FACTOR_LU=1
 65:       PetscEnum, parameter :: MAT_FACTOR_CHOLESKY=2
 66:       PetscEnum, parameter :: MAT_FACTOR_ILU=3
 67:       PetscEnum, parameter :: MAT_FACTOR_ICC=4
 68:       PetscEnum, parameter :: MAT_FACTOR_ILUDT=5
 69:       PetscEnum, parameter :: MAT_FACTOR_QR=6
 70: !
 71: ! MatCreateSubMatrixOption
 72: !
 73:       PetscEnum, parameter :: MAT_DO_NOT_GET_VALUES=0
 74:       PetscEnum, parameter :: MAT_GET_VALUES=1
 75: !
 76: !  MatOption; must match those in include/petscmat.h
 77: !
 78:       PetscEnum, parameter :: MAT_OPTION_MIN = -3
 79:       PetscEnum, parameter :: MAT_UNUSED_NONZERO_LOCATION_ERR = -2
 80:       PetscEnum, parameter :: MAT_ROW_ORIENTED = -1
 81:       PetscEnum, parameter :: MAT_SYMMETRIC = 1
 82:       PetscEnum, parameter :: MAT_STRUCTURALLY_SYMMETRIC = 2
 83:       PetscEnum, parameter :: MAT_FORCE_DIAGONAL_ENTRIES = 3
 84:       PetscEnum, parameter :: MAT_IGNORE_OFF_PROC_ENTRIES = 4
 85:       PetscEnum, parameter :: MAT_USE_HASH_TABLE = 5
 86:       PetscEnum, parameter :: MAT_KEEP_NONZERO_PATTERN = 6
 87:       PetscEnum, parameter :: MAT_IGNORE_ZERO_ENTRIES = 7
 88:       PetscEnum, parameter :: MAT_USE_INODES = 8
 89:       PetscEnum, parameter :: MAT_HERMITIAN = 9
 90:       PetscEnum, parameter :: MAT_SYMMETRY_ETERNAL = 10
 91:       PetscEnum, parameter :: MAT_NEW_NONZERO_LOCATION_ERR = 11
 92:       PetscEnum, parameter :: MAT_IGNORE_LOWER_TRIANGULAR = 12
 93:       PetscEnum, parameter :: MAT_ERROR_LOWER_TRIANGULAR = 13
 94:       PetscEnum, parameter :: MAT_GETROW_UPPERTRIANGULAR = 14
 95:       PetscEnum, parameter :: MAT_SPD = 15
 96:       PetscEnum, parameter :: MAT_NO_OFF_PROC_ZERO_ROWS = 16
 97:       PetscEnum, parameter :: MAT_NO_OFF_PROC_ENTRIES = 17
 98:       PetscEnum, parameter :: MAT_NEW_NONZERO_LOCATIONS = 18
 99:       PetscEnum, parameter :: MAT_NEW_NONZERO_ALLOCATION_ERR = 19
100:       PetscEnum, parameter :: MAT_SUBSET_OFF_PROC_ENTRIES = 20
101:       PetscEnum, parameter :: MAT_SUBMAT_SINGLEIS = 21
102:       PetscEnum, parameter :: MAT_STRUCTURE_ONLY = 22
103:       PetscEnum, parameter :: MAT_SORTED_FULL = 23
104:       PetscEnum, parameter :: MAT_FORM_EXPLICIT_TRANSPOSE = 24
105:       PetscEnum, parameter :: MAT_STRUCTURAL_SYMMETRY_ETERNAL = 25
106:       PetscEnum, parameter :: MAT_SPD_ETERNAL = 26
107:       PetscEnum, parameter :: MAT_OPTION_MAX = 27
108: !
109: !  MatFactorShiftType
110: !
111:       PetscEnum, parameter :: MAT_SHIFT_NONE=0
112:       PetscEnum, parameter :: MAT_SHIFT_NONZERO=1
113:       PetscEnum, parameter :: MAT_SHIFT_POSITIVE_DEFINITE=2
114:       PetscEnum, parameter :: MAT_SHIFT_INBLOCKS=3
115: !
116: !  MatFactorError
117: !
118:       PetscEnum, parameter :: MAT_FACTOR_NOERROR=0
119:       PetscEnum, parameter :: MAT_FACTOR_STRUCT_ZEROPIVOT=1
120:       PetscEnum, parameter :: MAT_FACTOR_NUMERIC_ZEROPIVOT=2
121:       PetscEnum, parameter :: MAT_FACTOR_OUTMEMORY=3
122:       PetscEnum, parameter :: MAT_FACTOR_OTHER=4
123: !
124: !  MatDuplicateOption
125: !
126:       PetscEnum, parameter :: MAT_DO_NOT_COPY_VALUES=0
127:       PetscEnum, parameter :: MAT_COPY_VALUES=1
128:       PetscEnum, parameter :: MAT_SHARE_NONZERO_PATTERN=2
129: !
130: !  Flags for MatCopy, MatAXPY
131: !
132:       PetscEnum, parameter :: DIFFERENT_NONZERO_PATTERN = 0
133:       PetscEnum, parameter :: SUBSET_NONZERO_PATTERN = 1
134:       PetscEnum, parameter :: SAME_NONZERO_PATTERN = 2
135:       PetscEnum, parameter :: UNKNOWN_NONZERO_PATTERN = 3

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

139:       PetscEnum, parameter :: MAT_INFO_BLOCK_SIZE=1
140:       PetscEnum, parameter :: MAT_INFO_NZ_ALLOCATED=2
141:       PetscEnum, parameter :: MAT_INFO_NZ_USED=3
142:       PetscEnum, parameter :: MAT_INFO_NZ_UNNEEDED=4
143:       PetscEnum, parameter :: MAT_INFO_MEMORY=5
144:       PetscEnum, parameter :: MAT_INFO_ASSEMBLIES=6
145:       PetscEnum, parameter :: MAT_INFO_MALLOCS=7
146:       PetscEnum, parameter :: MAT_INFO_FILL_RATIO_GIVEN=8
147:       PetscEnum, parameter :: MAT_INFO_FILL_RATIO_NEEDED=9
148:       PetscEnum, parameter :: MAT_INFO_FACTOR_MALLOCS=10
149: !
150: !  MatReuse
151: !
152:       PetscEnum, parameter :: MAT_INITIAL_MATRIX=0
153:       PetscEnum, parameter :: MAT_REUSE_MATRIX=1
154:       PetscEnum, parameter :: MAT_IGNORE_MATRIX=2
155:       PetscEnum, parameter :: MAT_INPLACE_MATRIX=3
156: !
157: !  MatInfoType
158: !
159:       PetscEnum, parameter :: MAT_LOCAL=1
160:       PetscEnum, parameter :: MAT_GLOBAL_MAX=2
161:       PetscEnum, parameter :: MAT_GLOBAL_SUM=3

163: !
164: !  MatCompositeType
165: !
166:       PetscEnum, parameter :: MAT_COMPOSITE_ADDITIVE = 0
167:       PetscEnum, parameter :: MAT_COMPOSITE_MULTIPLICATIVE = 1

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

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

415: ! PetscScalarPrecision
416:       PetscEnum, parameter :: PETSC_SCALAR_DOUBLE=0
417:       PetscEnum, parameter :: PETSC_SCALAR_SINGLE=1
418:       PetscEnum, parameter :: PETSC_SCALAR_LONG_DOUBLE=2
419: !
420: !     CUSPARSE enumerated types
421: !
422: #if defined(PETSC_HAVE_CUDA)
423:       PetscEnum, parameter :: MAT_CUSPARSE_CSR=0
424:       PetscEnum, parameter :: MAT_CUSPARSE_ELL=1
425:       PetscEnum, parameter :: MAT_CUSPARSE_HYB=2
426:       PetscEnum, parameter :: MAT_CUSPARSE_MULT_DIAG=0
427:       PetscEnum, parameter :: MAT_CUSPARSE_MULT_OFFDIAG=1
428:       PetscEnum, parameter :: MAT_CUSPARSE_MULT=2
429:       PetscEnum, parameter :: MAT_CUSPARSE_ALL=3
430: #endif

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