remove garbage from makefilesIncluding * unused FLAGS variables * All: lib that did not work * stray blank lines etcCommit-type: housekeeping/spend 1h
Docs: bulk add backticks to .seealso man page fields```pythonimport osimport reimport fileinputdef _process_word(word): comma = "," if word.endswith(",") else "" return "`%s`%s" % (wor
Docs: bulk add backticks to .seealso man page fields```pythonimport osimport reimport fileinputdef _process_word(word): comma = "," if word.endswith(",") else "" return "`%s`%s" % (word.rstrip(","), comma)def _process_stripped_line(line): return " ".join(map(_process_word, line.split()))start_pattern = re.compile(r"^( *\.seealso:? )(.*$)")def process_file(filename_full): with fileinput.FileInput(filename_full, inplace=True) as f: in_block = False for line in f: line_stripped = line.strip() # end ".seealso blocks" on a blank line or C-style comment close line_modified = None if not line_stripped: in_block = False elif line_stripped.endswith("*/"): in_block = False else: match = re.match(start_pattern, line) # not stripped line if match: indent = " " * len(match.group(1)) in_block = True line_modified = match.group( 1) + _process_stripped_line( match.group(2).strip()) elif in_block: line_modified = indent + _process_stripped_line( line_stripped) if line_modified: print(line_modified) # prints to the file else: print(line, end="") # prints to the fileBASE_DIRS = ["src", "include"]EXT = [".c", ".cxx", ".cpp", ".cu", ".h", ".hpp", ".hxx"]EXCLUDE_DIRS = ["tests", "tutorials", "ftn-auto", "ftn-custom", "benchmarks"]def main(): """ Process everything """ for base in BASE_DIRS: for root, dirs, files in os.walk(base): for filename in files: if os.path.splitext(filename)[1] in EXT: filename_full = os.path.join(root, filename) print("FILE ---", filename_full) process_file(filename_full) for exclude_dir in EXCLUDE_DIRS: if exclude_dir in dirs: dirs.remove(exclude_dir)if __name__ == "__main__": main()```
show more ...
Remove PetscCheckFalse from SNES directoryCommit-type: housekeeping/spend 20m
Enable PETSC_ATTRIBUTE_FORMAT()
The great renaming:- CHKERRQ() -> PetscCall()- CHKERRV() -> PetscCallVoid()- CHKERRMPI() -> PetscCallMPI()- CHKERRABORT() -> PetscCallAbort()- CHKERRCONTINUE() -> PetscCallContinue()- CHKERRXX
The great renaming:- CHKERRQ() -> PetscCall()- CHKERRV() -> PetscCallVoid()- CHKERRMPI() -> PetscCallMPI()- CHKERRABORT() -> PetscCallAbort()- CHKERRCONTINUE() -> PetscCallContinue()- CHKERRXX() -> PetscCallThrow()- CHKERRCXX() -> PetscCallCXX()- CHKERRCUDA() -> PetscCallCUDA()- CHKERRCUBLAS() -> PetscCallCUBLAS()- CHKERRCUSPARSE() -> PetscCallCUSPARSE()- CHKERRCUSOLVER() -> PetscCallCUSOLVER()- CHKERRCUFFT() -> PetscCallCUFFT()- CHKERRCURAND() -> PetscCallCURAND()- CHKERRHIP() -> PetscCallHIP()- CHKERRHIPBLAS() -> PetscCallHIPBLAS()- CHKERRHIPSOLVER() -> PetscCallHIPSOLVER()- CHKERRQ_CEED() -> PetscCallCEED()- CHKERR_FORTRAN_VOID_FUNCTION() -> PetscCallFortranVoidFunction()- CHKERRMKL() -> PetscCallMKL()- CHKERRMMG() -> PetscCallMMG()- CHKERRMMG_NONSTANDARD() -> PetscCallMMG_NONSTANDARD()- CHKERRCGNS() -> PetscCallCGNS()- CHKERRPTSCOTCH() -> PetscCallPTSCOTCH()- CHKERRSTR() -> PetscCallSTR()- CHKERRTC() -> PetscCallTC()
pluck ~1000 low hanging PetscCheckFalse() -> PetscCheck() fruit
chkerr and friends wrapped
rename PetscAssert() -> PetscCheck() and PetscAssertDebug() -> PetscAssert()
add PetscAssert() and PetscAssertFalse()
make PetscInfo() variadic
SETERRQ[1-9]+ begone
Found location where SETERRQ() was not immediately called when snes->errorifnotconverged was set.This makes tracking down and debugging issuses in this situation more difficult.Commit-type: error
Found location where SETERRQ() was not immediately called when snes->errorifnotconverged was set.This makes tracking down and debugging issuses in this situation more difficult.Commit-type: error-checkingProject: hyperbolic/spend 30m
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
SNES: only change linesearch type when not already setThis is necessary to allow users to SNESLineSearchSetType before SNESSetFromOptions.
SNESLineSearch should only be created and used if the SNES type requires the line searchPreviously the line search was created for all solver and and SNESLineSearchSetFromOptions()and SNESLineSear
SNESLineSearch should only be created and used if the SNES type requires the line searchPreviously the line search was created for all solver and and SNESLineSearchSetFromOptions()and SNESLineSearchView() called for all solvers, even those that never used it,leading to confusion for usersCommit-type: feature, documentationReported-by: Robert Nourgaliev <nourgaliev1@llnl.gov>
Support domain errors in SNESComputeJacobian
Add two APIs: SNESGetUpdateNorm and SNESGetSolutionNormRetrieve update and solution normsWe may/might want to print update and solution norms in a user-provided convergence checker if the SNES co
Add two APIs: SNESGetUpdateNorm and SNESGetSolutionNormRetrieve update and solution normsWe may/might want to print update and solution norms in a user-provided convergence checker if the SNES converged due to a small update length.
Fix several of the TODO: items from the testig of examplesStill a variety of problems to resolve including memory corruptionCommit-type: testing-fix
SNES: move logging of KSP iterations into SNESCheckKSPSolveThis fixes inconsistencies noticed by snes/examples/tutorials/ex5.cwhich checks that the number of linear iterations reported by the KSP
SNES: move logging of KSP iterations into SNESCheckKSPSolveThis fixes inconsistencies noticed by snes/examples/tutorials/ex5.cwhich checks that the number of linear iterations reported by the KSPmatches that reported by SNES. Prior to this change, lack ofconvergence would cause an early return without including the KSPiterations.Commit-type: bug-fix
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/
Make ASCII PC/KSP/SNES/TSView() code and output in a standard styleThe code that prints the ASCII view for solvers was occasionally inconsistent:1) TSView printed the type specific information aft
Make ASCII PC/KSP/SNES/TSView() code and output in a standard styleThe code that prints the ASCII view for solvers was occasionally inconsistent:1) TSView printed the type specific information after the general info while all other solvers printed it before (right after the name of the type is printed)2) KSPView consistently printed the name of the subtype on EACH line of the subtypes output as did a few of the PC and SNES viewers. Since they are all printed indented directly below the subtype name there is no reason to print this information on each line3) TSView printed output about number of linear solvers and SNES even for explicit methods, which is goofy.4) a few other minor formatting and consistency issues where fix.Commit-type: style-fix, featureTime: 16 hours
clarify damping and other issues related to SNESLINESEARCHBASICReported-by: Mark Adams <mfadams@lbl.gov>
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>
SNES: Add flag indicating if final residual is always computedAlthough SNESSolve_XXX always updates the solution variable, it may notbe the case that the residual in vec_func is the residual at th
SNES: Add flag indicating if final residual is always computedAlthough SNESSolve_XXX always updates the solution variable, it may notbe the case that the residual in vec_func is the residual at the newsolution. Track this behaviour explicitly for all concreteimplementations. We will use this in SNESSolve_FAS to determine if theresidual must be computed before transferring it between levels.
Begin renaming the PetscOptions objects for the future where PetscOptions will not be a singleton
12345678910>>...21