Revert "replace 'const MatFactorInfo' -> 'MatFactorInfo'"This reverts commit af48bdc5724c729ddc55b84e8afd48f344de3945.
add "Mat fact" as an input to MatPivotCheck() for setting errortype into matrix fact
replace 'const MatFactorInfo' -> 'MatFactorInfo'
added many checks for integer overflow in symbolic factorization and symbolic matrix matrix multiplication
replace 'const MatFactorInfo' to 'MatFactorInfo' in MatFactor routines
Merge branch 'master' into barry/petscoptions-object
Complete update to new PetscOptions interface
add MAT_INPLACE_MATRIX; replace MAT_REUSE_MATRIX with it for MatConvert()
fix violations of PETSc style guide: Usage of SETERRQ and NULL
MatHeaderReplace() corrupted the -objects_dump arrayReported-by: Torquil Macdonald Sørensen <torquil@gmail.com>MatHeaderReplace() and MatHeaderMerge() destroy the second matrix argument therefor
MatHeaderReplace() corrupted the -objects_dump arrayReported-by: Torquil Macdonald Sørensen <torquil@gmail.com>MatHeaderReplace() and MatHeaderMerge() destroy the second matrix argument therefor pass it asa pointer to it can be zeroed and not mistakenly reused.
show more ...
Merge branch 'barry/add-concurrencykit'
MatShift_MPI/SeqXAIJ() could hang if some processes had no entries on a process while others had entriesbecause some processes would attempt a parallel preallocation and the others would not.Fixed
MatShift_MPI/SeqXAIJ() could hang if some processes had no entries on a process while others had entriesbecause some processes would attempt a parallel preallocation and the others would not.Fixed by first checking if no preallocation was done, and if not doing. Otherwise preallocation is only doneif approprate by each process on the diagonal block portion of the matrix, thus not requiring all processesthat share the matrix to call the parallel preallocation routineReported-by: Patrick Lacasse <patrick.m.lacasse@gmail.com>
fixes for PETSc threadsafety changes when threadsafety is not turned on
fixes for missing ierr = around PetscLogFlops()
initial locks with concurrencykit and OpenMPcleanup of many monitors that used nonthread safe constructors when no viewer passed incleanup of examples that generated unused variable messages when
initial locks with concurrencykit and OpenMPcleanup of many monitors that used nonthread safe constructors when no viewer passed incleanup of examples that generated unused variable messages when compiled with --with-log=0
updated manual pages for external direct solvers to explicitly state how to configure PETSc for them and to run with them with KSP
Merged in PR312: karpeev/ksp-pcgasm-overhaul.
Infrastructure that allows failures in PCSetUp(), PCApply(), MatMult() etc due to, for example a zero pivot or function evaluation outside its domain, to propagate up and become a KSP_DIVERGED inste
Infrastructure that allows failures in PCSetUp(), PCApply(), MatMult() etc due to, for example a zero pivot or function evaluation outside its domain, to propagate up and become a KSP_DIVERGED instead of generating an error that stops the program. In response to Issue 96. This includes failures in MatCreateSNESMF() applications due to domain errors. The mechanism to propagate some errors is by setting Info or Nan into the output vector and using the norm or inner product reductions in SNES or KSP to propagate the error condition to all processes and then handling them immediately after the norm or inner product.This allows, for example, ODE integrators to try again with a smaller time-step if the PCSetUp failed instead of requiring a complete restart of the run with other options.Currently some error conditions, such as function domain error in a line search may not get progated up using the correct SNESConvergedReasonSee src/snes/examples/tests/ex69.c for the handling of several conditions
MatGetSubMatricesParallel —> MatGetSubMatricesMPI. Implementation rewritten, tests added.
updated PETSc directory layout to match standard packaging strategiesinclude/petsc finclude,private,mpiunilib/petsc confbin/petsc*
rm unused variables
rm 'statement not reached' -- reported by PETSc blame digest
Optimized MatShift() for a completely empty matrix since this is commonly used with SLEPc to produce diagonal matricesReported-by: Jose Roman <jroman@dsic.upv.es>
Merge branch 'barry/add-casts-for-suitsparse-64bitindices'Conflicts: src/ksp/ksp/examples/tutorials/makefile
in error messages in MatSetValuesBlocked_Seq(S)BAIJ clarify the indices are block not point
1...<<11121314151617181920>>...53