moose icon indicating copy to clipboard operation
moose copied to clipboard

Libmesh submodule update

Open roystgnr opened this issue 1 year ago • 3 comments
trafficstars

This shouldn't be merged yet, since we don't want to make @milljm 's job in #26848 even harder; plus there's another libMesh PR that I'd be happy to see snuck in under the wire if we really take too long ... but I'm anxious like to see what downstream CI makes of the changes that are here so far; it's entirely possible that we have users who are reading QuadShell4 meshes (because that's a Cubit default) and turning them second-order, and any golded results based on that will break when "full second-order" becomes actually-full second-order - see #27987 for the fix to such a failure in the Navier-Stokes module.

Summary of changes:

  • Support for QuadShell9 elements, and fixes for refinement of QuadShell8 elements. This is a behavior-changing update: QuadShell4 elements, when elevated to second order, now become QuadShell9 (with a full biquadratic Lagrange space) rather than QuadShell8 (with a "Serendipity element" space).
  • Fixes for libMesh make dist and make distcheck with new submodules and new contributed packages.
  • Support and unit tests for non-square EigenSparseMatrix matrices
  • Support and unit tests for reading sparse matrices from gzipped-Matlab format files.
  • Utility for converting sparse matrix files from PETSc binary formats to Matlab format.
  • Improved speed for reading sparse matrices.
  • Refactoring of some solution transfer code; exposure of MeshfreeInterpolationFunction class to users.
  • Support and unit tests in TIMPI for set_union of multiset and multimap containers, including unordered_ versions.
  • Refactored Nedelec finite element code for simplification and generality.
  • Fixes and testing for more IsoGeometricAnalysis use cases on distributed meshes.
  • Additional fparser headers installed, to enable user subclassing
  • Assorted bug fixes: configure now supports preexisting -Werror in compiler flags (with tested compilers), more standard treatment of PETSc error codes.
  • PetscVector subvectors can now be created by supplying only local subvector indices.
  • Incoming vectors to local_variable_indices() are now cleared before filling.
  • PerfLog profiling of matrix reads and mesh constraint initialization.
  • Refactoring and optional debugging features for mesh constraint code.
  • Added RBConstruction::is_serial_training_type() and EIM updates to reduced basis code.
  • Added a DofMap API for users to request full matrix sparsity pattern retention even with linear algebra packages that do not need it themselves.

roystgnr avatar Jun 28 '24 15:06 roystgnr