SETERRQ[1-9]+ begone
Remove all double blank lines from sourceCommit-type: petsc-style/2h
Turn on checkbadSource test to generate an error when found; fix all source code that causes errorsCommit-type: portability-fix, testing-fix, style-fix, feature, maintainability/spend 1.5h
SNES: only change linesearch type when not already setThis is necessary to allow users to SNESLineSearchSetType before SNESSetFromOptions.
SNESLineSearch should only be created and used if the SNES type requires the line searchPreviously the line search was created for all solver and and SNESLineSearchSetFromOptions()and SNESLineSear
SNESLineSearch should only be created and used if the SNES type requires the line searchPreviously the line search was created for all solver and and SNESLineSearchSetFromOptions()and SNESLineSearchView() called for all solvers, even those that never used it,leading to confusion for usersCommit-type: feature, documentationReported-by: Robert Nourgaliev <nourgaliev1@llnl.gov>
show more ...
Add two APIs: SNESGetUpdateNorm and SNESGetSolutionNormRetrieve update and solution normsWe may/might want to print update and solution norms in a user-provided convergence checker if the SNES co
Add two APIs: SNESGetUpdateNorm and SNESGetSolutionNormRetrieve update and solution normsWe may/might want to print update and solution norms in a user-provided convergence checker if the SNES converged due to a small update length.
Allow -1 to SNESSetTolerances() and -snes_max_funcs to indicate unlimited number of function evaluationsThis is useful when running with -snes_test_jacobian and other use casesCommit-type: featur
Allow -1 to SNESSetTolerances() and -snes_max_funcs to indicate unlimited number of function evaluationsThis is useful when running with -snes_test_jacobian and other use casesCommit-type: featureReported-by: Hong Zhang <hongzhang@anl.gov>
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/
Make ASCII PC/KSP/SNES/TSView() code and output in a standard styleThe code that prints the ASCII view for solvers was occasionally inconsistent:1) TSView printed the type specific information aft
Make ASCII PC/KSP/SNES/TSView() code and output in a standard styleThe code that prints the ASCII view for solvers was occasionally inconsistent:1) TSView printed the type specific information after the general info while all other solvers printed it before (right after the name of the type is printed)2) KSPView consistently printed the name of the subtype on EACH line of the subtypes output as did a few of the PC and SNES viewers. Since they are all printed indented directly below the subtype name there is no reason to print this information on each line3) TSView printed output about number of linear solvers and SNES even for explicit methods, which is goofy.4) a few other minor formatting and consistency issues where fix.Commit-type: style-fix, featureTime: 16 hours
Remove the use and definition of __FUNCT__ throughout the codeSince all modern C/C++ compilers provide this functionality we no longer need to provide it manually in PETScTime: 1.5 hoursThanks-t
Remove the use and definition of __FUNCT__ throughout the codeSince all modern C/C++ compilers provide this functionality we no longer need to provide it manually in PETScTime: 1.5 hoursThanks-to: Andreas Mang <andreas@ices.utexas.edu>
Merge branch 'maint'
clarify SNES solvers that default to left or only support left in manual pagesfix SNESSetNPCSide() manual page to indicate the right, not left is the default for most SNES solversReported-by: Lul
clarify SNES solvers that default to left or only support left in manual pagesfix SNESSetNPCSide() manual page to indicate the right, not left is the default for most SNES solversReported-by: Lulu Liu <lulu.liu@kaust.edu.sa>
SNES: Add flag indicating if final residual is always computedAlthough SNESSolve_XXX always updates the solution variable, it may notbe the case that the residual in vec_func is the residual at th
SNES: Add flag indicating if final residual is always computedAlthough SNESSolve_XXX always updates the solution variable, it may notbe the case that the residual in vec_func is the residual at the newsolution. Track this behaviour explicitly for all concreteimplementations. We will use this in SNESSolve_FAS to determine if theresidual must be computed before transferring it between levels.
Begin renaming the PetscOptions objects for the future where PetscOptions will not be a singleton
fix violations of PETSc style guide: Usage of SETERRQ and NULL
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
If the user sets bounds and calls a solver that does not support them, throw an error.
updated PETSc directory layout to match standard packaging strategiesinclude/petsc finclude,private,mpiunilib/petsc confbin/petsc*
simplify option object names
moved PetscOptionsObject from global variable to local variable in functions
manual merge of conflict
introduced nonlinear solver HTML tablechanged gs and pc in SNES to ngs and npc for consistency and clarity
SNES: Removed now-extraneous fnorm variable from SNESApplyPC()Since c1c75074e128c85b53ed5ce1f9b329b0e4d789b9 the fnorm argumenthas been unused. Fix documentation also.Reported-by: Barry Smith <
SNES: Removed now-extraneous fnorm variable from SNESApplyPC()Since c1c75074e128c85b53ed5ce1f9b329b0e4d789b9 the fnorm argumenthas been unused. Fix documentation also.Reported-by: Barry Smith <bsmith@mcs.anl.gov>
Sys: drop explicit type arguments from PetscNew() and PetscNewLog()git grep -l 'PetscNew\(Log\)\?(' -- $1 | xargs perl -pi -e 's@PetscNew\([^,;()]+ *, *@PetscNew(@;s@PetscNewLog\(([^,;()]+) *,[^,
Sys: drop explicit type arguments from PetscNew() and PetscNewLog()git grep -l 'PetscNew\(Log\)\?(' -- $1 | xargs perl -pi -e 's@PetscNew\([^,;()]+ *, *@PetscNew(@;s@PetscNewLog\(([^,;()]+) *,[^,;()]+, *@PetscNewLog($1,@'
Merge branch 'master' into barry/sawsConflicts: src/ksp/pc/impls/gamg/gamg.c src/sys/classes/viewer/impls/ams/ams.c src/sys/objects/pinit.c
123456