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
Introduce PetscFortranCallbackFn to be used instead of PetscVoidFn for Fortran callback functionsAlso fix incorrect use of SNESFunctionFn and SNESJacobianFn in SNES Fortran manual stub
Change use of void (*)(void) and void (**)(void) in the PETSc API to PetscVoidFn * and PetscVoidFn ** or PetscErrorCodeFn * or PetscErrorCodeFn **
missing "s" for isascii and issundials
Add typedef for MatMFFD funtion prototypes
Do not expose unneeded symbols
Fix -Whigher-precision-for-complex-division with Intel oneAPI 2025.1.0src/mat/impls/mffd/mffddef.c:78:31: warning: excess precision is requested but the target does not support excess precision whi
Fix -Whigher-precision-for-complex-division with Intel oneAPI 2025.1.0src/mat/impls/mffd/mffddef.c:78:31: warning: excess precision is requested but the target does not support excess precision which may result in observable differences in complex division behavior [-Whigher-precision-for-complex-division] 78 | *h = ctx->error_rel * dot / (nrm * nrm); | ^1 warning generated.src/dm/interface/dmgeommodel.c:42:77: warning: excess precision is requested but the target does not support excess precision which may result in observable differences in complex division behavior [-Whigher-precision-for-complex-division] 42 | for (PetscInt d = 0; d < dE - 1; ++d) gcoords[d] = gmax[0] * mcoords[d] / norm; | ^src/ksp/ksp/impls/bcgs/qmrcgs/qmrcgs.c:117:32: warning: excess precision is requested but the target does not support excess precision which may result in observable differences in complex division behavior, additional uses where the requested higher precision cannot be honored were found but not diagnosed [-Whigher-precision-for-complex-division] 117 | cf = theta * theta * eta / alpha; | ^src/mat/impls/dense/seq/dense.c:1043:73: warning: excess precision is requested but the target does not support excess precision which may result in observable differences in complex division behavior, additional uses where the requested higher precision cannot be honored were found but not diagnosed [-Whigher-precision-for-complex-division] 1043 | x[i] = (1. - omega) * x[i] + omega * (xt + v[i + i * m] * x[i]) / (v[i + i * m] + shift); | ^
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 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>
Merge remote-tracking branch 'origin/release'
Fix typos
Improve some manual pages in KSP/SNES
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 source code removing all unneeded /*@C and associated manual stubs and interfaces
release docs fixesCommit-type: i.e. error-checking, optimization, bug-fix, portability-fix, testing-fix, style-fix, feature, documentation, exampleFunded-by:Project:Time: hoursReported-by:
release docs fixesCommit-type: i.e. error-checking, optimization, bug-fix, portability-fix, testing-fix, style-fix, feature, documentation, exampleFunded-by:Project:Time: hoursReported-by:Thanks-to:Development Tools: Vim, Emacs, Eclipse
Remove carriage return in Petsc(Assert|Check)()git grep -l -E "Petsc(Assert|Check)\(.*\\\n\"[,)]" | xargs sed -r -i'' 's#Petsc(Assert|Check)\((.*)\\n"([,)])#Petsc\1\(\2\"\3#g'Suggested-by: Stefan
Remove carriage return in Petsc(Assert|Check)()git grep -l -E "Petsc(Assert|Check)\(.*\\\n\"[,)]" | xargs sed -r -i'' 's#Petsc(Assert|Check)\((.*)\\n"([,)])#Petsc\1\(\2\"\3#g'Suggested-by: Stefano Zampini
Change the use of the _Fn suffix to indicate a typedef of a function to just FnAs determined on a vote on GitLab
Change PETSc sys typedef function names to use the new _Fn formatCommit-type: housekeeping, maintainance
Consolidate Mat code deriving from MATSHELL
12345678910>>...13