diff --git a/modules/doc/content/newsletter/2025/2025_01.md b/modules/doc/content/newsletter/2025/2025_01.md index 693b5a2b1a44..0466cf7b75bc 100644 --- a/modules/doc/content/newsletter/2025/2025_01.md +++ b/modules/doc/content/newsletter/2025/2025_01.md @@ -1,10 +1,5 @@ # MOOSE Newsletter (January 2025) -!alert! construction title=In Progress -This MOOSE Newsletter edition is in progress. Please check back in February 2025 -for a complete description of all MOOSE changes. -!alert-end! - ## MOOSE Improvements ### Added ParsedConvergence @@ -14,16 +9,93 @@ convergence and divergence criteria. The parsed expression may include other [Convergence](Convergence/index.md) objects, [Functions](Functions/index.md), [Post-processors](Postprocessors/index.md), and constant values. +### General meshing + +The [CutMeshByLevelSetGenerator.md] mesh generator was added to be able to modify meshes using general functions, +while keeping the cut mesh with a smooth first order surface. Previously, only plane cuts were supported. + +### Restart capabilities + +The [SolutionUserObject.md] can now use a fixed transformation on the time that it reads the solution at. This can be +used to load a new solution on every time step, but at a different rate than the simulation time. + +The old (one timestep prior) and older (two timesteps prior) states of a variable can now be initialized in the +[initial conditions `[ICs]` block](syntax/ICs/index.md). + ## MOOSE Modules Changes -## libMesh-level Changes +### Thermal hydraulics + +A new closure, [FunctorClosures.md], was added that leverages functors to compute the friction coefficients in flow components, +the wall heat transfer coefficient, and other thermal hydraulics closures. + +### Fluid properties + +In preparation for using the enthalpy variable in lieu of the temperature variable in computational fluid dynamics solves, +the `T_from_p_h` routine, used to compute temperature from the fluid pressure and enthalpy, was implemented in the following +fluid properties: + +- HelmholtzFluidProperties, such as [CO2FluidProperties.md], [NitrogenFluidProperties.md], [MethaneFluidProperties.md] and [HydrogenFluidProperties.md] +- [LeadFluidProperties.md] +- [LeadBismuthFluidProperties.md] +- [StiffenedGasFluidProperties.md] + +[TabulatedFluidProperties.md] were improved with the following modifications: + +- a logarithmic grid in enthalpy can now be used for properties computed from specific volume and specific enthalpy +- a specific volume, specific energy tabulation can be read, but still rely on specific volume, specific enthalpy conversions to a pressure and temperature variable sets + in order to avoid an iterative solve +- the number of out-of-bounds evaluations can now be tallied and reported in the console log + +### Navier Stokes + +The [VolumetricFlowRate.md] object was extended to support the linear finite volume discretization. + +An option to compute enthalpy directly rather than its approximation by the product of specific heat by temperature +has been added in the [INSFVEnthalpyFunctorMaterial.md]. This facilitates the problem setup when the approximation is not +valid, such as for compressible gases. + +The PIMPLE (PISO+SIMPLE) algorithm has been implemented. With this, the linear finite volume capabilities support +transient simulations as well. For more information, see [PIMPLE.md]. + +### Reactor module + +The [ControlDrumMeshGenerator.md] is now integrated in the Reactor Mesh Generator Building (RGMB) workflow. This abbreviated +syntax facilitates the use of the mesh generators in the Reactor module to build Cartesian and hexagonal lattice-based reactor cores. +It sets all the defaults and additional metadata that are expected by the downstream reactor physics applications (such as Griffin). + +### Solid Mechanics + +The [QuasiStaticSolidMechanicsPhysics.md] is no longer creating displacement variables without the block restriction of the `Physics`. +This is intended for being able to restrict the solid mechanics equations to only part of the subdomain. Simulations using multiple solid +mechanics `Physics` will automatically create the displacement variables using the union of all the block restrictions, if `add_variables` is +set in the shared `[Physics/SolidMechanics/QuasiStatic]` block. Simulations with other `Physics` deriving or creating the `QuasiStaticSolidMechanicsPhysics` +programmatically (such as in BISON) should likely create the displacement variables in a `Variables` block. + +The method used by the four-node shell elements ([ShellElements.md]) to define local coordinate systems has been revised. In the revised version, the user provides a reference direction for the first local coordinate, and that is then projected onto the plane of the shells and used as the first local coordinate direction. An AuxKernel has been added to visualize the local coordinate directions. These changes, together with the correction of a longstanding bug with the calculation of the normal direction, enable the use of these elements for accurate computation of the response of curved shells, as confirmed by multiple regression tests that agree well with published analytical solutions. + +The [PressureAction.md] is now controllable. It can be activated and de-activated using the [Controls system](syntax/Controls/index.md). +The +enable+ status is propagated to the boundary conditions that the Action creates. + +### XFEM -## PETSc-level Changes +A new [MeshCut2DFractureUserObject.md] was added; it is a 2D mesh based cutting object that will nucleate and grow cracks in XFEM using fracture integrals computed by the Solid Mechanics [DomainIntegralAction.md]. The fracture toughness determining when a crack will grow can be defined as a spatially varying field and sampled using the [CrackFrontNonlocalScalarMaterial.md] vectorpostprocessor that is used as an input in the MeshCut2DFractureUserObject. ## Bug Fixes and Minor Enhancements -- MooseDocs SQA has the ability to check against multiple test specification file names (for example, `tests` as well - as `assessments`) when performing requirement reporting and checks, using the `specs:` parameter - in `sqa_reports.yml`. +- MooseDocs SQA has the ability to check against multiple test specification file names (for example, + `tests` as well as `assessments`) when performing requirement reporting and checks, using the + `specs:` parameter in `sqa_reports.yml`. +- The [ElementMaterialSampler.md] can now be used to sample only selected material properties rather than all properties. + from a single `Material`. This can also be used to sample from properties defined by separate `Materials`. +- A check was added to prevent infinite recursion when using the same input file as part of both the parent and + child applications. +- A new error was added when a user tries to initialize a variable using an Exodus initial condition and a shorthand `initial_condition` + parameter in the relevant `Variable`'s block. +- A boolean flag was added to the `Outputs` block to limit the verbosity of the material property output, which is useful for large-dimensional + tensor property output. +- The [ParsedGenerateNodeset.md] mesh generator can now work with non-contiguously numbered meshes. +- A debug option was added for [Controls](syntax/Controls/index.md): `show_controllable`, which will output all the quantities that can be controllable + at initialization as well as all the controlled quantities and their current values during the simulation. ## Conda Package Changes diff --git a/modules/doc/content/newsletter/2025/2025_02.md b/modules/doc/content/newsletter/2025/2025_02.md new file mode 100644 index 000000000000..354df344787e --- /dev/null +++ b/modules/doc/content/newsletter/2025/2025_02.md @@ -0,0 +1,18 @@ +# MOOSE Newsletter (February 2025) + +!alert! construction title=In Progress +This MOOSE Newsletter edition is in progress. Please check back in March 2025 +for a complete description of all MOOSE changes. +!alert-end! + +## MOOSE Improvements + +## MOOSE Modules Changes + +## libMesh-level Changes + +## PETSc-level Changes + +## Bug Fixes and Minor Enhancements + +## Conda Package Changes diff --git a/modules/doc/content/newsletter/index.md b/modules/doc/content/newsletter/index.md index 7268cb94f6a4..340947c7292e 100644 --- a/modules/doc/content/newsletter/index.md +++ b/modules/doc/content/newsletter/index.md @@ -4,6 +4,10 @@ MOOSE is a dynamic project with changes occurring daily. In order to help users major changes to the project monthly highlights will be produced. These highlights will be posted monthly to the [MOOSE discussion forum](contact_us.md) as well as provided below. +## 2025 + +- [January, 2025](2025_01.md) + ## 2024 - [December, 2024](2024_12.md)