Matrices Mat: : Examples

PETSc matrices (Mat objects) are used to store Jacobians and other sparse matrices in PDE-based (or other) simulations.

Beginner - Basic usage
MATAIJ MATSEQAIJ MatMultAdd
MATAIJMUMPS MATSEQAIJSPOOLES MatMultConstrained
MATAIJSPOOLES MATSEQBAIJ MatMultTranspose
MATBAIJ MATSEQBDIAG MatMultTransposeAdd
MATBDIAG MATSEQDENSE MatMultTransposeConstrained
MATCRL MATSEQSBAIJ MatOption
MATCSRPERM MATSEQSBAIJSPOOLES MatOrderingType
MATDENSE MATSUPERLU MatPartitioning
MATDSCPACK MATSUPERLU_DIST MatPartitioningType
MATESSL MATUMFPACK MatReuse
MATLUSOL Mat MatSORType
MATMATLAB MatAssemblyBegin MatSetFromOptions
MATMPIADJ MatAssemblyEnd MatSetSizes
MATMPIAIJ MatAssemblyType MatSetStencil
MATMPIAIJSPOOLES MatColoringType MatSetUpPreallocation
MATMPIBAIJ MatCreate MatSetValue
MATMPIBDIAG MatDestroy MatSetValues
MATMPIDENSE MatDuplicateOption MatSetValuesBlockedStencil
MATMPIROWBS MatFDColoring MatSetValuesStencil
MATMPISBAIJ MatGetLocalSize MatStencil
MATMPISBAIJSPOOLES MatGetOwnershipRange MatStructure
MATPLAPACK MatGetSize MatType
MATSBAIJ MatInfoType MatView
MATSBAIJMUMPS MatLoad
MATSBAIJSPOOLES MatMult
Intermediate - Setting options for algorithms and data structures
MATDAAD MatEqual MatPreallocateSymmetricInitialize
MatAXPY MatGetBlockSize MatPreallocateSymmetricSet
MatAYPX MatGetDiagonal MatPreallocateSymmetricSetLocal
MatConvert MatGetInfo MatPtAP
MatCopy MatGetRowMax MatPtAPNumeric
MatCreateDAAD MatGetType MatPtAPSymbolic
MatCreateLRC MatInfo MatReorderForNonzeroDiagonal
MatCreateMPIAIJ MatInterpolate MatRestrict
MatCreateMPIAdj MatInterpolateAdd MatScale
MatCreateMPIBAIJ MatIsHermitian MatSeqAIJSetPreallocation
MatCreateMPIBDiag MatIsStructurallySymmetric MatSeqBAIJSetPreallocation
MatCreateMPICRL MatIsSymmetric MatSeqBDiagSetPreallocation
MatCreateMPICSRPERM MatIsTranspose MatSeqDenseSetLDA
MatCreateMPIDense MatMPIAIJSetPreallocation MatSeqDenseSetPreallocation
MatCreateMPIRowbs MatMPIAdjSetPreallocation MatSeqSBAIJSetPreallocation
MatCreateMPISBAIJ MatMPIBAIJSetPreallocation MatSetBlockSize
MatCreateNormal MatMPIBDiagSetPreallocation MatSetLocalToGlobalMapping
MatCreateSeqAIJ MatMPIDenseSetPreallocation MatSetLocalToGlobalMappingBlock
MatCreateSeqAIJWithArrays MatMPISBAIJSetPreallocation MatSetOption
MatCreateSeqBAIJ MatMatMult MatSetType
MatCreateSeqBDiag MatMatMultNumeric MatSetValuesBlocked
MatCreateSeqCRL MatMatMultSymbolic MatSetValuesBlockedLocal
MatCreateSeqCSRPERM MatMatMultTranspose MatSetValuesLocal
MatCreateSeqDense MatMultAddEqual MatSetValuesRow
MatCreateSeqSBAIJ MatMultEqual MatSetValuesRowLocal
MatDAADSetCtx MatMultTransposeAddEqual MatShift
MatDAADSetDA MatMultTransposeEqual MatStashSetInitialSize
MatDAADSetSNES MatNorm MatTranspose
MatDenseGetLocalMatrix MatPreallocateFinalize MatZeroEntries
MatDiagonalScale MatPreallocateInitialize MatZeroRows
MatDiagonalSet MatPreallocateSet MatZeroRowsIS
MatDuplicate MatPreallocateSetLocal MatZeroRowsLocal
Advanced - Setting more advanced options and customization
MATIS MatGetSubMatrixRaw MatRegisterDAAD
MATMAIJ MatGetValues MatRegisterDestroy
MATSHELL MatGetVecs MatRegisterDynamic
MatAppendOptionsPrefix MatHasOperation MatRestoreArray
MatAssembled MatISGetLocalMat MatRestoreArrayF90
MatBDiagGetData MatImaginaryPart MatRestoreRow
MatCompress MatIsHermitianKnown MatRestoreRowUpperTriangular
MatComputeExplicitOperator MatIsSymmetricKnown MatRetrieveValues
MatConjugate MatMPIBAIJSetHashTableFactor MatSeqAIJSetColumnIndices
MatCreateIS MatMerge MatSeqBAIJInvertBlockDiagonal
MatCreateMAIJ MatMerge_SeqsToMPI MatSeqBAIJSetColumnIndices
MatCreateShell MatNullSpace MatSeqSBAIJSetColumnIndices
MatDestroyMatrices MatNullSpaceCreate MatSetOptionsPrefix
MatGetArray MatNullSpaceDestroy MatSetUp
MatGetArrayF90 MatNullSpaceRemove MatShellGetContext
MatGetColumnVector MatNullSpaceSetFunction MatShellGetOperation
MatGetInertia MatNullSpaceTest MatShellSetContext
MatGetOptionsPrefix MatPermute MatShellSetOperation
MatGetRow MatPermuteSparsify MatStashGetInfo
MatGetRowUpperTriangular MatRealPart MatStoreValues
MatGetSubMatrices MatRegister
MatGetSubMatrix MatRegisterAll
Developer - Interfaces intended primarily for library developers, not for typical applications programmers
MatCholeskyCheckShift_inline MatICCFactorSymbolic MatRestoreColumnIJ
MatCholeskyFactor MatILUDTFactor MatRestoreRowIJ
MatCholeskyFactorNumeric MatILUFactor MatScaleSystem
MatCholeskyFactorSymbolic MatILUFactorSymbolic MatSeqAIJSetPreallocationCSR
MatColoringPatch MatIncreaseOverlap MatSetColoring
MatColoringRegisterDynamic MatInitializePackage MatSetUnfactored
MatConvertRegister MatLUCheckShift_inline MatSetValuesAdic
MatConvertRegisterAll MatLUFactor MatSetValuesAdifor
MatDiagonalScaleLocal MatLUFactorNumeric MatSolve
MatFactorInfo MatLUFactorSymbolic MatSolveAdd
MatFactorInfoInitialize MatMPIAIJSetPreallocationCSR MatSolveTranspose
MatGetBrowsOfAcols MatMPIBAIJSetPreallocationCSR MatSolveTransposeAdd
MatGetBrowsOfAoCols MatMatSolve MatSolves
MatGetColumnIJ MatNullSpaceAttach MatUnScaleSystem
MatGetCommunicationStructs MatOrderingRegisterDynamic MatUseScaledForm
MatGetLocalMat MatPBRelax MatValid
MatGetLocalMatCondensed MatPartitioningRegisterDynamic Mat_CheckCompressedRow
MatGetRowIJ MatPrintHelp
MatICCFactor MatRelax

Table of Contents