add PetscAssert() and PetscAssertFalse()
Fix manpages: Input/Output Parameter --> Parameters
Remove all double blank lines from sourceCommit-type: petsc-style/2h
PC: Changed PCCompositeAddPC() to PCCompositeAddPCType()
Turn on checkbadSource test to generate an error when found; fix all source code that causes errorsCommit-type: portability-fix, testing-fix, style-fix, feature, maintainability/spend 1.5h
KSP/PC: Fix 0 ->NULL for pointers
Single petscdir.mk
build: add more support for not needing to set PETSC_DIR yet build with PETSc, also support for GNU make to directly use "make test" instead of "make -f gmakefile.test"Still needs -include ../petsc
build: add more support for not needing to set PETSC_DIR yet build with PETSc, also support for GNU make to directly use "make test" instead of "make -f gmakefile.test"Still needs -include ../petscdir.mk in many of the makefilesStill needs the link for ../petscdir.mk in many directoriesGNUMakefile: call legacy makefile recursively instead of including itGNUMakefile: promote default "all" target; "libs" builds libpetsc*GNUMakefile: If gnumake < 4.2 prefer makefile wrapper interface over direct gmakefile interface to avoid the following warningsgmakefile.test:92: arch-ci-linux-cxx-cmplx-pkgs-64idx/tests/testfiles: No such file or directorygmakefile:67: arch-ci-linux-cxx-cmplx-pkgs-64idx/lib/petsc/conf/files: No such file or directoryCommit-type: testing-fix, feature, usabilityThanks-to: Jed Brown jed@jedbrown.org
show more ...
Remove usage of PETSC_HAVE_FORTRAN_STDCALL, PETSC_BLASLAPACK_STDCALL, HAVE_FORTRAN_MIXED_STR_ARG flags - as Compaq f90 compiler is no longer supported
Some typos
Man pages: remove Concepts: fieldsThese fields were previously stripped from the man pages by logic removed in 21a59cba2737d49dc2f0bd12c08db0d2a3f3f209Remove these fields from all man pages (but
Man pages: remove Concepts: fieldsThese fields were previously stripped from the man pages by logic removed in 21a59cba2737d49dc2f0bd12c08db0d2a3f3f209Remove these fields from all man pages (but not from examples).This is accomplished with GNU sed (gsed on OS X), with the following commands.*Warning* that this type of command can corrupt a .git directory,so be cautious in reusing or modifying these commands. They first lookfor and delete matching lines with a following line consisting of only whitespace,and then delete any remaining matching lines. find src -type f -not -path "*/examples/*" -not -name "*.html" -not -name "*.bib" -exec gsed -i '/Concepts:/ {N; /\n\s*$/d}' {} + find src -type f -not -path "*/examples/*" -not -name "*.html" -not -name "*.bib" -exec gsed -i '/Concepts:/d' {} + find include -type f -not -path "*/examples/*" -not -name "*.html" -not -name "*.bib" -exec gsed -i '/Concepts:/ {N; /\n\s*$/d}' {} + find include -type f -not -path "*/examples/*" -not -name "*.html" -not -name "*.bib" -exec gsed -i '/Concepts:/d' {} +Hints on the sed command obtained from: https://unix.stackexchange.com/questions/100754/how-to-delete-a-specific-line-and-the-following-blank-line-using-gnu-sed
Man pages: remove .keywords: fieldsThis field is recognized by doctext from Sowing (http://wgropp.cs.illinois.edu/projects/software/sowing/doctext/node20.htm#Node20),but it doesn't seem to be unif
Man pages: remove .keywords: fieldsThis field is recognized by doctext from Sowing (http://wgropp.cs.illinois.edu/projects/software/sowing/doctext/node20.htm#Node20),but it doesn't seem to be uniformly used or maintained.Thus, remove all .keywords: fields, and a following blank line, if present.This is accomplished with GNU sed (gsed on OS X), with the following commands.*Warning* that this type of command can corrupt a .git directory,so be cautious in reusing or modifying these commands. They first lookfor and delete matching lines with a following line consisting of only whitespace,and then delete any remaining matching lines. find src/ -type f -exec gsed -i '/keywords:/ {N; /\n\s*$/d}' {} + find src/ -type f -exec gsed -i '/keywords:/d' {} + find include/ -type f -exec gsed -i '/keywords:/ {N; /\n\s*$/d}' {} + find include/ -type f -exec gsed -i '/keywords:/d' {} +Hints on the sed command obtained from: https://unix.stackexchange.com/questions/100754/how-to-delete-a-specific-line-and-the-following-blank-line-using-gnu-sed
Add if (*ierr) return checks for all Fortran stubs that utilize FREECHAR()Otherwise the ierr is overwritten by the FREECHAR() thus returning a zero error code when it should notCommit-type: bug-f
Add if (*ierr) return checks for all Fortran stubs that utilize FREECHAR()Otherwise the ierr is overwritten by the FREECHAR() thus returning a zero error code when it should notCommit-type: bug-fixReported-by: Tim Steinhoff <kandanovian@gmail.com>
Man pages: add newlines after "Notes:"This allows for proper formatting from sowing.On OS X (using gsed, not the default BSD sed), from the PETSc root directory: find src include -type f \(
Man pages: add newlines after "Notes:"This allows for proper formatting from sowing.On OS X (using gsed, not the default BSD sed), from the PETSc root directory: find src include -type f \( -name "*.c" -or -name "*.h" -or -name "*.cxx" \) | xargs gsed -i 's/Notes\s*:\s*\(\w.*\)/Notes:\n \1/'This adds a newline and 4 spaces whenever "Notes:" is followed by any "word" character, in any .c, .h, or .cxx file in src/ or include/
Fix some minor/semantic bugs identified by clang analyzer
PCComposite: increment tab level for sub PCsThanks-to: Patrick Farrell <patrick.farrell@maths.ox.ac.uk>
Only propagate operators into inner PCs in PCCOMPOSITE if they are not set by userAdd test case where propagation is not done. Clarify docsCommit-type: feature, documentation, exampleReported by
Only propagate operators into inner PCs in PCCOMPOSITE if they are not set by userAdd test case where propagation is not done. Clarify docsCommit-type: feature, documentation, exampleReported by: Pierre Jolivet <pierre.jolivet@enseeiht.fr>Thanks-to: Jed Brown <jed@jedbrown.org>
Fix possible sprintf -Wformat-overflow
Minor cleanup, remove some outdated code, remove unneeded constructs, improve manual pages slightly, add missing test caseTime: 2.5 hours
Remove the use and definition of __FUNCT__ throughout the codeSince all modern C/C++ compilers provide this functionality we no longer need to provide it manually in PETScTime: 1.5 hoursThanks-t
Remove the use and definition of __FUNCT__ throughout the codeSince all modern C/C++ compilers provide this functionality we no longer need to provide it manually in PETScTime: 1.5 hoursThanks-to: Andreas Mang <andreas@ices.utexas.edu>
Updated and simplified Fortran interfaceReduced from 4 distinct approaches to using PETSc from Fortran to 1No more .h90 files (Fortran 90 functionality is now always available)Parameters and func
Updated and simplified Fortran interfaceReduced from 4 distinct approaches to using PETSc from Fortran to 1No more .h90 files (Fortran 90 functionality is now always available)Parameters and function prototypes are now provide through Fortran modules, not includes;only #define are provided in the petscXXXdef.h filesPETSc objects can be declared as either type(tXXX) or XXX. For example type(tVec) or VecMoved now private Fortran include files out of public include directory since uses don't use them;they are only used to generate the Fortran modulesEasier to support and test; we can now easily add more function prototypesAlso had to rework generation of manual pages to consistently use MANSEC and SUBMANSECsince these variables also handle how the Fortran modules are generated.Time: 57 hours
Begin renaming the PetscOptions objects for the future where PetscOptions will not be a singleton
Merge branch 'knepley/fix-pc-composite-dm'* knepley/fix-pc-composite-dm: PC: Fixed propagation of DM by PCCOMPOSITE Reported-by: Lawrence Mitchell <lawrence.mitchell@imperial.ac.uk>
Pass the reuse preconditioner flag down to children of PCCOMPOSITE.
added PCCompositeGetNumberPC() to provide number of PC in a composite PCProvided-by: Andrew Cramer <a.cramer@uq.edu.au>
1234567