| #
284ad7e6
|
| 11-Sep-2018 |
Satish Balay <balay@mcs.anl.gov> |
Merge remote-tracking branch 'origin/rmills/feature-add-mataijsell'
|
| #
8546b261
|
| 10-Sep-2018 |
Stefano Zampini <stefano.zampini@gmail.com> |
MATIS: add API to specify the local matrix type before setting the l2g maps
this allows to use CUSPARSE or VIENNACL as backends
|
| #
7e8837e9
|
| 09-Sep-2018 |
Matthew G. Knepley <knepley@gmail.com> |
Merge branch 'master' into knepley/fix-superdm-is
* master: (123 commits) Fix a few more Fortran objects to have their NULL value match the C NULL value remove dead code Add variable point blo
Merge branch 'master' into knepley/fix-superdm-is
* master: (123 commits) Fix a few more Fortran objects to have their NULL value match the C NULL value remove dead code Add variable point block Jacobi for MPIAIJ matrix. should not pass user contexts through CHKFORTRANNULLOBJECT in Fortran stubs fix mpiuni test Remove CHKFORTRANNULLOBJECTDEREFERENCE since it is no longer needed with Fortran null equal to C null PETSCFEOPENCL: declare PetscFEGetTabulation_Basic as external PETSCFEOPENCL: declare PetscFESetUp_Basic as external Change Fortran null pointer to match C null pointer one more fix jenkins: run 'cleantest' after examples are run - to recover diskspace logical order bug in diagbrdn update fixed, tests updated again replace new -petscspace_order instances with -petscspace_degree PETSCSPACETENSOR: clear up naming confusion of subspaces regression.py: remove configure code related to old test suite - now that SLEPc no longer needs it PetscSpaceSetup_Poly(): make idempotent Plex ex3: update tests Lift changes to defunct dtfe.c from [PR #1074] PetscSpace_Tensor: clarification of vector-valued PetscSpace_Tensor: allow height subspaces, fixes tabulation initialization ...
show more ...
|
| #
7489efa5
|
| 07-Sep-2018 |
Matthew G. Knepley <knepley@gmail.com> |
Merge branch 'master' into knepley/feature-pc-patch
* master: (131 commits) fix mpiuni test PETSCFEOPENCL: declare PetscFEGetTabulation_Basic as external PETSCFEOPENCL: declare PetscFESetUp_Ba
Merge branch 'master' into knepley/feature-pc-patch
* master: (131 commits) fix mpiuni test PETSCFEOPENCL: declare PetscFEGetTabulation_Basic as external PETSCFEOPENCL: declare PetscFESetUp_Basic as external one more fix jenkins: run 'cleantest' after examples are run - to recover diskspace logical order bug in diagbrdn update fixed, tests updated again replace new -petscspace_order instances with -petscspace_degree PETSCSPACETENSOR: clear up naming confusion of subspaces regression.py: remove configure code related to old test suite - now that SLEPc no longer needs it PetscSpaceSetup_Poly(): make idempotent Plex ex3: update tests Lift changes to defunct dtfe.c from [PR #1074] PetscSpace_Tensor: clarification of vector-valued PetscSpace_Tensor: allow height subspaces, fixes tabulation initialization PetscSpace: add a dimension member PetscSpaceSetDegree(): now take maxDegree argument -petscspacepoly_tensor -> -petscspace_type tensor PetscSpaceEvaluate_Polynomial(): fix temp array dependencies PETSCSPACETENSOR: A generic tensor product of spaces. PetscSpace: -petscspace_order -> -petscspace_degree ...
Conflicts: src/dm/dt/interface/dtfe.c src/snes/examples/tutorials/ex13.c src/snes/examples/tutorials/ex17.c src/snes/examples/tutorials/ex62.c src/snes/examples/tutorials/output/ex62_bddc_quad.out src/snes/examples/tutorials/output/ex62_fetidp_2d_quad.out src/snes/examples/tutorials/output/ex62_fetidp_2d_tri.out src/snes/examples/tutorials/output/ex62_fetidp_3d_hex.out src/snes/examples/tutorials/output/ex62_fetidp_3d_tet.out
show more ...
|
| #
a73faa70
|
| 06-Sep-2018 |
Satish Balay <balay@mcs.anl.gov> |
Merge remote-tracking branch 'origin/denera/mat-lmvm-symbrdn-diag-init'
|
| #
c86da64b
|
| 06-Sep-2018 |
Joseph Pusztay <josephpu@buffalo.edu> |
Merged petsc/petsc into master
|
| #
4dfdc2d9
|
| 20-Jun-2018 |
Richard Tran Mills <rmills@rmills.org> |
Added skeleton of sequential AIJSELL matrix class.
AIJSELL is a subclass of AIJ that uses AIJ for most operations, but keeps a "shadow" copy of the matrix in SELL format, which is used for certain o
Added skeleton of sequential AIJSELL matrix class.
AIJSELL is a subclass of AIJ that uses AIJ for most operations, but keeps a "shadow" copy of the matrix in SELL format, which is used for certain operations for which SELL format is preferable. This is currently a skeleton that doesn't do anything but call AIJ routines, but is ready for addition of optimized operations using SELL.
show more ...
|
| #
3b16a644
|
| 03-Sep-2018 |
Matthew G. Knepley <knepley@gmail.com> |
Merge branch 'master' into knepley/fix-superdm-is
* master: (455 commits) bib: spell out some names for format consistency with related refs bib: two 2018 pubs now appeared cleaning up analyze
Merge branch 'master' into knepley/fix-superdm-is
* master: (455 commits) bib: spell out some names for format consistency with related refs bib: two 2018 pubs now appeared cleaning up analyzer warnings compile fixes (workarround PGI bug?): undoing the branch's changes to leastsquares outputs more fixes for complex builds compile error fix for complex builds 1) Look for 64 bit integer MKL BLAS if 64 bit indices are used with PETSc 2) Fix Pardiso code to only compile pardiso_init64 when needed, otherwise can generate warnings/errors jenkins: run 'cleantest' before 'allgtest-tap' - an attempt to fix errors of type: cuda: protect cuda includes fix cuda warnings. fix complex compile error Revert "Improved polymorphism of interfaces for MatSetValuesBlocked()" Bib: Updated ref Doc: More function documentation petscvec: move PetscSFCreateFromZero from vscat to vec sources Fixed an uninitialized variable and got rid of an unused one. memleak fixed and output files updated fixing build errors on some archs Mat: obey options prefix of Mat in MatNullSpaceTest ...
Conflicts: include/petsc/private/dmpleximpl.h src/dm/interface/dmi.c
show more ...
|
| #
fefec95c
|
| 31-Aug-2018 |
Barry Smith <bsmith@mcs.anl.gov> |
Merge branch 'barry/feature-PCVPBJACOBI'
|
| #
5749d262
|
| 31-Aug-2018 |
Alp Dener <alp.dener@me.com> |
Merge branch 'denera/mat-lmvm-sym-bad-brdn' into denera/mat-lmvm-symbrdn-diag-init
|
| #
18ad3407
|
| 31-Aug-2018 |
Alp Dener <alp.dener@me.com> |
added a symmetric 'bad' brdn matrix that is a convex combination of inverses
|
| #
f588d9ee
|
| 31-Aug-2018 |
Andreas Selinger <andreasselinger@gmail.com> |
Merged petsc/petsc into master
|
| #
0da83c2e
|
| 28-Aug-2018 |
Barry Smith <bsmith@mcs.anl.gov> |
Introduce a point block Jacobi preconditioner with variable sized blocks
Only SeqAIJ implemented so far, adding MPIAIJ is trivial
Thanks to Jed Brown for suggesting making the block sizes a propert
Introduce a point block Jacobi preconditioner with variable sized blocks
Only SeqAIJ implemented so far, adding MPIAIJ is trivial
Thanks to Jed Brown for suggesting making the block sizes a property of the matrix Commit-type: feature Reported-by: Ali Reza Khaz'ali <arkhazali@cc.iut.ac.ir> Thanks-to: Jed Brown <jed@jedbrown.org>
show more ...
|
| #
373bacff
|
| 28-Aug-2018 |
Satish Balay <balay@mcs.anl.gov> |
Merge remote-tracking branch 'origin/adenchfield/tao-bncg-diagonal-scaling'
|
| #
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 ...
|
| #
50b47da0
|
| 19-Jul-2018 |
Adam Denchfield <adenchfi@hawk.iit.edu> |
diagonal Broyden matrix type framework added
Started implementing diagonal scaling using a common interface with Alp's code. Currently have forward B diagonal scaling, which means I need to derive S
diagonal Broyden matrix type framework added
Started implementing diagonal scaling using a common interface with Alp's code. Currently have forward B diagonal scaling, which means I need to derive SSML_BFGS in the forward case. Will apply this to case SSML_BFGS_Mod. Will also implement the inverse diagonal sometime.
Have basic DiagBrdn functionality working, though it isn't producing optimal ssml_bfgs output since the two are not super compatible - inverse (H) update with a forward (B) diagonal scaling?
Tried changing MatMult to Multiply instead of Divide, to see what effect it has. It may have a large effect...
Made it a developer option to change between Mult and Divide for the DiagBrdn MatMult. That way the BNCG code can have the correct behavior.
Added, hopefully successfully, my version of the inverse Hessian diagonal scaling to DiagBrdn. It can currently be enabled with command line options, but that will likely change.
Basic working code for using Alp's Mat objects. However, his and I's code still produce different results. To be investigated...
Removed the unnecessary mult parameter.
Trying out more reset strategies.
Committing before making experimental changes to SSML_BFGS_MOD where I directly update on the gradient.
Committing before making a change to SSML_BFGS that involves correcting a sign error.
Corrected a sign error in the diagonally scaled SSML_BFGS.
Nevermind, the sign was correct.
Implemented diagonal scaling for SSML_Broyden method.
Implemented diagonally scaled DFP.
Added trial versions of diagonally scaled Hestenes-Stiefel and Dai-Yuan methods.
Added trial version of diagonally scaled Fletcher-Reeves method.
Removed the testing version of SSML_BFGS; now there is only one final version.
Also added diagonally scaled Polar-Ribiere, trial version. About to try simplifying the diagonal update scheme in DiagBrdn to reduce numerical noise.
Tried adding features to the forward and backward updates to the diagonal scalinng that would reduce numerical noise.
Added a minor change to increase numerical precision of both forward and backward diagonal scaling updates.
Added restart conditions which would affect the Hestenes-Stiefel and Polar-Ribiere class of methods.
Removed the restart condition from the Hestenes-Stiefel method, as it appears to make it much worse, and going through the math shows it isn't necessarily the best restart strategy.
Removed the restarts based on gradient orthogonality, since those appear to be attempting to prevent non-descent directions, which is already checked for.
Fixed Fletcher-Reeves' diagonal preconditioning to match that written by HZ's survey.
Trying a new approach in Dai-Yuan inspired by the HZ survey.
The Preconditioning of FR in HZ's survey is wrong for our diagonal preconditioner. Just makes it worse. Reverted Dai0Yuan to a form where only the gradient is diagonally scaled.
Made global the check for whether or not the current direction is already good, enabling us to skip a direction update.
Also added diagonally scaled gradient descent.
Fixed a bug where the rescaling for scalar classic methods was constant.
Fixed a bug where the classic methods all seemed to be producing the same results. Had to initialize cg_continue.
Fixed issue in PR and PRP scalar methods.
Added some minor changes.
Cleaned up some redundancies in the BNCG code. Added some constants as command line options, user-options for the HZ and DK methods.
Cleaned a little more redundancy.
Some comments removed, a couple more redundant lines removed. Found an uninitialized variable in DaiYuan and fixed that; could be why DY was performing so badly.
Addressed a few of Alp's comments.
Trying to clean up memory leaks. First set lmvm->m = 1 in DiagBrdn.
Fixed memory leak problems.
Allowed the epsilon cutoff for curvature checks to be changed by the user. Defaults to machine precision.
Edited a couple things in DiagBrdn. Added the KD-like scaling to DiagBrdn for the inverse.
Merged with another branch that developed KD-like changes to diagonal scaling, and edited some comments.
Added a comment on the diagonal scaling as applied to FR, PR, PRP, DY methods. Beginning work on implementing them properly.
Got rid of the unused variables in DiagBrdn.c
Fixed an uninitialized variable in SSML_DFP
Fixed fortran interface bug.
Added a line about DiagBrdn in the PETSC Users Manual.
Trying to fix the DY diagonal scaling.
Currently at test2 of DY, does worse than initial test. About to start test 3 - where only g is replaced by its preconditioned counterpart.
Temporarily took out taking the reciprocal in the rescaling part of the code where we calculate ytDy, etc
Now onto test4 for the DY diagonally scaled method. Test3 worked well, in previous commit. By that I mean it almost got to the scalar performance.
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 ...
|
| #
07efb9c9
|
| 09-Jul-2018 |
Satish Balay <balay@mcs.anl.gov> |
Merge remote-tracking branch 'origin/stefano_zampini/feature-mataij-to-matis'
|
| #
854f7285
|
| 28-May-2018 |
Stefano Zampini <stefano.zampini@gmail.com> |
Added MatPartitioningViewFromOptions
|
| #
f3ad2dab
|
| 23-May-2018 |
Stefano Zampini <stefano.zampini@gmail.com> |
MatPartitioningND: add interface
|
| #
f03112d0
|
| 17-May-2018 |
Stefano Zampini <stefano.zampini@gmail.com> |
MatIS: added API for fixing local empty rows or columns
use PETSC_SMALL for comparison since FEM may generate super small entries (but not identically zero) extended support for rectangular case Add
MatIS: added API for fixing local empty rows or columns
use PETSC_SMALL for comparison since FEM may generate super small entries (but not identically zero) extended support for rectangular case Added tests
show more ...
|