Actual source code: petscmat.h

  1: !
  2: !
  3: !  Include file for Fortran use of the Mat package in PETSc
  4: !
 5:  #include finclude/petscmatdef.h

  7: !
  8: !  Flag for matrix assembly
  9: !
 10:       PetscEnum MAT_FLUSH_ASSEMBLY
 11:       PetscEnum MAT_FINAL_ASSEMBLY

 13:       parameter(MAT_FLUSH_ASSEMBLY=1,MAT_FINAL_ASSEMBLY=0)
 14: !
 15: !
 16: !
 17:       PetscEnum MAT_FACTOR_NONE
 18:       PetscEnum MAT_FACTOR_LU
 19:       PetscEnum MAT_FACTOR_CHOLESKY
 20:       PetscEnum MAT_FACTOR_ILU
 21:       PetscEnum MAT_FACTOR_ICC

 23:       parameter(MAT_FACTOR_NONE=0,MAT_FACTOR_LU=1)
 24:       parameter(MAT_FACTOR_CHOLESKY=2,MAT_FACTOR_ILU=3)
 25:       parameter(MAT_FACTOR_ICC=4)

 27: ! MatGetSubMatrixOption
 28:       PetscEnum MAT_DO_NOT_GET_VALUES
 29:       PetscEnum MAT_GET_VALUES
 30:       parameter(MAT_DO_NOT_GET_VALUES=0,MAT_GET_VALUES=1)
 31: 
 32: !
 33: !  Matrix options; must match those in include/petscmat.h
 34: !
 35:       PetscEnum MAT_ROW_ORIENTED
 36:       PetscEnum MAT_NEW_NONZERO_LOCATIONS
 37:       PetscEnum MAT_SYMMETRIC
 38:       PetscEnum MAT_STRUCTURALLY_SYMMETRIC
 39:       PetscEnum MAT_NEW_DIAGONALS
 40:       PetscEnum MAT_IGNORE_OFF_PROC_ENTRIES
 41:       PetscEnum MAT_NEW_NONZERO_LOCATION_ERR
 42:       PetscEnum MAT_NEW_NONZERO_ALLOCATION_ERR
 43:       PetscEnum MAT_USE_HASH_TABLE
 44:       PetscEnum MAT_KEEP_ZEROED_ROWS
 45:       PetscEnum MAT_IGNORE_ZERO_ENTRIES
 46:       PetscEnum MAT_USE_INODES
 47:       PetscEnum MAT_HERMITIAN
 48:       PetscEnum MAT_SYMMETRY_ETERNAL
 49:       PetscEnum MAT_USE_COMPRESSEDROW
 50:       PetscEnum MAT_IGNORE_LOWER_TRIANGULAR
 51:       PetscEnum MAT_ERROR_LOWER_TRIANGULAR
 52:       PetscEnum MAT_GETROW_UPPERTRIANGULAR
 53:       PetscEnum MAT_UNUSED_NONZERO_LOCATION_ERR
 54:       PetscEnum NUM_MAT_OPTIONS

 56:       parameter (MAT_ROW_ORIENTED=0)
 57:       parameter (MAT_NEW_NONZERO_LOCATIONS=1)
 58:       parameter (MAT_SYMMETRIC=2,MAT_STRUCTURALLY_SYMMETRIC=3)
 59:       parameter (MAT_NEW_DIAGONALS=4)
 60:       parameter (MAT_IGNORE_OFF_PROC_ENTRIES=5)
 61:       parameter (MAT_NEW_NONZERO_LOCATION_ERR=6)
 62:       parameter (MAT_NEW_NONZERO_ALLOCATION_ERR=7)
 63:       parameter (MAT_USE_HASH_TABLE=8)
 64:       parameter (MAT_KEEP_ZEROED_ROWS=9)
 65:       parameter (MAT_IGNORE_ZERO_ENTRIES=10)
 66:       parameter (MAT_USE_INODES=11)
 67:       parameter (MAT_HERMITIAN=12)
 68:       parameter (MAT_SYMMETRY_ETERNAL=13)
 69:       parameter (MAT_USE_COMPRESSEDROW=14)
 70:       parameter (MAT_IGNORE_LOWER_TRIANGULAR=15)
 71:       parameter (MAT_ERROR_LOWER_TRIANGULAR=16)
 72:       parameter (MAT_GETROW_UPPERTRIANGULAR=17)
 73:       parameter (MAT_UNUSED_NONZERO_LOCATION_ERR=18)
 74:       parameter (NUM_MAT_OPTIONS=19)
 75: 
 76: !
 77: !  MatDuplicateOption
 78: !
 79:       PetscEnum MAT_DO_NOT_COPY_VALUES
 80:       PetscEnum MAT_COPY_VALUES
 81:       parameter (MAT_DO_NOT_COPY_VALUES=0,MAT_COPY_VALUES=1)
 82: !
 83: !  Flags for PCSetOperators()
 84: !
 85:       PetscEnum SAME_NONZERO_PATTERN
 86:       PetscEnum DIFFERENT_NONZERO_PATTERN
 87:       PetscEnum SAME_PRECONDITIONER
 88:       PetscEnum SUBSET_NONZERO_PATTERN

 90:       parameter (SAME_NONZERO_PATTERN = 0,DIFFERENT_NONZERO_PATTERN = 1)
 91:       parameter (SAME_PRECONDITIONER = 2,SUBSET_NONZERO_PATTERN=3)

 93: !
 94: !  Note: MAT_INFO_SIZE must equal # elements in MatInfo structure
 95: !  (See petsc/include/petscmat.h)
 96: !
 97:       PetscEnum MAT_INFO_SIZE

 99:       parameter (MAT_INFO_SIZE=10)

