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
checkbadSource: enforce proper style in makefiles
Remove unneeded macros
Introduce PetscFortranCallbackFn to be used instead of PetscVoidFn for Fortran callback functionsAlso fix incorrect use of SNESFunctionFn and SNESJacobianFn in SNES Fortran manual stub
Tao: Add names for TaoLineSearch types
Merge remote-tracking branch 'origin/release'
Fix typos
Remove the last of the uses of $ in the first line of formatted manual pages
Add missing logging and info dataTaoLineSearch: Register for info processingVec: Add VEC_Reciprocal log event
Fix manual pages related to FortranRemove a couple of dead Fortran bindings
Minor cleanup of Fortran binding stuff to simplify future maintainanceThere is no distinction between F90 and non-F90 code so combine ftn-custom and f90-custom directories and fortranimpl.h and f90
Minor cleanup of Fortran binding stuff to simplify future maintainanceThere is no distinction between F90 and non-F90 code so combine ftn-custom and f90-custom directories and fortranimpl.h and f90impl.h files. Also move uses of f90 to ftn when simple
Fortran: fix PETSC_HAVE_FORTRAN_UNDERSCORE defsAnd remove FORTRANDOUBLEUNDERSCORE, cleanup PETSC_HAVE_FORTRAN_UNDERSCORE_UNDERSCORERevert PETSC_VIEWER_STDOUT_BROKEN from 5022eb3e26e9dbfdd711345ef
Fortran: fix PETSC_HAVE_FORTRAN_UNDERSCORE defsAnd remove FORTRANDOUBLEUNDERSCORE, cleanup PETSC_HAVE_FORTRAN_UNDERSCORE_UNDERSCORERevert PETSC_VIEWER_STDOUT_BROKEN from 5022eb3e26e9dbfdd711345efc14d09b0dee953f
Fortran 90: fully embrace After 34 years!- deprecate use of 'F90' in Fortran function names- use Fortran pointers when appropriate- the new Fortran API is not backward compatible with previous ve
Fortran 90: fully embrace After 34 years!- deprecate use of 'F90' in Fortran function names- use Fortran pointers when appropriate- the new Fortran API is not backward compatible with previous versions!- also clean up inconsistent PETSc code detected by new Fortran generation tools- drop use of bfort- automatically generate all the Fortran PETSc objects, enums etc from the include files- generate most of the Fortran interface definitions and functions from the source code- simplify the number and organization of Fortran modulesCo-authored-by: Jose E. Roman <jroman@dsic.upv.es>
Remove useless code
Docs: minor fixes
Merge branch 'lindad/lock-for-tao-ls' into 'main'Lock base vector when performing line searches in taoSee merge request petsc/petsc!7965
Spread changes to other tao linesearch methods
Lock base vector when performing line searches in taoUpdating MOOSE to work with PETSc 3.22 I discovered bad MOOSE codethat was triggered by lock checks during default, finite-differencinggradien
Lock base vector when performing line searches in taoUpdating MOOSE to work with PETSc 3.22 I discovered bad MOOSE codethat was triggered by lock checks during default, finite-differencinggradient computation. This code was taking the incoming vector fromPETSc and copying it into the solution set in `TaoSetSolution`. Thisgot me to thinking that I should also be seeing errors not just inperturbed, finite difference calculations but also in any line searchcalculation. Consequently, this MR
Brain dead fixes for useless casts
CI: update checkclangformat to use clang-format-19.1.0
Fix MPIU_* routines to always return MPI error codes and thus be usable with PetscCallMPI()Introduce MPIU_Count to be used when MPI_Count is not available
Update to sowing version that supports PetscViewer and PetscObjectRemove manual Fortran stubs for PetscViewer and PetscObject arguments since now handled by sowingAlso handles the passing of null
Update to sowing version that supports PetscViewer and PetscObjectRemove manual Fortran stubs for PetscViewer and PetscObject arguments since now handled by sowingAlso handles the passing of null objects correctly
123456789