| #
4e278199
|
| 16-May-2021 |
Barry Smith <bsmith@mcs.anl.gov> |
Remove all double blank lines from source
Commit-type: petsc-style /2h
|
| #
bbc1464c
|
| 07-May-2021 |
Barry Smith <bsmith@mcs.anl.gov> |
Add support for using -snes_mf_operator with SNESSetPicard()
Applies Newton's method using matrix-free application of the true Jacobian, preconditioned by user provided Picard matrix
This involved
Add support for using -snes_mf_operator with SNESSetPicard()
Applies Newton's method using matrix-free application of the true Jacobian, preconditioned by user provided Picard matrix
This involved adding (*computemffunction)(SNES,Vec,Vec,void*); to be used by the MatCreateSNESMF() operator when it is set and routines to work with the new function.
The implementation requires maintaining a copy of the matrix that is filled by the users routine that computes the matrix at each matrix-vector product. The original matrix is used for constructing the preconditioner and therefor cannot be overwritten.
Also dropped the requirement that the user provide a right hand side function to SNESSetPicard()
Commit-type: feature, example /spend 8h Thanks-to: Saransh Saxena <saransh.saxena5571@gmail.com>
show more ...
|
| #
6b804ed2
|
| 30-Jul-2019 |
Karl Rupp <me@karlrupp.net> |
Merge branch 'stefano_zampini/GPU-matdensecuda' [PR #1911]
* stefano_zampini/GPU-matdensecuda: GPU: Initial implementation for SeqDense class on GPUs.
|
| #
e2cf4d64
|
| 23-Jul-2019 |
Stefano Zampini <stefano.zampini@gmail.com> |
Mat: get rid of the valid_GPU_matrix flag from the interface
A specific implementation may provide those operations on GPU The previous interface would have invalidated the data
MatAssemblyEnd_MPIA
Mat: get rid of the valid_GPU_matrix flag from the interface
A specific implementation may provide those operations on GPU The previous interface would have invalidated the data
MatAssemblyEnd_MPIAIJ now takes care of propagating the correct flags to the blocks if we set its flag to OFFLOAD_CPU This is to fix the case of MatFDColoring, which do not use the MatSetValues interface
show more ...
|
| #
c86da64b
|
| 06-Sep-2018 |
Joseph Pusztay <josephpu@buffalo.edu> |
Merged petsc/petsc into master
|
| #
78945fca
|
| 17-Aug-2018 |
Matthew G. Knepley <knepley@gmail.com> |
Merge branch 'master' into knepley/feature-plex-functionals
* master: (984 commits) netcdf: set zlib as optional dependency corretly [wrt --enable-netcdf-4] - otherwise netcdf configure errors out
Merge branch 'master' into knepley/feature-plex-functionals
* master: (984 commits) netcdf: set zlib as optional dependency corretly [wrt --enable-netcdf-4] - otherwise netcdf configure errors out fix gcov obj path -options_table was changed to options_view in 2014 but documentation was not updated to reflect it configure: fix F2003 test Dev manual: remove duplicate entry Plex test ex5: Removed "future" test, as it resulted in issues in the nightly tests. Some minor typos in TS Add ADIOS2.py which I forgot to git add in the past Plex ex5: Disable test Doc: Added note for interface change KSPLSQRMonitorDefault fixed for quad precision Tao: Added alternative output for chwirut2 test. TS ex45,ex46: Removed overly refined tests for faster nightly tests. KSP ex72: Fixed needlessly long-running PCTFS tests. SNES ex56: Reduced test size to speed up nightly test suite. KSPSolve_LSQR: don't compute unused norm of rhs SNES ex13: Reduced problem sizes for nightly tests. PetscOptionsDeprecated(): fix for NULL prefix PetscOptionsDeprecated(): add option to print additional info SNES ex12: Reduced sizes for BDDC tests. ...
show more ...
|
| #
13a035b1
|
| 13-Aug-2018 |
Matthew G. Knepley <knepley@gmail.com> |
Merge branch 'master' into knepley/feature-plex-elasticity-test
* master: (1553 commits) -options_table was changed to options_view in 2014 but documentation was not updated to reflect it config
Merge branch 'master' into knepley/feature-plex-elasticity-test
* master: (1553 commits) -options_table was changed to options_view in 2014 but documentation was not updated to reflect it configure: fix F2003 test Plex test ex5: Removed "future" test, as it resulted in issues in the nightly tests. Some minor typos in TS Add ADIOS2.py which I forgot to git add in the past Plex ex5: Disable test Doc: Added note for interface change KSPLSQRMonitorDefault fixed for quad precision Tao: Added alternative output for chwirut2 test. TS ex45,ex46: Removed overly refined tests for faster nightly tests. KSP ex72: Fixed needlessly long-running PCTFS tests. SNES ex56: Reduced test size to speed up nightly test suite. KSPSolve_LSQR: don't compute unused norm of rhs SNES ex13: Reduced problem sizes for nightly tests. PetscOptionsDeprecated(): fix for NULL prefix PetscOptionsDeprecated(): add option to print additional info SNES ex12: Reduced sizes for BDDC tests. PetscFileRetrieve(): Suppress output to STDERR when downloading a file. MatMatMult: Fixed unused variable pN. DMDestroy: Guard call to dm->ops->destroy * Similar guards are in place in many other methods (IS,Vec,Mat) and permit the DM to be destroyed even if DMSetType() was never called. ...
show more ...
|
| #
59e7829c
|
| 07-Aug-2018 |
Matthew G. Knepley <knepley@gmail.com> |
Merge branch 'master' into knepley/feature-plex-parallel-submesh
* master: (2931 commits) remove N in docs for SNESQN replaced test tolerance with PETSC_SQRT_MACHINE_EPSILON fortran: PetscComp
Merge branch 'master' into knepley/feature-plex-parallel-submesh
* master: (2931 commits) remove N in docs for SNESQN replaced test tolerance with PETSC_SQRT_MACHINE_EPSILON fortran: PetscComplex type is missing from fortran initialize variables so that static analyzer doesn't mistakenly think they are used uninitialized. Move access of prefix until it is actually used Remove DMDASplitComm2d(), used in one example that was not tested Functions that do not return PetscErrorCode should not use PetscFunctionBegin/End paradgm remove unneeded reassignment of same value Missing CHKERRQ(); Mostly in Tao code Remove clang static analyser warning about passing NULL variable to strncat() missing newline in -ts_monitor_extreme minor fixes for integer counters Configure: Deal with '__func__' in C89 builds with newer Clang and GCC. Jenkinsfile: Increased timeout for tests to 5 minutes. 3.9 changes: further clarify removal of -pc_factor_mat_solver_package Options deprecations: add "PETSc" to inline warning removing unused variable MatShift support added to MATSUBMAT. Mimics MATSHELL functionality. Needed for matrix-free Hessians in TAO Newton-Line-Search methods. Add -ts_monitor_extreme Dev manual: add note on deprecating options database keys ...
Conflicts: src/dm/impls/plex/examples/tests/ex4.c
show more ...
|
| #
27a35bf0
|
| 07-Aug-2018 |
Matthew G. Knepley <knepley@gmail.com> |
Merge branch 'master' into knepley/fix-plex-submesh-projection
* master: (425 commits) remove N in docs for SNESQN replaced test tolerance with PETSC_SQRT_MACHINE_EPSILON fortran: PetscComplex
Merge branch 'master' into knepley/fix-plex-submesh-projection
* master: (425 commits) remove N in docs for SNESQN replaced test tolerance with PETSC_SQRT_MACHINE_EPSILON fortran: PetscComplex type is missing from fortran initialize variables so that static analyzer doesn't mistakenly think they are used uninitialized. Move access of prefix until it is actually used Remove DMDASplitComm2d(), used in one example that was not tested Functions that do not return PetscErrorCode should not use PetscFunctionBegin/End paradgm remove unneeded reassignment of same value Missing CHKERRQ(); Mostly in Tao code Remove clang static analyser warning about passing NULL variable to strncat() missing newline in -ts_monitor_extreme minor fixes for integer counters Configure: Deal with '__func__' in C89 builds with newer Clang and GCC. Jenkinsfile: Increased timeout for tests to 5 minutes. 3.9 changes: further clarify removal of -pc_factor_mat_solver_package Options deprecations: add "PETSc" to inline warning removing unused variable MatShift support added to MATSUBMAT. Mimics MATSHELL functionality. Needed for matrix-free Hessians in TAO Newton-Line-Search methods. Add -ts_monitor_extreme Dev manual: add note on deprecating options database keys ...
Conflicts: src/dm/impls/plex/examples/tests/ex4.c
show more ...
|
| #
bb104ea6
|
| 17-Jul-2018 |
Matthew G. Knepley <knepley@gmail.com> |
Merge branch 'master' into knepley/feature-pc-patch
* master: (226 commits) fix bib type in bibtex entry copy edits to bibtex items Hypre matrix: small fix Hypre matrix: fixed compiler war
Merge branch 'master' into knepley/feature-pc-patch
* master: (226 commits) fix bib type in bibtex entry copy edits to bibtex items Hypre matrix: small fix Hypre matrix: fixed compiler warnings Plex: Fixed missing PetscRealPart() in partition balance. Added MatZeroEntries_HYPRE Removed outdated mention of cusp and thrust from installations instructions; remove cusp from example configurations Remove another location where fshift was used with -1 to indicate handling of error condition which was never handled Generate an immediate error, if requested, if CG detects indefinite PC or Mat Remove hack of using special fshift value of -1 to indicate error handling, was broken for MatSOR_SeqAIJ and did nothing constructive in the other cases Options: Fix sys_tests-ex6 to not print options PetscOptionsDestroy: Add missing free() call Configure: Pragmatic now requires Cxx11 Error check that the communicator in the IS matches that in the matrix otherwise ISAllGather() produces incorrect results. Options: Code reorganization and faster option lookup fix compile warning Doc: Fixed manpage for PCFieldSplitSetSchurPre() mpiuni: build somempifort.o after mpiuni.mod Remove use of common block from MPIUNI code ...
Conflicts: include/petscdm.h include/petscpc.h include/petscpctypes.h src/dm/impls/plex/plexcreate.c src/dm/impls/plex/plexdistribute.c src/ksp/pc/impls/makefile src/ksp/pc/interface/pcregis.c
show more ...
|
| #
c15bc2c4
|
| 13-Jul-2018 |
Matthew G. Knepley <knepley@gmail.com> |
Merge branch 'master' into arcowie-rem/feature-error-logging
* master: (353 commits) Configure: Pragmatic now requires Cxx11 fix compile warning mpiuni: build somempifort.o after mpiuni.mod
Merge branch 'master' into arcowie-rem/feature-error-logging
* master: (353 commits) Configure: Pragmatic now requires Cxx11 fix compile warning mpiuni: build somempifort.o after mpiuni.mod Remove use of common block from MPIUNI code use was in wrong location Fortran line extends past 72 char Moved the rest of the PETSc common block variables over to petscsys module tests: fix breakage due to cd93b0e13c6da70ee1e038f55989cf888bc1d1c5 Need to use petscsys to get PETSC_COMM_SELF defined in example Mat ex23 and ex40: fix errors reported from nightly tests Put declaration on too lines because otherwise it generates an error for truncated line Move PETSC_COMM_WORLD and PETSC_COMM_SELF from common blocks to petscsys module tests: fix requires - and create out files for seqaijmkl tests KSP ex72: nested dissection is likely to be different between machines cmake: downgrade to version 3.9 - as newer versions require cxx11 compiler [which is not universal]. However stick with version 3.11 on opensolaris Mat ex23: fix memory leaks Bib: Some new refs KSP examples: add missing casts to double in printf updated GAMG KSP tests PetscRound() should be PetscRoundReal() in __fp16 ...
Conflicts: include/petsclog.h src/sys/logging/plog.c src/sys/logging/utils/eventlog.c
show more ...
|
| #
488f980d
|
| 03-Jul-2018 |
Alp Dener <alp.dener@gmail.com> |
Merge branch 'master' into denera/lmvm-mat-and-pc
|
| #
702d6a0a
|
| 29-Jun-2018 |
Lisandro Dalcin <dalcinl@gmail.com> |
Merged in dalcinl/extern (pull request #995)
Fix extern declarations
Approved-by: BarryFSmith <bsmith@mcs.anl.gov>
|
| #
25acbd8e
|
| 24-Jun-2018 |
Lisandro Dalcin <dalcinl@gmail.com> |
SNES: Fix 'extern' declarations
|
| #
2cf2a403
|
| 11-Jun-2018 |
Matthew G. Knepley <knepley@gmail.com> |
Merge branch 'master' into knepley/feature-pc-patch
* master: (562 commits) fix clang-analyzer warning Developers manual never use system randomizers in PETSc and example source code. missing
Merge branch 'master' into knepley/feature-pc-patch
* master: (562 commits) fix clang-analyzer warning Developers manual never use system randomizers in PETSc and example source code. missing CHKERRQ() DT: Reverting the tgamma change broke MPFR - I guess we need a nightly build with it in Add a test for ex21 Fix error in ex21 Add missing fortran interface that handles null objects DMComposite: add missing guards MatPreallocate: fix overpreallocation of local rows style fixes MatView_MPI_DA: do not print twice the class prefix MatSetOperation: stash the original MatView_XXX in the viewnative function pointer DMCreateInterpolation_DA gracefully error instead of catching FPE signals MatIncreaseOverlap: preserve communicator of index sets MatMPIAIJ: fix indentation and missing CHKERRQ ISBuildTwoSided: remove tabs and fix style Fix documentation PetscViewerDraw: fix unininitialized warning from valgrind MatConvert_SeqAIJ_SeqBAIJ: remove error for non square matrices and add MAT_REUSE_MATRIX case Mat: MAT_INPLACE_MATRIX can be used for transposition with rectangular matrices ...
Conflicts: src/dm/dt/interface/dtfe.c src/dm/impls/plex/plex.c src/dm/impls/plex/plexfem.c src/snes/examples/tutorials/ex13.c src/snes/examples/tutorials/ex62.c src/snes/examples/tutorials/makefile src/snes/examples/tutorials/output/ex62_18.out src/snes/examples/tutorials/output/ex62_19.out src/snes/examples/tutorials/output/ex62_20.out src/snes/examples/tutorials/output/ex62_20_parmetis.out src/snes/examples/tutorials/output/ex62_21.out src/snes/examples/tutorials/output/ex62_22.out src/snes/examples/tutorials/output/ex62_23.out src/snes/examples/tutorials/output/ex62_24.out src/snes/examples/tutorials/output/ex62_25.out src/snes/examples/tutorials/output/ex62_26.out src/snes/examples/tutorials/output/ex62_27.out src/snes/examples/tutorials/output/ex62_28.out src/snes/examples/tutorials/output/ex62_29.out src/snes/examples/tutorials/output/ex62_2d_p3_1.out src/snes/examples/tutorials/output/ex62_30.out src/snes/examples/tutorials/output/ex62_31.out src/snes/examples/tutorials/output/ex62_32.out src/snes/examples/tutorials/output/ex62_33.out src/snes/examples/tutorials/output/ex62_34.out src/snes/examples/tutorials/output/ex62_35.out src/snes/examples/tutorials/output/ex62_36.out src/snes/examples/tutorials/output/ex62_pc_simple.out src/snes/examples/tutorials/output/ex62_pc_simplec.out src/snes/examples/tutorials/output/ex62_quad_q2p1_full.out src/snes/examples/tutorials/output/ex62_quad_q2q1_full.out src/snes/utils/dmplexsnes.c
show more ...
|
| #
d1b71f57
|
| 19-Apr-2018 |
Matthew G. Knepley <knepley@gmail.com> |
Merge branch 'master' into knepley/feature-error-logging
* master: (221 commits) dashboard: count and list example compile failures like: fix fix-pr879-jczhang-optimize-vecscatter-multi-copy a
Merge branch 'master' into knepley/feature-error-logging
* master: (221 commits) dashboard: count and list example compile failures like: fix fix-pr879-jczhang-optimize-vecscatter-multi-copy add manual page cross links for SNESLineSearchSetPostCheck() and related routines fix help manual of MatCreateSubmatrices() Reported-by: Tim Steinhoff <kandanovian@gmail.com> Add manual pages for PetscRealPart() and PetscImaginaryPart() fix compile error with missing MPI_C_DOBULE_COMPLEX fix typo Reported-by: Febrian Setianto <febrian.setianto@gmail.com> plex tutorial ex5: updated test requirements DMPlexLoad_HDF5_Xdmf_Internal: fix for complex PetscScalar. DMPlexLoad_HDF5_Xdmf_Internal: fix for 64-bit PetscInt. DMPlexBuildFromCellList_Internal: use DMPlexInvertCell_Internal (with PetscInt* arg) petscviewer.h: removed notice which is no longer relevant DMPlexCreateFromFile: document option check only if PETSC_USE_DEBUG DMPlexBuildFromCellList_Internal optionally inverts cells. ex5: new test 4 with -compare without repartitioning ex5: new test 3 using -compare ex5: HDF5 write+read moved to separate function ex5: option -format processed in ProcessOptions() ex5: added missing hdf5 requirement ...
Conflicts: include/petsclog.h
show more ...
|
| #
850224f6
|
| 19-Apr-2018 |
Karl Rupp <me@karlrupp.net> |
Merge branch 'psanan/manpages-notes-newlines' [PR #932]
* psanan/manpages-notes-newlines: A large number of man pages are improperly formatted because of the lack of a newline after "Notes:", "Fortr
Merge branch 'psanan/manpages-notes-newlines' [PR #932]
* psanan/manpages-notes-newlines: A large number of man pages are improperly formatted because of the lack of a newline after "Notes:", "Fortran Notes:", or "Developer Notes:". This batch adds those newlines, with 4 spaces of indentation afterwards. The uniform indentation arguably makes the man pages a little less readable in the source itself, but overall this hopefully has a large positive impact on the readability of the HTML pages.
show more ...
|
| #
95452b02
|
| 16-Apr-2018 |
Patrick Sanan <patrick.sanan@gmail.com> |
Man pages: add newlines after "Notes:"
This allows for proper formatting from sowing.
On OS X (using gsed, not the default BSD sed), from the PETSc root directory:
find src include -type f \(
Man pages: add newlines after "Notes:"
This allows for proper formatting from sowing.
On OS X (using gsed, not the default BSD sed), from the PETSc root directory:
find src include -type f \( -name "*.c" -or -name "*.h" -or -name "*.cxx" \) | xargs gsed -i 's/Notes\s*:\s*\(\w.*\)/Notes:\n \1/'
This adds a newline and 4 spaces whenever "Notes:" is followed by any "word" character, in any .c, .h, or .cxx file in src/ or include/
show more ...
|
| #
e366c154
|
| 15-Nov-2017 |
Jed Brown <jed@jedbrown.org> |
Merge commit 'd47bf9aaf1e5266cc3f0ff499f934c85788965a9' into jed/fix-matcreatempibaij/maint
Obtain changed (v3.5) handling of MatMPIBAIJSetPreallocationCSR to match documentation.
|
| #
ec14d8c8
|
| 27-May-2017 |
Matthew G. Knepley <knepley@gmail.com> |
Merge branch 'master' into knepley/feature-plex-sphere-mesh
* master: (2633 commits) Bib: Added ref SNES ex56: Update test output add a citation to petsc.bib Plex: Initialize variables ini
Merge branch 'master' into knepley/feature-plex-sphere-mesh
* master: (2633 commits) Bib: Added ref SNES ex56: Update test output add a citation to petsc.bib Plex: Initialize variables initialize ap as complained by the nightly tests Plex ex3: Update to new point function API initialize some variables as complained by nightly tests SNES ex12: Mix misnaming Nf --> Nc update tests add tests add MatView_SeqXAIJ_ASCII_structonly(); enable A->structure_only in MatSetValuesBlocked_SeqBAIJ typo fill-in some references Bib: Fixed ref Plex: Added PLY to file support Plex: Adding PLY support PetscDS: Turn off Fortran bindings for Constants Plex tests: Updated to new point function API SNES ex56: Moved tests to new format DM: Allow field projection functions to take an array of scalars - This will allow us to pass in user data to kernels without void *, more efficiency than aux fields ...
Conflicts: config/builder.py include/petscdmplex.h src/dm/impls/plex/examples/tests/ex1.c src/dm/impls/plex/plexcreate.c src/dm/impls/plex/plexgmsh.c src/snes/examples/tutorials/ex63.c
show more ...
|
| #
c90b701e
|
| 14-Mar-2017 |
Matthew G. Knepley <knepley@gmail.com> |
Merge branch 'master' into knepley/feature-plex-pragmatic-parallel
* master: (1379 commits) Minor fixes for tchem examples due to changes in PETSc infrastructure update webpage about API changes
Merge branch 'master' into knepley/feature-plex-pragmatic-parallel
* master: (1379 commits) Minor fixes for tchem examples due to changes in PETSc infrastructure update webpage about API changes add help menu for MatCreateSubMatricesMPI() rename struct Mat_SubMat -> Mat_SubSppt add a little information to the manual about using tchem rename MatCreateSubMatrixComposite -> MatCreateSubMatrixVirtual; Mat_SubMatrix -> Mat_SubVirtual need to protect the \ passed on the makefile on my Mac Bib: Updated ref update src/mat/examples/tests/output/ex23_#.out rename MatGetSubMat -> MatCreateSubMat Mark MatCreateMPIAIJWithSplitArrays() and MatMPIAIJSetPreallocationCSR() with MAT_NO_OFF_PROC_ENTRIES superlu: libray is installed in PREFIX/lib64 - fix this to use PREFIX/lib backport fixes cc105cc3 2b35c90a - required for 3bf428d - that was backported from master - 80c96bb 'echo -n' fails on opensolaris/osx - so avoid using it. fix diffs in nightlybuilds due to options in ~/.petscrc add Kelley03 to src/docs/tex/petsc.bib build: determine moudles, mpi.h used during buildtime and print in 'info' fix analyzer warnings fix build failure on opensolaris - where -lm from flibs is removed due to -lm in cxxlibs. But then - only flib gets used for some configure tests [blaslapack, parms] config: prefer __restrict over C99 restrict keyword ...
show more ...
|
| #
9137bce6
|
| 24-Dec-2016 |
Barry Smith <bsmith@mcs.anl.gov> |
Merge branch 'barry/remove-funct'
|
| #
fbfcfee5
|
| 19-Dec-2016 |
Barry Smith <bsmith@mcs.anl.gov> |
Remove the use and definition of __FUNCT__ throughout the code
Since all modern C/C++ compilers provide this functionality we no longer need to provide it manually in PETSc Time: 1.5 hours Thanks-t
Remove the use and definition of __FUNCT__ throughout the code
Since all modern C/C++ compilers provide this functionality we no longer need to provide it manually in PETSc Time: 1.5 hours Thanks-to: Andreas Mang <andreas@ices.utexas.edu>
show more ...
|
| #
c20ebc76
|
| 22-Mar-2016 |
Stefano Zampini <stefano.zampini@gmail.com> |
Merge branch 'master' into stefano_zampini/feature-pcbddc-saddlepoint
|
| #
992dc9be
|
| 18-Mar-2016 |
Matthew G. Knepley <knepley@gmail.com> |
Merge branch 'master' into knepley/feature-plex-handle-func-failure
* master: (378 commits) SNES ex5: Fix coordinate determination for empty subdomains fixed petsc.bib entry p4est: fix syntax
Merge branch 'master' into knepley/feature-plex-handle-func-failure
* master: (378 commits) SNES ex5: Fix coordinate determination for empty subdomains fixed petsc.bib entry p4est: fix syntax error with error message SNES ex5: Correct Jacobian handling on patches SNES ex5: Stupid complex fixes DMP4est: fix transfer of labels to parents petsc4py: update to latest snapshot. Fixes da example breakage in petsc4py test suite Plex: Correct setting of options on refined or coarsened meshes Plex: Add info for grid hashing Plex: Add logging in interpolator creation Plex: Correct use of tabs in ASCII viewer DM: Shorten long event name Plex ex12: Create boundary label automatically at all levels of mesh hierarchy Plex ex12: Change PetscViewerSetFormat --> PetscViewerPushFormat - Fix order of SetMode and SetFilename Plex ex12: Change all functions to static Since DMDA with periodic boundary conditions does support P0 interpolation remove checks that error out under those conditions ascem-io.py and amanzi.py need to handle self.hdf5.include being None correctly fix MPI Uni to recycle communicators so it won't run out like with the petsc4py tests also fix check for location of python shared library on mac to check all cases each time Switch back to Sherry's version since she accepted by pull request PetscDraw: Update help messages for -draw_save* options ...
Conflicts: src/dm/impls/plex/plexfem.c
show more ...
|