Merge remote-tracking branch 'origin/release'
Merge branch 'zach/tao-monitor-modernization' into 'main'Modernize TAO monitoring to resemble TS and friendsSee merge request petsc/petsc!9029
TAO: update OWLQN iteration counter tao->niter (#1867)
TAO: use gradient in CG/NLS fallback descent paths (#1860,#1868)
Remove the last of the use of horizontal lines --- as seperators. With modern code development systems they are not needed and just an eye-sore
Tao - Update monitor functions to work like TS
Add automatic generated fortran support for setting and returning contextsMajor cleanup of the code for setting and returning application (previously called user) contexts - PetscCtx ctx is now t
Add automatic generated fortran support for setting and returning contextsMajor cleanup of the code for setting and returning application (previously called user) contexts - PetscCtx ctx is now the standard for passing in contexts - PetscCtxRt ctx is the standard for passing out contexts, including context destroy routines based on PetscCtxDestroyFnBoth of these are typedef to void*Also removed most use of user and userctx for context arguments now consistently named ctxImproved documentation on PetscCtx and PetscCtxRt and on how to use contexts (including getting them) from Fortran
show more ...
Improve the propagation of function domain error handling in SNES, especially in the line search routines.Due to the object layering of SNESLineSearch under SNES there is some code duplication incl
Improve the propagation of function domain error handling in SNES, especially in the line search routines.Due to the object layering of SNESLineSearch under SNES there is some code duplication include both SNESLineSearchReason and SNESConvergedReason and SNESCheckFunctionNorm() and SNESLineSearchCheckFunctionNorm() and Jacobian friendsReported-by: david.knezevic@akselos.com
Fix missing equal sign
Proper capitalization from Gram-Schmidt orthogonalization
Fix bad decisions made in writing TS. Fix -ts_dt to -ts_time_step and add initial time step to TSView outputcommit a5a92c11fa9681148df375b257eda4e09909b74eAuthor: Barry Smith <bsmith@petsc.de
Fix bad decisions made in writing TS. Fix -ts_dt to -ts_time_step and add initial time step to TSView outputcommit a5a92c11fa9681148df375b257eda4e09909b74eAuthor: Barry Smith <bsmith@petsc.dev>Date: Mon Dec 1 14:51:27 2025 -0500 add max_snes_failures to TSViewcommit 32d3e79f6fa743930b1bbf32d03b9181b5b5418aAuthor: Barry Smith <bsmith@petsc.dev>Fix wrongly named options and add to TSViewWrong name for options database key -ts_max_reject should be -ts_max_step_rejections!Add max_reject value to TSViewAdd max_snes_failures to TSViewAdd initial timestep to TSView
Fix terminology for Pmat in KSPView output.
cleanup suggestions by @BarrySmithalso noticed a few stray functions not marked as external and put theminto modules
use modules instead of externalthis allows for argument checking
place all the include statements at the topRepeated inclusion in multiple location, e.g. at the start of amodule or function is not needed. This becomes clear if all includes areoutside of the ac
place all the include statements at the topRepeated inclusion in multiple location, e.g. at the start of amodule or function is not needed. This becomes clear if all includes areoutside of the actual Fortran code.Added regex to check that with the help of @sbalay
checkbadSource: enforce proper style in makefiles
Have KSPView() indicate when there is no convergence test.Reported-by: Elana Moral Sanchez
Change use of void (*)(void) and void (**)(void) in the PETSc API to PetscVoidFn * and PetscVoidFn ** or PetscErrorCodeFn * or PetscErrorCodeFn **
Run fprettify
Remove unnecessary braces around one-linersgit grep -lE "[ ]*(if|for|while) \(.*\) {[^;]*;[^;]*}$" -- '*.c' '*.cxx' '*.cu' '*.h' '*.hpp' '*.cpp' | xargs sed -i '' -E 's#([ ]*)(if|for|while) \((.*)\
Remove unnecessary braces around one-linersgit grep -lE "[ ]*(if|for|while) \(.*\) {[^;]*;[^;]*}$" -- '*.c' '*.cxx' '*.cu' '*.h' '*.hpp' '*.cpp' | xargs sed -i '' -E 's#([ ]*)(if|for|while) \((.*)\) {([^;]*);([^;]*)}$#\1\2 \(\3\)\4;\5#'
SNESLinesearch: Minor improvements- add missing configuration options in the documentation of the line searches (some of the available options were not listed), and consistently list their respecti
SNESLinesearch: Minor improvements- add missing configuration options in the documentation of the line searches (some of the available options were not listed), and consistently list their respective default values- add proper convergence criteria for the secant method in the L2 line search based on ltol and atol (otherwise, the secant method is mostly running for the maximum number of iterations)- fix a small bug in the CP line search, where steptol * lambda was used to check for convergence based on the change of lambda instead of the ltol parameter- rename sneslinesearch->maxstep to sneslinesearch->maxlambda in the options database to be consistent with its purpose in the algorithms- rename SNESLineSearchL2 to SNESLineSearchSecant to better represent its underlying approach
configure: fix capitalization of multiple packages and PETSc itself
Fix typos
fortran no semicolon at end of lineRemove all unneeded ; at end of Fortran source code lineAdd checkbadSource to check for semicolon at the end of lines
12345678910>>...19