idaholab / moose

Multiphysics Object Oriented Simulation Environment
https://www.mooseframework.org
GNU Lesser General Public License v2.1
1.65k stars 1.02k forks source link

Eigen solves with constraints should use CondensedEigenSystem #27262

Open lindsayad opened 3 months ago

lindsayad commented 3 months ago

Motivation

See https://github.com/libMesh/libmesh/pull/3584 and https://github.com/libMesh/libmesh/issues/3585 for some background. Additionally, @pbalest has some work due this FY that would ideally use CFEM in Griffin with different refinement levels at subdomain interfaces which introduce constraint equations whether using h- or p-refinement

Design

Use CondensedEigenSystem all the time in NonlinearEigenSystem or at least when constraints are present in the DofMap. Condense out constrained rows and columns so that the matrix on which we are performing the eigen solve only represents the physics so we don't get spurious modes

Impact

Make eigensolves with constraints give reliable answers

lindsayad commented 3 months ago

@YaqiWang @roystgnr FYI