1# Changes: Development 2 3% STYLE GUIDELINES: 4% * Capitalize sentences 5% * Use imperative, e.g., Add, Improve, Change, etc. 6% * Don't use a period (.) at the end of entries 7% * If multiple sentences are needed, use a period or semicolon to divide sentences, but not at the end of the final sentence 8 9```{rubric} General: 10``` 11 12- Add `PETSCPYTHONPATH` to the generated `$PETSC_DIR/$PETSC_ARCH/lib/petsc/conf/petscvariables` file so it is available to users through the makefile system 13- Add `PETSCPYTHONPATH` to the generated `$PETSC_DIR/$PETSC_ARCH/lib/pkgconfig/PETSc.pc` file so it is available to users with 14 `PKG_CONFIG_PATH=$PETSC_DIR/$PETSC_ARCH/lib/pkgconfig pkg-config --variable=PETSCPYTHONPATH PETSc.pc` 15 16 17```{rubric} Configure/Build: 18``` 19 20```{rubric} Sys: 21``` 22 23- Deprecate `PetscSSEIsEnabled()` 24 25```{rubric} Event Logging: 26``` 27 28```{rubric} PetscViewer: 29``` 30 31- Add `PetscViewerHDF5SetCompress()` and `PetscViewerHDF5GetCompress()` 32 33```{rubric} PetscDraw: 34``` 35 36```{rubric} AO: 37``` 38 39```{rubric} IS: 40``` 41 42```{rubric} VecScatter / PetscSF: 43``` 44 45```{rubric} PF: 46``` 47 48```{rubric} Vec: 49``` 50 51```{rubric} PetscSection: 52``` 53 54```{rubric} PetscPartitioner: 55``` 56 57```{rubric} Mat: 58``` 59 60- Add `MatConstantDiagonalGetConstant()` 61- Add `MatNullSpaceRemoveFn` type definition 62- Add `MatMFFDFn`, `MatMFFDiFn`, `MatMFFDiBaseFn`, and `MatMFFDCheckhFn` type definitions 63- Add `MatFDColoringFn` type definition 64 65```{rubric} MatCoarsen: 66``` 67 68```{rubric} PC: 69``` 70 71- Add `PCMatApplyTranspose()` 72- Remove `PC_ApplyMultiple` 73- Add `PCShellPSolveFn` 74- Add `PCModifySubMatricesFn` 75 76```{rubric} KSP: 77``` 78 79- Add `MatLMVMGetLastUpdate()` 80- Add `MatLMVMMultAlgorithm`, `MatLMVMSetMultAlgorithm()`, and `MatLMVMGetMultAlgorithm()` 81- Add `MatLMVMSymBroydenGetPhi()` and `MatLMVMSymBroydenSetPhi()` 82- Add `MatLMVMSymBadBroydenGetPsi()` and `MatLMVMSymBadBroydenSetPsi()` 83- Deprecate `KSP_CONVERGED_RTOL_NORMAL` in favor of `KSP_CONVERGED_RTOL_NORMAL_EQUATIONS` and `KSP_CONVERGED_ATOL_NORMAL` in favor of `KSP_CONVERGED_ATOL_NORMAL_EQUATIONS` 84- Add `KSPFlexibleSetModifyPC()` to provide a common API for setting the modification function for all flexible `KSP` methods 85- Add `KSPFlexibleModifyPCFn` function prototype 86- Change the function signature of the `destroy()` argument to `KSPSetConvergenceTest()` to `PetscCtxDestroyFn*`. If you provide custom destroy 87 functions to `KSPSetConvergenceTest()` you must change them to expect a `void **` argument and immediately dereference the input 88- Add `KSPPSolveFn` 89 90```{rubric} SNES: 91``` 92 93```{rubric} SNESLineSearch: 94``` 95 96```{rubric} TS: 97``` 98 99```{rubric} TAO: 100``` 101 102- Add ``TaoBRGNSetRegularizationType()``, ``TaoBRGNGetRegularizationType()`` 103 104```{rubric} PetscRegressor: 105``` 106 107- Add new component to support regression and classification machine learning tasks: [](ch_regressor) 108- Add `PetscRegressor` type `PETSCREGRESSORLINEAR` for solving linear regression problems with optional regularization 109 110```{rubric} DM/DA: 111``` 112 113- Add `DMHasBound()`, `DM_BC_LOWER_BOUND` and `DM_BC_LOWER_BOUND` 114 115 116```{rubric} DMSwarm: 117``` 118 119```{rubric} DMPlex: 120``` 121 122- Add `DMPlexGetTransform()`, `DMPlexSetTransform()`, `DMPlexGetSaveTransform()`, and `DMPlexSetSaveTransform()` 123- Add `DMPlexGetCoordinateMap()` and `DMPlexSetCoordinateMap()` 124- Add `DMPlexTransformCohesiveExtrudeGetUnsplit()` 125- Add `DMFieldCreateDefaultFaceQuadrature()` 126- Rename `DMPlexComputeResidual_Internal()` to `DMPlexComputeResidualForKey()` 127- Rename `DMPlexComputeJacobian_Internal()` to `DMPlexComputeJacobianByKey()` 128- Rename `DMPlexComputeJacobian_Action_Internal()` to `DMPlexComputeJacobianActionByKey()` 129- Rename `DMPlexComputeResidual_Hybrid_Internal()` to `DMPlexComputeResidualHybridByKey()` 130- Rename `DMPlexComputeJacobian_Hybrid_Internal()` to `DMPlexComputeJacobianHybridByKey()` 131- Add `DMPlexInsertBounds()` 132 133```{rubric} FE/FV: 134``` 135 136- Add `PetscFEExpandFaceQuadrature()` 137 138```{rubric} DMNetwork: 139``` 140 141```{rubric} DMStag: 142``` 143 144```{rubric} DT: 145``` 146 147- Deprecate `PetscSimplePointFunc` in favor of `PetscSimplePointFn *` 148- Deprecate `PetscPointFunc` in favor of `PetscPointFn *` 149- Deprecate `PetscPointJac` in favor of `PetscPointJacFn *` 150- Deprecate `PetscBdPointFunc` in favor of `PetscBdPointFn *` 151- Deprecate `PetscBdPointJac` in favor of `PetscBdPointJacFn *` 152- Deprecate `PetscRiemannFunc` in favor of `PetscRiemannFn *` 153- Deprecate `PetscProbFunc` in favor of `PetscProbFn *` 154 155```{rubric} Fortran: 156``` 157