101:       PetscEnum MAT_INFO_BLOCK_SIZE
102:       PetscEnum MAT_INFO_NZ_ALLOCATED
103:       PetscEnum MAT_INFO_NZ_USED
104:       PetscEnum MAT_INFO_NZ_UNNEEDED
105:       PetscEnum MAT_INFO_MEMORY
106:       PetscEnum MAT_INFO_ASSEMBLIES
107:       PetscEnum MAT_INFO_MALLOCS
108:       PetscEnum MAT_INFO_FILL_RATIO_GIVEN
109:       PetscEnum MAT_INFO_FILL_RATIO_NEEDED
110:       PetscEnum MAT_INFO_FACTOR_MALLOCS

112:       parameter (MAT_INFO_BLOCK_SIZE=1,MAT_INFO_NZ_ALLOCATED=2)
113:       parameter (MAT_INFO_NZ_USED=3,MAT_INFO_NZ_UNNEEDED=4)
114:       parameter (MAT_INFO_MEMORY=5,MAT_INFO_ASSEMBLIES=6)
115:       parameter (MAT_INFO_MALLOCS=7,MAT_INFO_FILL_RATIO_GIVEN=8)
116:       parameter (MAT_INFO_FILL_RATIO_NEEDED=9)
117:       parameter (MAT_INFO_FACTOR_MALLOCS=10)
118: !
119: !  MatReuse
120: !
121:       PetscEnum MAT_INITIAL_MATRIX
122:       PetscEnum MAT_REUSE_MATRIX

124:       parameter (MAT_INITIAL_MATRIX=0,MAT_REUSE_MATRIX=1)

126: !
127: !  MatInfoType
128: !
129:       PetscEnum MAT_LOCAL
130:       PetscEnum MAT_GLOBAL_MAX
131:       PetscEnum MAT_GLOBAL_SUM

133:       parameter (MAT_LOCAL=1,MAT_GLOBAL_MAX=2,MAT_GLOBAL_SUM=3)

135: !
136: !  MatCompositeType
137: !
138:       PetscEnum MAT_COMPOSITE_ADDITIVE
139:       PetscEnum MAT_COMPOSITE_MULTIPLICATIVE

141:       parameter (MAT_COMPOSITE_ADDITIVE = 0)
142:       parameter (MAT_COMPOSITE_MULTIPLICATIVE = 1)
143: !
144: !
145: !  Note: MAT_FACTORINFO_SIZE must equal # elements in MatFactorInfo structure
146: !  (See petsc/include/petscmat.h)
147: !
148:       PetscEnum MAT_FACTORINFO_SIZE

150:       parameter (MAT_FACTORINFO_SIZE=11)

