Call hypre PtAP correctlyWe should call ptapnumeric as well. Only calling MAT_PtAPSymbolicis not enough
rm PetscMemcpy(mat->ops,matin->ops,sizeof(struct _MatOps)) and mat->ops->destroy = MatDestroy_xxx, as suggested by Barry
Fix MatSeqAIJFromMatlab() it assumed that the inode structure could changeonly if the number of nonzeros changed in the matrix but, in fact, the strutureof the matrix could change while the number
Fix MatSeqAIJFromMatlab() it assumed that the inode structure could changeonly if the number of nonzeros changed in the matrix but, in fact, the strutureof the matrix could change while the number of nonzeros remained the same.Fixed memory leak in example and missing CHKERRQ(ierr);Commit-type: bug-fix, testing-fixReported-by: Alp Dener <adener@anl.gov>
show more ...
rm special MatDuplicate_XXX()
MatDuplicate() only duplicates simple matrix data structure without internal data structures from previous matrix product or operations.This new approach fixes bug reported by Vinh Pham-Xuan <vinh.p
MatDuplicate() only duplicates simple matrix data structure without internal data structures from previous matrix product or operations.This new approach fixes bug reported by Vinh Pham-Xuan <vinh.phamxuan2@mail.dcu.ie>
Merge branch 'barry/improve-error-propagation-ksp-pc'
Improve the error propagation between and within KSPs and PCs- Added KSPCheckSolve() to be called consistently by PCs to set failures if the inner solvers fail.- Added use of KSPCheckNorm() and KS
Improve the error propagation between and within KSPs and PCs- Added KSPCheckSolve() to be called consistently by PCs to set failures if the inner solvers fail.- Added use of KSPCheckNorm() and KSPCheckDot() to all the Krylov methods to propagate errors from PCs to the KSPs.Commit-type: feature
Merge branch 'rmills/refactor-mkl-sparse-optimize-configure/maint' [PR #1288]* rmills/refactor-mkl-sparse-optimize-configure/maint:This branch eliminates the separate configure package testing for
Merge branch 'rmills/refactor-mkl-sparse-optimize-configure/maint' [PR #1288]* rmills/refactor-mkl-sparse-optimize-configure/maint:This branch eliminates the separate configure package testing for mkl_sparse_sp2m(), rolling a test for a usable version of this feature into the mkl_sparse_optimize configure package.
Use PETSC_HAVE_MKL_SPARSE_SP2M_FEATURE in the AIJMKL code.
Fixed an overlooked place where PETSC_MKL_SPBLAS_DEPRECATED should be used.
Use PETSC_MKL_SPBLAS_DEPRECATED where I had been using PETSC_HAVE_MKL_SPARSE_SP2M for this purpose.
Mat: Fixed types in Pardiso interface
MatLoad_AIJ_HDF5: fixed use of possibly uninitialized value i[0] for m=0
MatLoad_AIJ_HDF5: improve comments
MatSetOption_MPIAIJ: No need for handling symmetry flags here.They are handled directly by MatSetOption().And they don't affect preallocation so no need for MatCheckPreallocated()!
MatLoad_AIJ_HDF5: explicitly transpose the loaded matrix
MatLoad_AIJ_HDF5: just initialize pointers to NULL
MatLoad_AIJ_HDF5: formatting
MatLoad_AIJ_HDF5: make use of PetscViewerHDF5ReadSizes()
MatLoad_AIJ_HDF5: fix for multiple ranks with 0 rows
MatLoad_AIJ_HDF5: Make use of new PetscLayoutSetUp().Seems to work correctly now.
MatLoad_AIJ_HDF5: Create i with proper i[m] (number of all local nonzeros).Replace count_data with i[m].It currently works only if there are no multiple ranks with 0 rows.
MatLoad_AIJ_HDF5: non-blocking send/recv => wait must be called!
MatLoad_AIJ_HDF5: replaced raw array access by API functions
MatLoad_AIJ_HDF5: special code for 0 rows shouldn't be needed
1...<<61626364656667686970>>...265