Support domain errors in SNESComputeJacobian
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.
show more ...
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>
Print warning about using debugging code THREE times in PetscLogView_Default() output so won't be missedIssue #138 Now if Jed and Satish would only let me write it in redReported-by: Patrick Sana
Print warning about using debugging code THREE times in PetscLogView_Default() output so won't be missedIssue #138 Now if Jed and Satish would only let me write it in redReported-by: Patrick Sanan <patrick.sanan@gmail.com>Fix incorrect function name in manual pagesAdd ex9.c to makefile so that .html version gets generated
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.
removed a bunch of unneeded inclusions of xxximpl.h which exposed private data where it did not have to be exposedalso made more systematic the inclusion of the base xxximpl.h in the derived yyyimp
removed a bunch of unneeded inclusions of xxximpl.h which exposed private data where it did not have to be exposedalso made more systematic the inclusion of the base xxximpl.h in the derived yyyimpl.hso the inclusion is done in the include file rather than in each source code that includes it
Updated script for detecting visible symbolsRemoved unneeded visibility of some symbolsFixed some namespacingRemoved the use of unneeded implementation includes in the TAO code
fixed up formatting of references in manualpages to consistent styleReferences:+ 1. - ref1. 2. - ref2- 3. - ref3previously the formatting was varied and ugly
broken nonlinear solver table links fixedReported-by: Andrew McRae <A.T.T.McRae@bath.ac.uk>Also made References: formatting consistent by always listing authors first
Begin renaming the PetscOptions objects for the future where PetscOptions will not be a singleton
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
updated PETSc directory layout to match standard packaging strategiesinclude/petsc finclude,private,mpiunilib/petsc confbin/petsc*
Fix obviously-wrong aspects of documentation on SNESVINEWTONRSLS and SNESVINEWTONSSLS.
Added VecLockPush/Pop() around SNES callbacks etcAdded DADAVecGetArray[DOF]Read()Added use of GetArrayRead() as neededAdded many more const as neededNote DMDAVecGetArray[DOF]Read() does not yet
Added VecLockPush/Pop() around SNES callbacks etcAdded DADAVecGetArray[DOF]Read()Added use of GetArrayRead() as neededAdded many more const as neededNote DMDAVecGetArray[DOF]Read() does not yet require correctly consted argument
simplify option object names
moved PetscOptionsObject from global variable to local variable in functions
manual merge of conflict
the compute Jacobian functions for SNES and TS now do not take a MatStructure flag
KSPSetOperators() no longer has the MatStructure argument. The Mat objects now track that information themselves. Use KPS/PCSetReusePreconditioner() to prevent the recomputation of the preconditioner
KSPSetOperators() no longer has the MatStructure argument. The Mat objects now track that information themselves. Use KPS/PCSetReusePreconditioner() to prevent the recomputation of the preconditioner if the operator changed in the way that SAME_PRECONDITIONER did with KSPSetOperators()SNES/TS still need to be cleaned up to better utilize the new interfaces
completed cleanup of removal of matrix pointers to compute jacobian routinesupdate changes filefixed tao examples to no longer use Mat* arguments for Jacobian/Hessian etc computations
merged TAO_INFINITY and SNES_VI_INF into PETSC_INFINITY
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
snes->ttol to be used only in convergence tests.
12345