152:       PetscEnum MAT_FACTORINFO_LEVELS
153:       PetscEnum MAT_FACTORINFO_FILL
154:       PetscEnum MAT_FACTORINFO_DIAGONAL_FILL
155:       PetscEnum MAT_FACTORINFO_DT
156:       PetscEnum MAT_FACTORINFO_DTCOL
157:       PetscEnum MAT_FACTORINFO_DTCOUNT
158:       PetscEnum MAT_FACTORINFO_DAMPING
159:       PetscEnum MAT_FACTORINFO_SHIFT
160:       PetscEnum MAT_FACTORINFO_ZERO_PIVOT
161:       PetscEnum MAT_FACTORINFO_PIVOT_IN_BLOCKS

163:       parameter (MAT_FACTORINFO_DAMPING = 1)
164:       parameter (MAT_FACTORINFO_SHIFT = 2)
165:       parameter (MAT_FACTORINFO_DIAGONAL_FILL = 3)
166:       parameter (MAT_FACTORINFO_DT = 4)
167:       parameter (MAT_FACTORINFO_DTCOL = 5)
168:       parameter (MAT_FACTORINFO_DTCOUNT = 6)
169:       parameter (MAT_FACTORINFO_LEVELS = 7)
170:       parameter (MAT_FACTORINFO_FILL = 8)
171:       parameter (MAT_FACTORINFO_PIVOT_IN_BLOCKS = 9)
172:       parameter (MAT_FACTORINFO_ZERO_PIVOT = 10)


175: !
176: !  Options for SOR and SSOR
177: !  MatSorType may be bitwise ORd together, so do not change the numbers
178: !
179:       PetscEnum SOR_FORWARD_SWEEP
180:       PetscEnum SOR_BACKWARD_SWEEP
181:       PetscEnum SOR_SYMMETRIC_SWEEP
182:       PetscEnum SOR_LOCAL_FORWARD_SWEEP
183:       PetscEnum SOR_LOCAL_BACKWARD_SWEEP
184:       PetscEnum SOR_LOCAL_SYMMETRIC_SWEEP
185:       PetscEnum SOR_ZERO_INITIAL_GUESS
186:       PetscEnum SOR_EISENSTAT
187:       PetscEnum SOR_APPLY_UPPER
188:       PetscEnum SOR_APPLY_LOWER

190:       parameter (SOR_FORWARD_SWEEP=1,SOR_BACKWARD_SWEEP=2)
191:       parameter (SOR_SYMMETRIC_SWEEP=3,SOR_LOCAL_FORWARD_SWEEP=4)
192:       parameter (SOR_LOCAL_BACKWARD_SWEEP=8)
193:       parameter (SOR_LOCAL_SYMMETRIC_SWEEP=12)
194:       parameter (SOR_ZERO_INITIAL_GUESS=16,SOR_EISENSTAT=32)
195:       parameter (SOR_APPLY_UPPER=64,SOR_APPLY_LOWER=128)
196: !
197: !  MatOperation
198: !
199:       PetscEnum MATOP_SET_VALUES
200:       PetscEnum MATOP_GET_ROW
201:       PetscEnum MATOP_RESTORE_ROW
202:       PetscEnum MATOP_MULT
203:       PetscEnum MATOP_MULT_ADD
204:       PetscEnum MATOP_MULT_TRANSPOSE
205:       PetscEnum MATOP_MULT_TRANSPOSE_ADD
206:       PetscEnum MATOP_SOLVE
207:       PetscEnum MATOP_SOLVE_ADD
208:       PetscEnum MATOP_SOLVE_TRANSPOSE
209:       PetscEnum MATOP_SOLVE_TRANSPOSE_ADD
210:       PetscEnum MATOP_LUFACTOR
211:       PetscEnum MATOP_CHOLESKYFACTOR
212:       PetscEnum MATOP_RELAX
213:       PetscEnum MATOP_TRANSPOSE
214:       PetscEnum MATOP_GETINFO
215:       PetscEnum MATOP_EQUAL
216:       PetscEnum MATOP_GET_DIAGONAL
217:       PetscEnum MATOP_DIAGONAL_SCALE
218:       PetscEnum MATOP_NORM
219:       PetscEnum MATOP_ASSEMBLY_BEGIN
220:       PetscEnum MATOP_ASSEMBLY_END
221:       PetscEnum MATOP_COMPRESS
222:       PetscEnum MATOP_SET_OPTION
223:       PetscEnum MATOP_ZERO_ENTRIES
224:       PetscEnum MATOP_ZERO_ROWS
225:       PetscEnum MATOP_LUFACTOR_SYMBOLIC
226:       PetscEnum MATOP_LUFACTOR_NUMERIC
227:       PetscEnum MATOP_CHOLESKY_FACTOR_SYMBOLIC
228:       PetscEnum MATOP_CHOLESKY_FACTOR_NUMERIC
229:       PetscEnum MATOP_SETUP_PREALLOCATION
230:       PetscEnum MATOP_ILUFACTOR_SYMBOLIC
231:       PetscEnum MATOP_ICCFACTOR_SYMBOLIC
232:       PetscEnum MATOP_GET_ARRAY
233:       PetscEnum MATOP_RESTORE_ARRAY

