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().
show more ...
Manual linter fixes: dm
Rename PetscValidPointer -> PetscAssertPointer
Deploy new PetscValidPointer, remove PetscValidXXXPointer
Lint apply: dm
Fix trivial typos etc in some manual pagesAlso remove manual page for SNESNGSFunction since it does not exist
Improve PetscSpace and PetscDualSpace manual pagesFew things needed from MattCommit-type: documentation
Remove redundant call after PetscOptionsDeprecated()
More manual page fixes
Remove need for seperate lib/petsc/conf/test file by merging with rules fileCommit-type: maintainability
non-test and tutorial makefiles only need rules.doc not the full rulesCommit-type: documentation
Only makefiles in the test and tutorial directories need lib/petsc/conf/testCommit-type: housekeeping
Fix manual pages based on reports from Jacob's lint toolCommit-type: documentation
Remove now unneeded SOURCE* variables from makefilesCommit-type: configure, housekeeping
Remove unneeded SOURCEH from makefilesNo longer used by docs or build
Misc static analyzer bugs found
Remove empty preprocessor variables
Remove unneeded declarations of LOCDIR from all the makefilesCommit-type:documentation
Make PetscErrorCode a non-discardable enum
Fix some typos
Fix manual pages in a variety of parts of src/dmStill many other parts of DM need to have their manual pages updatedCommit-type: housekeeping/spend 4h
source code format changes due to .clang-format changes
Merge branch 'jolivet/fix-implicit-fallthrough' into 'main'Fix -Wimplicit-fallthroughSee merge request petsc/petsc!5655
Fix -Wimplicit-fallthrough
Remove parent, parentid, flops, time, mem, and memchildren. Deprecate PetscLogObjectParent(), PetscLogObjectMemory(), and PetscNewLog()
123456