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```{rubric} Configure/Build: 13``` 14 15```{rubric} Sys: 16``` 17 18- Deprecate `PetscSSEIsEnabled()` 19 20```{rubric} Event Logging: 21``` 22 23```{rubric} PetscViewer: 24``` 25 26- Add `PetscViewerHDF5SetCompress()` and `PetscViewerHDF5GetCompress()` 27 28```{rubric} PetscDraw: 29``` 30 31```{rubric} AO: 32``` 33 34```{rubric} IS: 35``` 36 37```{rubric} VecScatter / PetscSF: 38``` 39 40```{rubric} PF: 41``` 42 43```{rubric} Vec: 44``` 45 46```{rubric} PetscSection: 47``` 48 49```{rubric} PetscPartitioner: 50``` 51 52```{rubric} Mat: 53``` 54 55- Add `MatConstantDiagonalGetConstant()` 56 57```{rubric} MatCoarsen: 58``` 59 60```{rubric} PC: 61``` 62 63- Add `PCMatApplyTranspose()` 64- Remove `PC_ApplyMultiple` 65 66```{rubric} KSP: 67``` 68 69- Add `MatLMVMGetLastUpdate()` 70- Add `MatLMVMMultAlgorithm`, `MatLMVMSetMultAlgorithm()`, and `MatLMVMGetMultAlgorithm()` 71- Add `MatLMVMSymBroydenGetPhi()` and `MatLMVMSymBroydenSetPhi()` 72- Add `MatLMVMSymBadBroydenGetPsi()` and `MatLMVMSymBadBroydenSetPsi()` 73- 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` 74 75```{rubric} SNES: 76``` 77 78```{rubric} SNESLineSearch: 79``` 80 81```{rubric} TS: 82``` 83 84```{rubric} TAO: 85``` 86 87- Add ``TaoBRGNSetRegularizationType()``, ``TaoBRGNGetRegularizationType()`` 88 89```{rubric} PetscRegressor: 90``` 91 92- Add new component to support regression and classification machine learning tasks: [](ch_regressor) 93- Add `PetscRegressor` type `PETSCREGRESSORLINEAR` for solving linear regression problems with optional regularization 94 95```{rubric} DM/DA: 96``` 97 98- Add `DMHasBound()`, `DM_BC_LOWER_BOUND` and `DM_BC_LOWER_BOUND` 99 100 101```{rubric} DMSwarm: 102``` 103 104```{rubric} DMPlex: 105``` 106 107- Add `DMPlexGetTransform()`, `DMPlexSetTransform()`, `DMPlexGetSaveTransform()`, and `DMPlexSetSaveTransform()` 108- Add `DMPlexGetCoordinateMap()` and `DMPlexSetCoordinateMap()` 109- Add `DMPlexTransformCohesiveExtrudeGetUnsplit()` 110- Add `DMFieldCreateDefaultFaceQuadrature()` 111- Rename `DMPlexComputeResidual_Internal()` to `DMPlexComputeResidualForKey()` 112- Rename `DMPlexComputeJacobian_Internal()` to `DMPlexComputeJacobianByKey()` 113- Rename `DMPlexComputeJacobian_Action_Internal()` to `DMPlexComputeJacobianActionByKey()` 114- Rename `DMPlexComputeResidual_Hybrid_Internal()` to `DMPlexComputeResidualHybridByKey()` 115- Rename `DMPlexComputeJacobian_Hybrid_Internal()` to `DMPlexComputeJacobianHybridByKey()` 116- Add `DMPlexInsertBounds()` 117 118```{rubric} FE/FV: 119``` 120 121- Add `PetscFEExpandFaceQuadrature()` 122 123```{rubric} DMNetwork: 124``` 125 126```{rubric} DMStag: 127``` 128 129```{rubric} DT: 130``` 131 132```{rubric} Fortran: 133``` 134