xref: /petsc/doc/changes/311.md (revision d000e8ac2eed99d0cf14796aab94de0aed57fd8b)
1# Changes: 3.11
2
3```{rubric} General:
4```
5
6```{rubric} Configure/Build:
7```
8
9- Configure now supports Python 3.4+ in addition to Python 2.6+.
10
11```{rubric} IS:
12```
13
14```{rubric} PetscDraw:
15```
16
17```{rubric} PF:
18```
19
20```{rubric} Vec:
21```
22
23```{rubric} VecScatter:
24```
25
26- Removed VecScatterCreateEmpty(MPI_Comm,VecScatter\*)
27- Added a PetscSF implementation of VecScatter. One can enable it
28  with -vecscatter_type sf
29
30```{rubric} PetscSection:
31```
32
33```{rubric} Mat:
34```
35
36- MatRegisterBaseName() changed to MatRegisterRootName()
37- Added -mat_mffd_complex to use complex number trick instead of
38  differencing to evaluate product; requires real functions but
39  complex configuration
40- Added initial support for HDF5 files I/O, particularly MATLAB
41  MAT-File Version 7.3, currently only for reading. See also
42  documentation of MatLoad().
43
44```{rubric} PC:
45```
46
47- PCGetSetUpFailedReason is now PCGetFailedReason()
48
49```{rubric} KSP:
50```
51
52- KSP_DIVERGED_PCSETUP_FAILED replaced with KSP_DIVERGED_PC_FAILED
53- Previously the KSP Chebyshev implementation always did one more
54  iteration than requested. For example -ksp_max_it 2 resulted in 3
55  Chebyshev iterations. This has been corrected. Due to this
56  correction your solver may seem to converge more slowely than it
57  previous has. Note that the multigrid solvers (PCMG, PCGAMG, PCML)
58  used by default Chebyshev (with 3 actual steps) in their smoother,
59  thus the multigrid solvers will now have seemingly different
60  convergence rates since they will now use only 2 actual steps. To
61  reproduce previous behavior change the number of smoother
62  iterations to match the previous actual amount, this can be done
63  with for example -mg_levels_ksp_max_it 3 (or
64  -prefix_mg_levels_ksp_max_it 3 if the KSP object has a prefix).
65
66```{rubric} SNES:
67```
68
69- Added SNESKSPTRANSPOSEONLY: a linear solver only SNES that solves
70  the transposed linear system.
71
72```{rubric} SNESLineSearch:
73```
74
75```{rubric} TS:
76```
77
78- Added TSADAPTHISTORY: a new TSAdapt implementation that follows a
79  given time history, that can set with TSAdaptHistorySetHistory().
80- Added TSTrajectoryGetVecs() to reconstructs states and time
81  derivative vectors from a TSTrajectory.
82
83```{rubric} TAO:
84```
85
86- Added extra void\* (context) pointer to the function prototype to
87  be passed as user-defined update function to TaoSetUpdate().
88
89```{rubric} DM/DA:
90```
91
92- Added DMStag and associated functions, for working with quantities
93  on regular staggered grids, in a manner similar to the usage of
94  DMDA for colocated quantities.
95- Added DMLocalToGlobal() and DMLocalToGlobal()
96
97```{rubric} DMPlex:
98```
99
100- Reorganized PetscDS handling completely in order to support
101  multiple subdomains. DMSetDS() was removed in favor of
102  DMSetField()+DMCreateDS().
103- Added additional PetscSF\* return argument to DMPlexGetGatherDM()
104  (made public) and DMPlexGetRedundantDM().
105
106```{rubric} PetscViewer:
107```
108
109- Added new command line options to GLVis viewer, see
110  PetscViewerGLVisOpen() manual page for details.
111
112- PetscViewerHDF5{Has,Read,Write}Attribute():
113
114  - take the input path as relative to the current (pushed) group
115  - support not only dataset attributes but also group attributes
116  - PetscViewerHDF5WriteAttribute() creates the group if it doesn't
117    exist
118  - PetscViewerHDF5HasAttribute() returns false if the parent path
119    doesn’t exist instead of failing
120
121- Added PetscViewerHDF5Has{Group,Object}()
122
123- Added PetscViewerHDF5{Has,Write,Read}ObjectAttribute()
124
125- PetscViewerHDF5OpenGroup() opens the root group (/) if none is
126  pushed
127
128```{rubric} SYS:
129```
130
131PetscOptionsGetViewer() takes a NULL or PetscOptions object as the
132second argument.
133.. rubric:: AO:
134
135```{rubric} Sieve:
136```
137
138```{rubric} Fortran:
139```
140