@@ -11,6 +11,76 @@ for a complete description of all MOOSE changes.
1111
1212## libMesh-level Changes
1313
14+ ### ` 2025.02.25 ` Update
15+
16+ - Bug fix: ` normals ` vectors at the sides of edge elements in 3D,
17+ which were previously hard-coded to return ` (-1,0,0) ` and ` (1,0,0) `
18+ at points 0 and 1 respectively (the correct solution only for
19+ x-axis-aligned edges), are now correctly calculated for all edges in
20+ 2D/3D. Compatibility with this fix required a corresponding fix in
21+ one MOOSE application; developers of any applications not in MOOSE
22+ CI who use non-x-axis-aligned edge elements may wish to test their
23+ codes for result changes with this update.
24+ - Bug fix: H(curl) and H(div) element calculations are now correct on
25+ 2D elements embedded in 3D space and not parallel to the xy plane.
26+ - Bug fix: Some TIMPI communications of "packed-range" data (data with
27+ variable-size data types), when given enough input data (typically
28+ ~ 4MB by default) to split between multiple buffers and given an
29+ output iterator that requires correct incrementation, were not
30+ correctly preserving that iterator from one buffer to the next.
31+ This has been fixed.
32+ - Fix for a multithreading error in applications where multiple
33+ threads are encountering elements with negative mapping Jacobians
34+ - Preconditioning option, to scale new raw degrees of freedom, when
35+ importing mesh constraint rows from a sparse matrix. This can
36+ greatly improve solver robustness on such constrained systems.
37+ - Support for the combination of subdomain-restricted variables with
38+ subdomain-spanning mesh constraints. This fixes errors from certain
39+ use cases of subdomain-restricted variables on IsoGeometric
40+ Analysis meshes.
41+ - Command line option ` --mpi-thread-type ` to manually choose between
42+ "single", "funneled", "serialized", and "multiple" MPI
43+ initialization threading options. Initialization still defaults to
44+ "funneled" (for maximum compatibility with older MPI
45+ implementations), but users of slate/strumpack may need to specify
46+ "multiple" for compatibility with those packages.
47+ - PetscMatrix support for hash-table-based matrices with newer PETSc
48+ versions. This will allow MOOSE much more flexibility in problems
49+ (e.g. contact) where a priori determination of matrix sparsity
50+ patterns is difficult.
51+ - Fixes for ` HYPRE_SetMemoryLocation ` in more complicated (e.g. field
52+ split) configurations
53+ - Removed ` contrib/boost ` , which was a version incompatible with
54+ C++17. libMesh codes (including MOOSE) which require boost now must
55+ have an external boost installation to use.
56+ - Support for and compiler flag selection for configuring libMesh with
57+ newer Intel compilers
58+ - Bug fixes and first-order two-dimensional test coverage for
59+ VariationalMeshSmoother.
60+ - ` MeshTools::n_connected_components() ` function to count the number
61+ of connected components in a mesh
62+ - Added operator[ ] for DenseVector. This is more consistent with
63+ other vector/map container types, and enables more compatibility
64+ with generic templated algorithms.
65+ - ` PetscMatrix::frobenius_norm() ` method, and refactoring of other
66+ norm calculations
67+ - New ` transient_ex3 ` example application demonstrating a explicit
68+ DG/FV formulation of the 2D advection equation
69+ - Improvements and more options in ` calculator ` app
70+ - Improvements and bug fixes in reduced-basis code
71+ - New grad(div()) problem example code with Raviart-Thomas elements
72+ - Support for "packing" for Cap'n'Proto users
73+ - Bug fix in FParser optimized JIT output
74+ - Bug fix for ` elem_default_orders() ` print style in
75+ ` MeshBase::get_info() ` and ` print_info() ` .
76+ - Bug fix for corrupt time stamps in Exodus outputs with a single time
77+ step
78+ - Bug fixes in programmatic setting of PETSc preconditioners
79+ - Workarounds for older PETSc error-checking macros are now removed;
80+ raw PETSc code should use ` LibmeshPetscCall ` for error checking.
81+ - General cleanup in autoconf (` ./configure ` source) code
82+ - General refactoring in ` FEInterface `
83+
1484## PETSc-level Changes
1585
1686## Bug Fixes and Minor Enhancements
0 commit comments