- 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 ...
Mat: add ops for zerorowscolumnslocal
distinguish Boolean and IntegerMPI_Comm_get_attr has PetscMPIInt as flag argument, not PetscBool. Namethis flag "iflg" (was used somewhere already).Use MPI_LAND instead of MPI_BAND for logical op
distinguish Boolean and IntegerMPI_Comm_get_attr has PetscMPIInt as flag argument, not PetscBool. Namethis flag "iflg" (was used somewhere already).Use MPI_LAND instead of MPI_BAND for logical operations instead ofMPI_MIN, MPI_MAX, and MPI_LAND.Note: Most of the previous code was probably working as intended, I didthe changes when debugging error related to the use of standard C Bool andkept them because it took me a while to understand that MPI has integerflags and PETSc has Booleans. Using different names makes this clear,but was and is not done consistently.
missing "s" for isascii and issundials
Fix compilation warning in matelem from !8505
MatOps cleanup
MatSetOption: ignore unused options instead of erroring out
Add MatCopyHashToXAIJ() to copy hash table entries into an XAIJ matrix type
Use NULL or nullptr instead of casted 0
Merge branch 'jczhang/2024-09-05/feature-mat-get-vpb' into 'main'PC: add new mat ops MATOP_GET_{BLOCK, VBLOCK}_DIAGONALSee merge request petsc/petsc!7811
Fix MPIU_* routines to always return MPI error codes and thus be usable with PetscCallMPI()Introduce MPIU_Count to be used when MPI_Count is not available
PC: add new mat ops MATOP_GET_{BLOCK, VBLOCK}_DIAGONALso that a shell matrix can return its own (variable) point blocks in a matrix for use in PC (V)PBJacobi
Fix usage of deprecated PETSC_DEFAULT
Mat: fix -Wmissing-field-initializers
MatSolverTypeRegister: switch to PETSC_INTERN
Trivial fix to MatSetValuesBlocked() manual page, spelling and spacing
Mat: GetAbsSum (l1) row norms; PCJacobi: add scaled L1 diagonal approximation
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
Add static to internal functions
Don't use PetscMemcpy() or PetscArraycpy() to copy the ops struct
Fix -Wzero-as-null-pointer-constant + El warnings
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
12345678910