xref: /petsc/doc/changes/dev.md (revision d03e3399bf3f48bd54966feab56643de45aa3450)
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
62```{rubric} MatCoarsen:
63```
64
65```{rubric} PC:
66```
67
68- Add `PCMatApplyTranspose()`
69- Remove `PC_ApplyMultiple`
70
71```{rubric} KSP:
72```
73
74- Add `MatLMVMGetLastUpdate()`
75- Add `MatLMVMMultAlgorithm`, `MatLMVMSetMultAlgorithm()`, and `MatLMVMGetMultAlgorithm()`
76- Add `MatLMVMSymBroydenGetPhi()` and `MatLMVMSymBroydenSetPhi()`
77- Add `MatLMVMSymBadBroydenGetPsi()` and `MatLMVMSymBadBroydenSetPsi()`
78- 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`
79
80```{rubric} SNES:
81```
82
83```{rubric} SNESLineSearch:
84```
85
86```{rubric} TS:
87```
88
89```{rubric} TAO:
90```
91
92- Add ``TaoBRGNSetRegularizationType()``, ``TaoBRGNGetRegularizationType()``
93
94```{rubric} PetscRegressor:
95```
96
97- Add new component to support regression and classification machine learning tasks: [](ch_regressor)
98- Add `PetscRegressor` type `PETSCREGRESSORLINEAR` for solving linear regression problems with optional regularization
99
100```{rubric} DM/DA:
101```
102
103- Add `DMHasBound()`, `DM_BC_LOWER_BOUND` and `DM_BC_LOWER_BOUND`
104
105
106```{rubric} DMSwarm:
107```
108
109```{rubric} DMPlex:
110```
111
112- Add `DMPlexGetTransform()`, `DMPlexSetTransform()`, `DMPlexGetSaveTransform()`, and `DMPlexSetSaveTransform()`
113- Add `DMPlexGetCoordinateMap()` and `DMPlexSetCoordinateMap()`
114- Add `DMPlexTransformCohesiveExtrudeGetUnsplit()`
115- Add `DMFieldCreateDefaultFaceQuadrature()`
116- Rename `DMPlexComputeResidual_Internal()` to `DMPlexComputeResidualForKey()`
117- Rename `DMPlexComputeJacobian_Internal()` to `DMPlexComputeJacobianByKey()`
118- Rename `DMPlexComputeJacobian_Action_Internal()` to `DMPlexComputeJacobianActionByKey()`
119- Rename `DMPlexComputeResidual_Hybrid_Internal()` to `DMPlexComputeResidualHybridByKey()`
120- Rename `DMPlexComputeJacobian_Hybrid_Internal()` to `DMPlexComputeJacobianHybridByKey()`
121- Add `DMPlexInsertBounds()`
122
123```{rubric} FE/FV:
124```
125
126- Add `PetscFEExpandFaceQuadrature()`
127
128```{rubric} DMNetwork:
129```
130
131```{rubric} DMStag:
132```
133
134```{rubric} DT:
135```
136
137```{rubric} Fortran:
138```
139