@@ -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