reference_mass.hpp expected span serif/solver/preconditioner/backend/mfem/inverse.hpp serif/solver/preconditioner/strategies/inverse/diagonal_regularization.hpp serif/solver/preconditioner/strategies/surface/calibrated_mass.hpp serif/solver/preconditioner/strategies/surface/reference_mass.hpp src/include/serif/solver/preconditioner/backend/mfem/surface/calibrated_mass.hpp src/lib/serif/solver/preconditioner/backend/mfem/surface/reference_mass.cpp serif::solver::preconditioner::backend::mfem::SurfaceMassInverse serif serif::solver serif::solver::preconditioner serif::solver::preconditioner::backend serif::solver::preconditioner::backend::mfem #pragmaonce #include<expected> #include<span> #include"serif/solver/preconditioner/backend/mfem/inverse.hpp" #include"serif/solver/preconditioner/strategies/inverse/diagonal_regularization.hpp" #include"serif/solver/preconditioner/strategies/surface/calibrated_mass.hpp" #include"serif/solver/preconditioner/strategies/surface/reference_mass.hpp" namespaceserif::solver::preconditioner::backend::mfem { structSurfaceMassInversefinal { Inverseinverse; strategies::surface::SurfaceMassFitfit; strategies::inverse::DiagonalRegularizationReportregularization; }; [[nodiscard]]std::expected<SurfaceMassInverse,Failure>try_reference_surface_mass_inverse(std::span<constdouble>reference_metric,strategies::surface::ReferenceSurfaceMassoptions={}); }//namespaceserif::solver::preconditioner::backend::mfem