Remove unneeded blank lines
Rework MAT_SYMMETRIC and MAT_HERMITIAN options
- Replace MatMissingDiagonal() and MatMarkDiagonals_SeqXXX() with MatGetDiagonalMarkers_SeqXXX() - Mat_SeqXXX->diag is not automatically created during MatAssemblyEnd() saving memory and time
- Replace MatMissingDiagonal() and MatMarkDiagonals_SeqXXX() with MatGetDiagonalMarkers_SeqXXX() - Mat_SeqXXX->diag is not automatically created during MatAssemblyEnd() saving memory and time - Accessing Mat_SeqXXX->diag now requires the use of MatGetDiagonalMarkers_SeqXXX() except when the current values are known to be correct; for example during numerical factorizations and solves - Mat_SeqXXX->diag is now never shared among matrices; hence the free_diag flag is gone. That was always a risky proposition since any of the owning matrices could chang the values thus making them incorrect for other owners.
show more ...
checkbadSource: enforce proper style in makefiles
Convert some SETERRQ() to PetscCheck()
missing "s" for isascii and issundials
Mat: Improve the usability of constantdiagonal and diagonal matricesMat_ConstantDiagonal: Add MatConstantDiagonalGetConstant() and implement conjugate and transposeMat_Diagonal: Add missing setra
Mat: Improve the usability of constantdiagonal and diagonal matricesMat_ConstantDiagonal: Add MatConstantDiagonalGetConstant() and implement conjugate and transposeMat_Diagonal: Add missing setrandom, conjugate, and transpose methodsMatView: Don't print MatInfo for constantdiagonal or diagonal matrices
Remove useless functions
added missing MATCONSTANTDIAGONAL documentation entry
Remove multiple parentheses and extra semicolongit grep -l -E "\(\([a-zA-Z0-9_]+\)\(\*[a-zA-Z0-9_]+\)[, )]" | xargs sed -r -i'' 's#\(\(([a-zA-Z0-9_]+)\)\(\*([a-zA-Z0-9_]+)\)([, )])#\(\(\1\)\*\2\3#g
Remove multiple parentheses and extra semicolongit grep -l -E "\(\([a-zA-Z0-9_]+\)\(\*[a-zA-Z0-9_]+\)[, )]" | xargs sed -r -i'' 's#\(\(([a-zA-Z0-9_]+)\)\(\*([a-zA-Z0-9_]+)\)([, )])#\(\(\1\)\*\2\3#g'git grep -l -E "Petsc(.)*\(\(\*[a-zA-Z0-9_]*\)," | xargs sed -r -i'' 's#Petsc([a-zA-Z0-9_]*)\(\(\*([a-zA-Z0-9_]*)\), #Petsc\1(*\2, #g'git grep -l -E "([\!\&\~\*\(]|\)\)|\([^,\*\(]+\**\))\(([a-zA-Z0-9_]+((\.|->)[a-zA-Z0-9_]+|\[[a-zA-Z0-9_ \%\+\*\-]+\])+)\)" | xargs sed -r -i'' 's#([\!\&\~\*\(]|\)\)|\([^,\*\(]+\**\))\(([a-zA-Z0-9_]+((\.|->)[a-zA-Z0-9_]+|\[[a-zA-Z0-9_ \%\+\*\-]+\])+)\)#\1\2#g'
LIBBASE is no longer used in make so remove it
Rename rules.doc and rules.utils because GitLab treats the former as a MS Word document.Thanks-to: Jed Brown
Remove first and last empty lines
MatRestoreRow(): avoid duplicated operations
Add static to internal functions
Lint apply: mat
Merge remote-tracking branch 'origin/release'
change to consistent use of ch_xxx for chapter names in the docs, instead of a mix of ch_xx and chapter_xx
Add `MATDIAGONAL` and `PCMatSetApplyOperation()``MATDIAGONAL` (`MatCreateDiagonal()`) is an interface formanipulating a diagonal matrix as a `Vec`, in particular supportingno-copy modification of
Add `MATDIAGONAL` and `PCMatSetApplyOperation()``MATDIAGONAL` (`MatCreateDiagonal()`) is an interface formanipulating a diagonal matrix as a `Vec`, in particular supportingno-copy modification of the diagonal and inverse diagonal via`MatDiagonalGetDiagonal()`, `MatDiagonalRestoreDiagonal()`,`MatDiagonalGetInverseDiagonal()`, and`MatDiagonalRestoreInverseDiagonal`().`PCMatSetApplyOperation()` and `PCMatGetApplyOperation()`support using all the linear operators currently defined by a `Mat`(`MatMult()`, `MatMultTranspose()`, `MatMultHermitianTranspose()`,`MatSolve()`, `MatSolveTranspose()`) as the operation of `PCApply()`for a `PCMAT`. The advantage over a `PCSHELL` is that the otheroperations (`PCApplyTranspose()`, `PCMatApply()`) are automaticallyinferred.These tools help make it easier to route operations like`VecPointwiseMult()` and `VecPointwiseDivide()` through`KSPSolve()` to avoid handling diagonal matrices as a specialcase (a pattern that is going to be removed from `MATLMVM`).
non-test and tutorial makefiles only need rules.doc not the full rulesCommit-type: documentation
Only makefiles in the test and tutorial directories need lib/petsc/conf/testCommit-type: housekeeping
Remove now unneeded SOURCE* variables from makefilesCommit-type: configure, housekeeping
Remove empty preprocessor variables
Cleanup of mat manual pagesCommit-type: documentation
Remove unneeded declarations of LOCDIR from all the makefilesCommit-type:documentation
12