# MOOSE Newsletter (May 2022)

!alert! construction title=In Progress
This MOOSE Newsletter edition is in progress. Please check back in June 2022
for a complete description of all MOOSE changes.
!alert-end!

## MOOSE Improvements

## libMesh-level Changes

## PETSc-level Changes

## Bug Fixes and Minor Enhancements

# MOOSE Newsletter (May 2022)

!alert! construction title=In Progress
This MOOSE Newsletter edition is in progress. Please check back in June 2022
for a complete description of all MOOSE changes.
!alert-end!

## MOOSE Improvements

## libMesh-level Changes

### `2022.05.06` Update

- More internal memory management uses smart pointers rather than raw
  `new` and `delete`
- `MeshBase`, `ExodusII`, and mesh stitching now support element sets
  (which unlike subdomains specified with `subdomain_id`, can overlap)
- Mesh stitching is now possible (via automatically temporarily
  serializing) a `DistributedMesh`.  This is useful when building a
  smaller mesh in serial but distributing it before it gets enlarged
  by refinement or extrusion.
- Triangulation improvements:
  - Support for specifying a fixed level of uniform refinement on each
    outer and/or hole boundary, then optionally disallowing further refinement
  - Mesh holes can be specified using other Mesh objects, for easier
    stitching later.
- `Abaqus` mesh file input now supports `TRI6` and `QUAD8` elements
- Support for more than 65,535 variables in a `System`
- `Node` and `Elem` `packed_range` code now always unpacks to a mesh
  - This enables use of the more-efficient NBX communication
    algorithms, the `push_` and `pull_` `parallel_vector_data` methods
    in `timpi/parallel_sync.h`, with ranges of nodes and elements
- Improvements to `reduced_basis` code
- Various bug fixes and interface updates
  - Updating deprecated `ExodusII` API uses
  - Compatibility with `PETSc` 3.17
  - Fix Eigen use of C++17-deprecated call

- MetaPhysicL updates, for additional unit testing, better
  compatibility with some compilers and compiler warning settings, and
  support for `std::isinf()`.

## PETSc-level Changes

## Bug Fixes and Minor Enhancements

Update newsletter with libMesh updates
Update newsletter with libMesh updates
