Skip to content

Commit 06fbdc0

Browse files
committed
Update newsletter
refs #31906
1 parent 4755e10 commit 06fbdc0

File tree

1 file changed

+86
-0
lines changed

1 file changed

+86
-0
lines changed

modules/doc/content/newsletter/2025/2025_11.md

Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,94 @@ for a complete description of all MOOSE changes.
1111

1212
## libMesh-level Changes
1313

14+
### `2025.11.14` Update
15+
16+
- A long-deprecated behavior has been removed: code initializing data
17+
using an `FE` object now *must* prerequest all data it will later
18+
access; it can no longer prerequest nothing and rely on libMesh to
19+
interpret that as a potential need for everything.
20+
- A large number of long-deprecated APIs have been removed:
21+
- The `DofObject::set_unique_id()` overload that returns a reference
22+
is gone; use the overload that takes an argument instead.
23+
- `Elem::centroid()` is gone. Code that requires an accurate
24+
approximation of ths should be using `Elem::true_centroid()`
25+
instead; code that requires a non-centroidal but
26+
quick-to-calculate internal point should be using
27+
`Elem::vertex_average()` instead.
28+
- `Elem::which_node_am_i()` is gone. Use `Elem::local_side_node()`
29+
instead.
30+
- The `BoundaryInfo::build_*_list()` overloads that fill vector
31+
arguments are gone. Use the overloads that return vectors
32+
instead, or use the `multimap` getters.
33+
- `CondensedEigenSystem` no longer supports direct access to raw
34+
`condensed_matrix_A` and `condensed_matrix_B` pointers; use e.g.
35+
`get_condensed_matrix_A()` instead.
36+
- The `MeshFunction::init()` overload taking a tree build type is
37+
gone. Use the other `init()` overload instead.
38+
- The poorly named `EquationSystems::get_solution()` is gone. Use
39+
`EquationSystems::build_elemental_solution_vector() for elemental
40+
data instead.
41+
- `System::read_legacy_data()` is gone. Use libMesh .xda files that
42+
postdate 2007, and show your pre-2007 libMesh .xda files to Roy to
43+
amuse and delight him.
44+
- The old `libmesh/mesh_inserter_iterator.h` header is gone. Rely
45+
on `Node` and `Elem` unpacking specializations to insert
46+
communicated objects into a target `UnstructuredMesh`.
47+
- The `libmesh_make_unique` macro is gone. Use `std::make_unique`
48+
directly.
49+
- The old `libmesh/auto_ptr.h` header and macro is gone. Use
50+
`std::unique_ptr`.
51+
- `Utility::iota()` and `Utility::is_sorted()` are gone. Use
52+
`std::iota()` and `std::is_sorted()`
53+
- `DynaIO::clear_spline_nodes()` is gone. Use
54+
`MeshTools::clear_spline_nodes()` instead.
55+
- `DifferentiableSystem::swap_physics()` is gone. Use `push_physics()` and
56+
`pop_physics()` instead.
57+
- `DifferentiableSystem::init_qoi()` is gone. Override
58+
`DifferentiableQoI::init_qoi_count()` in `DifferentiableQoI`
59+
subclasses instead.
60+
- `RBParameterized::get_parameter_names()` and an
61+
`RBEvaluation::eval_output_dual_norm()` overload have been
62+
removed. Use `get_parameters_map()` or the remaining
63+
`eval_output_dual_norm()` overload.
64+
- libMesh now throws `DegenerateMap` exceptions when encountering
65+
singularities while evaluating geometric element mappings or
66+
factoring dense matrices, not `LogicError` exceptions, which are
67+
reserved for errors in logic. Code catching these exceptions should
68+
use the new type, or for compatibility with old libMesh can catch
69+
`std::exception & e` and examine `e.what()` to determine the exception
70+
details.
71+
- MetaPhysicL code can now run on accelerator/GPU devices, using Kokkos
72+
- `VariationalSmoother` now supports meshes with tetrahedral elements.
73+
- `VariationalSmoother` now supports fine-grained user-controlled
74+
verbosity, and emits better error messages in cases where a smoother
75+
optimization solve fails.
76+
- Added `SparseMatrix::print_coreform_hdf5`, to create CSR-structured
77+
matrix data in HDF5 files in the Coreform format.
78+
- `LaplaceMeshSmoother` now has API signatures to match
79+
`VariationalSmoother`.
80+
- `Elem::size_vertex_average_normal()` now supports `Edge3` (and in
81+
theory `Edge4`) elements
82+
- Added `ExodusII_IO::set_unique_ids_from_maps()` to set `unique_id()`
83+
rather than `id()` from Exodus file numbering. This can be useful
84+
for efficiency when loading very sparse numberings into a
85+
`ReplicatedMesh`.
86+
- Added `libmesh_assert_valid_point_locator()` method to verify
87+
`PointLocator` consistency when debugging with potentially-changed
88+
meshes
89+
- Bug fixes:
90+
- The VariationalSmoother is now calculating target elements
91+
properly; this gives better-smoothed results for meshes with
92+
triangle, prism, and pyramid elements.
93+
- libMesh no longer triggers deprecation warnings with PETSc 3.24
94+
and newer versions
95+
- libMesh no longer triggers compiler warnings from NVidia HPC SDK
96+
compilers
97+
1498
## PETSc-level Changes
1599

100+
- PETSc was updated to v3.24.1
101+
16102
## Bug Fixes, Minor Changes, and Minor Enhancements
17103

18104
## Conda Package Changes

0 commit comments

Comments
 (0)