diagonal.hpp optional serif/solver/preconditioner/contract.hpp serif/solver/preconditioner/strategies/inverse/diagonal_regularization.hpp src/compile_time_checks/serif/solver/preconditioner/inverses.cpp src/include/serif/solver/preconditioner/backend/mfem/inverse/diagonal.hpp src/include/serif/solver/preconditioner/computations/inverse.hpp serif::solver::preconditioner::strategies::inverse::Diagonal serif::solver::preconditioner::strategies::inverse::Identity serif serif::solver serif::solver::preconditioner serif::solver::preconditioner::strategies serif::solver::preconditioner::strategies::inverse #pragmaonce #include<optional> #include"serif/solver/preconditioner/contract.hpp" #include"serif/solver/preconditioner/strategies/inverse/diagonal_regularization.hpp" namespaceserif::solver::preconditioner::strategies::inverse { structDiagonalfinal { staticconstexprApplicationContractapplication_contract{ApplicationContract::fixed_linear}; std::optional<DiagonalRegularization>regularization; }; structIdentityfinal { staticconstexprApplicationContractapplication_contract{ApplicationContract::fixed_linear}; }; }//namespaceserif::solver::preconditioner::strategies::inverse