235:       PetscEnum MATOP_DUPLICATE
236:       PetscEnum MATOP_FORWARD_SOLVE
237:       PetscEnum MATOP_BACKWARD_SOLVE
238:       PetscEnum MATOP_ILUFACTOR
239:       PetscEnum MATOP_ICCFACTOR
240:       PetscEnum MATOP_AXPY
241:       PetscEnum MATOP_GET_SUBMATRICES
242:       PetscEnum MATOP_INCREASE_OVERLAP
243:       PetscEnum MATOP_GET_VALUES
244:       PetscEnum MATOP_COPY
245:       PetscEnum MATOP_GET_ROW_MAX
246:       PetscEnum MATOP_SCALE
247:       PetscEnum MATOP_SHIFT
248:       PetscEnum MATOP_DIAGONAL_SHIFT
249:       PetscEnum MATOP_ILUDT_FACTOR
250:       PetscEnum MATOP_SET_BLOCK_SIZE

252:       PetscEnum MATOP_GET_ROW_IJ
253:       PetscEnum MATOP_RESTORE_ROW_IJ
254:       PetscEnum MATOP_GET_COLUMN_IJ
255:       PetscEnum MATOP_RESTORE_COLUMN_IJ
256:       PetscEnum MATOP_FDCOLORING_CREATE
257:       PetscEnum MATOP_COLORING_PATCH
258:       PetscEnum MATOP_SET_UNFACTORED
259:       PetscEnum MATOP_PERMUTE
260:       PetscEnum MATOP_SET_VALUES_BLOCKED
261:       PetscEnum MATOP_GET_SUBMATRIX
262:       PetscEnum MATOP_DESTROY
263:       PetscEnum MATOP_VIEW
264:       PetscEnum MATOP_CONVERT_FROM
265:       PetscEnum MATOP_USE_SCALED_FORM
266:       PetscEnum MATOP_SCALE_SYSTEM
267:       PetscEnum MATOP_UNSCALE_SYSTEM
268:       PetscEnum MATOP_SET_LOCAL_TO_GLOBAL_MAP
269:       PetscEnum MATOP_SET_VALUES_LOCAL
270:       PetscEnum MATOP_ZERO_ROWS_LOCAL
271:       PetscEnum MATOP_GET_ROW_MAX_ABS
272:       PetscEnum MATOP_GET_ROW_MIN_ABS
273:       PetscEnum MATOP_CONVERT
274:       PetscEnum MATOP_SET_COLORING
275:       PetscEnum MATOP_SET_VALUES_ADIC
276:       PetscEnum MATOP_SET_VALUES_ADIFOR
277:       PetscEnum MATOP_FD_COLORING_APPLY
278:       PetscEnum MATOP_SET_FROM_OPTIONS
279:       PetscEnum MATOP_MULT_CON
280:       PetscEnum MATOP_MULT_TRANSPOSE_CON
281:       PetscEnum MATOP_PERMUTE_SPARSIFY
282:       PetscEnum MATOP_MULT_MULTIPLE
283:       PetscEnum MATOP_SOLVE_MULTIPLE
284:       PetscEnum MATOP_GET_INERTIA
285:       PetscEnum MATOP_LOAD
286:       PetscEnum MATOP_IS_SYMMETRIC
287:       PetscEnum MATOP_IS_HERMITIAN
288:       PetscEnum MATOP_IS_STRUCTURALLY_SYMMETRIC
289:       PetscEnum MATOP_PB_RELAX
290:       PetscEnum MATOP_GET_VECS
291:       PetscEnum MATOP_MAT_MULT
292:       PetscEnum MATOP_MAT_MULT_SYMBOLIC
293:       PetscEnum MATOP_MAT_MULT_NUMERIC
294:       PetscEnum MATOP_PTAP
295:       PetscEnum MATOP_PTAP_SYMBOLIC
296:       PetscEnum MATOP_PTAP_NUMERIC
297:       PetscEnum MATOP_MAT_MULT_TRANSPOSE
298:       PetscEnum MATOP_MAT_MULT_TRANSPOSE_SYM
299:       PetscEnum MATOP_MAT_MULT_TRANSPOSE_NUM
300:       PetscEnum MATOP_PTAP_SYMBOLIC_SEQAIJ
301:       PetscEnum MATOP_PTAP_NUMERIC_SEQAIJ
302:       PetscEnum MATOP_PTAP_SYMBOLIC_MPIAIJ
303:       PetscEnum MATOP_PTAP_NUMERIC_MPIAIJ
304:       PetscEnum MATOP_CONJUGATE
305:       PetscEnum MATOP_SET_SIZES
306:       PetscEnum MATOP_SET_VALUES_ROW
307:       PetscEnum MATOP_REAL_PART
308:       PetscEnum MATOP_IMAG_PART
309:       PetscEnum MATOP_GET_ROW_UTRIANGULAR
310:       PetscEnum MATOP_RESTORE_ROW_UTRIANGULAR
311:       PetscEnum MATOP_MATSOLVE
312:       PetscEnum MATOP_GET_REDUNDANTMATRIX
313:       PetscEnum MATOP_GET_ROW_MIN
314:       PetscEnum MATOP_GET_COLUMN_VEC
315:       PetscEnum MATOP_MISSING_DIAGONAL
316:       PetscEnum MATOP_MATGETSEQNONZEROSTRUCTURE
317:       PetscEnum MATOP_DESTROY_SOLVER
318: 
319:       parameter(MATOP_SET_VALUES=0)
320:       parameter(MATOP_GET_ROW=1)
321:       parameter(MATOP_RESTORE_ROW=2)
322:       parameter(MATOP_MULT=3)
323:       parameter(MATOP_MULT_ADD=4)
324:       parameter(MATOP_MULT_TRANSPOSE=5)
325:       parameter(MATOP_MULT_TRANSPOSE_ADD=6)
326:       parameter(MATOP_SOLVE=7)
327:       parameter(MATOP_SOLVE_ADD=8)
328:       parameter(MATOP_SOLVE_TRANSPOSE=9)
329:       parameter(MATOP_SOLVE_TRANSPOSE_ADD=10)
330:       parameter(MATOP_LUFACTOR=11)
331:       parameter(MATOP_CHOLESKYFACTOR=12)
332:       parameter(MATOP_RELAX=13)
333:       parameter(MATOP_TRANSPOSE=14)
334:       parameter(MATOP_GETINFO=15)
335:       parameter(MATOP_EQUAL=16)
336:       parameter(MATOP_GET_DIAGONAL=17)
337:       parameter(MATOP_DIAGONAL_SCALE=18)
338:       parameter(MATOP_NORM=19)
339:       parameter(MATOP_ASSEMBLY_BEGIN=20)
340:       parameter(MATOP_ASSEMBLY_END=21)
341:       parameter(MATOP_COMPRESS=22)
342:       parameter(MATOP_SET_OPTION=23)
343:       parameter(MATOP_ZERO_ENTRIES=24)
344:       parameter(MATOP_ZERO_ROWS=25)
345:       parameter(MATOP_LUFACTOR_SYMBOLIC=26)
346:       parameter(MATOP_LUFACTOR_NUMERIC=27)
347:       parameter(MATOP_CHOLESKY_FACTOR_SYMBOLIC=28)
348:       parameter(MATOP_CHOLESKY_FACTOR_NUMERIC=29)
349:       parameter(MATOP_SETUP_PREALLOCATION=30)
350:       parameter(MATOP_ILUFACTOR_SYMBOLIC=31)
351:       parameter(MATOP_ICCFACTOR_SYMBOLIC=32)
352:       parameter(MATOP_GET_ARRAY=33)
353:       parameter(MATOP_RESTORE_ARRAY=34)
354:       parameter(MATOP_DUPLICATE=35)
355:       parameter(MATOP_FORWARD_SOLVE=36)
356:       parameter(MATOP_BACKWARD_SOLVE=37)
357:       parameter(MATOP_ILUFACTOR=38)
358:       parameter(MATOP_ICCFACTOR=39)
359:       parameter(MATOP_AXPY=40)
360:       parameter(MATOP_GET_SUBMATRICES=41)
361:       parameter(MATOP_INCREASE_OVERLAP=42)
362:       parameter(MATOP_GET_VALUES=43)
363:       parameter(MATOP_COPY=44)
364:       parameter(MATOP_GET_ROW_MAX=45)
365:       parameter(MATOP_SCALE=46)
366:       parameter(MATOP_SHIFT=47)
367:       parameter(MATOP_DIAGONAL_SHIFT=48)
368:       parameter(MATOP_ILUDT_FACTOR=49)
369:       parameter(MATOP_SET_BLOCK_SIZE=50)
370:       parameter(MATOP_GET_ROW_IJ=51)
371:       parameter(MATOP_RESTORE_ROW_IJ=52)
372:       parameter(MATOP_GET_COLUMN_IJ=53)
373:       parameter(MATOP_RESTORE_COLUMN_IJ=54)
374:       parameter(MATOP_FDCOLORING_CREATE=55)
375:       parameter(MATOP_COLORING_PATCH=56)
376:       parameter(MATOP_SET_UNFACTORED=57)
377:       parameter(MATOP_PERMUTE=58)
378:       parameter(MATOP_SET_VALUES_BLOCKED=59)
379:       parameter(MATOP_GET_SUBMATRIX=60)
380:       parameter(MATOP_DESTROY=61)
381:       parameter(MATOP_VIEW=62)
382:       parameter(MATOP_CONVERT_FROM=63)
383:       parameter(MATOP_USE_SCALED_FORM=64)
384:       parameter(MATOP_SCALE_SYSTEM=65)
385:       parameter(MATOP_UNSCALE_SYSTEM=66)
386:       parameter(MATOP_SET_LOCAL_TO_GLOBAL_MAP=67)
387:       parameter(MATOP_SET_VALUES_LOCAL=68)
388:       parameter(MATOP_ZERO_ROWS_LOCAL=69)
389:       parameter(MATOP_GET_ROW_MAX_ABS=70)
390:       parameter(MATOP_GET_ROW_MIN_ABS=71)
391:       parameter(MATOP_CONVERT=72)
392:       parameter(MATOP_SET_COLORING=73)
393:       parameter(MATOP_SET_VALUES_ADIC=74)
394:       parameter(MATOP_SET_VALUES_ADIFOR=75)
395:       parameter(MATOP_FD_COLORING_APPLY=76)
396:       parameter(MATOP_SET_FROM_OPTIONS=77)
397:       parameter(MATOP_MULT_CON=78)
398:       parameter(MATOP_MULT_TRANSPOSE_CON=79)
399:       parameter(MATOP_PERMUTE_SPARSIFY=80)
400:       parameter(MATOP_MULT_MULTIPLE=81)
401:       parameter(MATOP_SOLVE_MULTIPLE=82)
402:       parameter(MATOP_GET_INERTIA=83)
403:       parameter(MATOP_LOAD=84)
404:       parameter(MATOP_IS_SYMMETRIC=85)
405:       parameter(MATOP_IS_HERMITIAN=86)
406:       parameter(MATOP_IS_STRUCTURALLY_SYMMETRIC=87)
407:       parameter(MATOP_PB_RELAX=88)
408:       parameter(MATOP_GET_VECS=89)
409:       parameter(MATOP_MAT_MULT=90)
410:       parameter(MATOP_MAT_MULT_SYMBOLIC=91)
411:       parameter(MATOP_MAT_MULT_NUMERIC=92)
412:       parameter(MATOP_PTAP=93)
413:       parameter(MATOP_PTAP_SYMBOLIC=94)
414:       parameter(MATOP_PTAP_NUMERIC=95)
415:       parameter(MATOP_MAT_MULT_TRANSPOSE=96)
416:       parameter(MATOP_MAT_MULT_TRANSPOSE_SYM=97)
417:       parameter(MATOP_MAT_MULT_TRANSPOSE_NUM=98)
418:       parameter(MATOP_PTAP_SYMBOLIC_SEQAIJ=99)
419:       parameter(MATOP_PTAP_NUMERIC_SEQAIJ=100)
420:       parameter(MATOP_PTAP_SYMBOLIC_MPIAIJ=101)
421:       parameter(MATOP_PTAP_NUMERIC_MPIAIJ=102)
422:       parameter(MATOP_CONJUGATE=103)
423:       parameter(MATOP_SET_SIZES=104)
424:       parameter(MATOP_SET_VALUES_ROW=105)
425:       parameter(MATOP_REAL_PART=106)
426:       parameter(MATOP_IMAG_PART=107)
427:       parameter(MATOP_GET_ROW_UTRIANGULAR=108)
428:       parameter(MATOP_RESTORE_ROW_UTRIANGULAR=109)
429:       parameter(MATOP_MATSOLVE=110)
430:       parameter(MATOP_GET_REDUNDANTMATRIX=111)
431:       parameter(MATOP_GET_ROW_MIN=112)
432:       parameter(MATOP_GET_COLUMN_VEC=113)
433:       parameter(MATOP_MISSING_DIAGONAL=114)
434:       parameter(MATOP_MATGETSEQNONZEROSTRUCTURE=115)
435:       parameter(MATOP_DESTROY_SOLVER=116)
436: !
437: !
438: !
439:       PetscEnum MATRIX_BINARY_FORMAT_DENSE
440:       parameter (MATRIX_BINARY_FORMAT_DENSE=-1)
441: !
442: ! MPChacoGlobalType
443:       PetscEnum MP_CHACO_MULTILEVEL_KL
444:       PetscEnum MP_CHACO_SPECTRAL
445:       PetscEnum MP_CHACO_LINEAR
446:       PetscEnum MP_CHACO_RANDOM
447:       PetscEnum MP_CHACO_SCATTERED
448:       parameter (MP_CHACO_MULTILEVEL_KL=0,MP_CHACO_SPECTRAL=1)
449:       parameter (MP_CHACO_LINEAR=2,MP_CHACO_RANDOM=3)
450:       parameter (MP_CHACO_SCATTERED=4)
451: !
452: ! MPChacoLocalType
453:       PetscEnum MP_CHACO_KERNIGHAN_LIN
454:       PetscEnum MP_CHACO_NONE
455:       parameter (MP_CHACO_KERNIGHAN_LIN=0, MP_CHACO_NONE=1)
456: !
457: ! MPChacoEigenType
458:       PetscEnum MP_CHACO_LANCZOS
459:       PetscEnum MP_CHACO_RQI_SYMMLQ
460:       parameter (MP_CHACO_LANCZOS=0, MP_CHACO_RQI_SYMMLQ=1)
461: !
462: ! MPScotchGlobalType
463:       PetscEnum MP_SCOTCH_GREEDY
464:       PetscEnum MP_SCOTCH_GPS
465:       PetscEnum MP_SCOTCH_GR_GPS
466:       parameter (MP_SCOTCH_GREEDY=0,MP_SCOTCH_GPS=1,MP_SCOTCH_GR_GPS=2)

468: ! MPScotchLocalType
469:       PetscEnum MP_SCOTCH_KERNIGHAN_LIN
470:       PetscEnum MP_SCOTCH_NONE
471:       parameter (MP_SCOTCH_KERNIGHAN_LIN=0, MP_SCOTCH_NONE=1)

473: ! PetscScalarPrecision
474:       PetscEnum PETSC_SCALAR_DOUBLE
475:       PetscEnum PETSC_SCALAR_SINGLE
476:       PetscEnum PETSC_SCALAR_LONG_DOUBLE
477:       parameter (PETSC_SCALAR_DOUBLE=0,PETSC_SCALAR_SINGLE=1)
478:       parameter (PETSC_SCALAR_LONG_DOUBLE=2)

480: !
481: !  End of Fortran include file for the Mat package in PETSc
482: !