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 ...
checkbadSource: enforce proper style in makefiles
distinguish Boolean and IntegerMPI_Comm_get_attr has PetscMPIInt as flag argument, not PetscBool. Namethis flag "iflg" (was used somewhere already).Use MPI_LAND instead of MPI_BAND for logical op
distinguish Boolean and IntegerMPI_Comm_get_attr has PetscMPIInt as flag argument, not PetscBool. Namethis flag "iflg" (was used somewhere already).Use MPI_LAND instead of MPI_BAND for logical operations instead ofMPI_MIN, MPI_MAX, and MPI_LAND.Note: Most of the previous code was probably working as intended, I didthe changes when debugging error related to the use of standard C Bool andkept them because it took me a while to understand that MPI has integerflags and PETSc has Booleans. Using different names makes this clear,but was and is not done consistently.
missing "s" for isascii and issundials
Remove explicitly listed empty files and switch to output/empty.out
PetscDualSpaceDuplicate_Lagrange: duplicate moment information
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 unneeded parentheses
Fixes for clang-tidy
Add to CI compilers flags '-Wconversion', '-Wno-sign-conversion', '-Wno-float-conversion', '-Wno-implicit-float-conversion']Also fix the code to repository to compile cleanly with these flags in th
Add to CI compilers flags '-Wconversion', '-Wno-sign-conversion', '-Wno-float-conversion', '-Wno-implicit-float-conversion']Also fix the code to repository to compile cleanly with these flags in the CI
plexcreate: add localizationHeight and sparseLocalize args to DMPlexCreateBoxMesh()
plex: Print out labels in sorted stratum order
CI: update to clang-format-18
Remove some unneeded parentheses
Remove multiple parentheses and extra semicolongit grep -l -E "\(\([a-zA-Z0-9_]+\)\(\*[a-zA-Z0-9_]+\)[, )]" | xargs sed -r -i'' 's#\(\(([a-zA-Z0-9_]+)\)\(\*([a-zA-Z0-9_]+)\)([, )])#\(\(\1\)\*\2\3#g
Remove multiple parentheses and extra semicolongit grep -l -E "\(\([a-zA-Z0-9_]+\)\(\*[a-zA-Z0-9_]+\)[, )]" | xargs sed -r -i'' 's#\(\(([a-zA-Z0-9_]+)\)\(\*([a-zA-Z0-9_]+)\)([, )])#\(\(\1\)\*\2\3#g'git grep -l -E "Petsc(.)*\(\(\*[a-zA-Z0-9_]*\)," | xargs sed -r -i'' 's#Petsc([a-zA-Z0-9_]*)\(\(\*([a-zA-Z0-9_]*)\), #Petsc\1(*\2, #g'git grep -l -E "([\!\&\~\*\(]|\)\)|\([^,\*\(]+\**\))\(([a-zA-Z0-9_]+((\.|->)[a-zA-Z0-9_]+|\[[a-zA-Z0-9_ \%\+\*\-]+\])+)\)" | xargs sed -r -i'' 's#([\!\&\~\*\(]|\)\)|\([^,\*\(]+\**\))\(([a-zA-Z0-9_]+((\.|->)[a-zA-Z0-9_]+|\[[a-zA-Z0-9_ \%\+\*\-]+\])+)\)#\1\2#g'
FE: Give prefixes to small matrices so we do not view them by default
DM: Correct misspelling
Merge branch 'barry/2023-12-22/rm-libbase' into 'main'LIBBASE is no longer used in make so remove itSee merge request petsc/petsc!7139
LIBBASE is no longer used in make so remove it
Remove MANSEC from makefiles it is not needed in, tutorials and tests
Rename rules.doc and rules.utils because GitLab treats the former as a MS Word document.Thanks-to: Jed Brown
Remove DIRS variable and unneeded tabs from all makefiles since no longer neededCommit-type: housekeeping
Remove first and last empty lines
PetscFE: add PETSCFEVECTORReductions in the cost of computing, storing, and applyinga Tabulation can be achieved for a finite element spacethat is a vector of "scalar" finite elements (the "scala
PetscFE: add PETSCFEVECTORReductions in the cost of computing, storing, and applyinga Tabulation can be achieved for a finite element spacethat is a vector of "scalar" finite elements (the "scalar"element itself could be vector-valued).Reductions in the cost of storing and applyinga Tabulation can't be realized until the PetscTabulation structureitself is changed, but at the very least reduction in the cost ofcomputing a tabulation is possible with a new PetscFEType,PETSCFEVECTOR.To complete the interface, we also add PETSCDUALSPACESUM,a dual space whose dual basis is the sum of other dual bases,that parallels PETSCSPACESUM (the space and dual space ofa PETSCFEVECTOR are a PETSCSPACESUM and PETSCDUALSPACESUM,respectively).To allow the user to specify whether thebasis vector and value components of the PETSCFEVECTORof blockwise or interleaved, we also have to make surePETSCSPACESUM and PETSCDUALSPACESUM can have blockwiseor interleaved behavior. We add both capabilities.PETSCFEVECTOR is now used by detecting compatiblevector-valued dual and primal spaces in PetscFECreateFromSpaces().
Rename PetscValidPointer -> PetscAssertPointer
12345