shape_derivatives.hpp serif/geometry/deformation/computations.hpp serif/backend/mfem/model/deformation.hpp src/include/serif/backend/mfem/model/computations/interior.hpp src/include/serif/backend/mfem/model/computations/scalar_row.hpp serif::model::computations::ShapeDerivatives serif serif::model serif::model::computations #pragmaonce #include"serif/geometry/deformation/computations.hpp" #include"serif/backend/mfem/model/deformation.hpp" namespaceserif::model::computations{ structShapeDerivatives{ }; [[nodiscard]]inlineautoshape_derivatives(constdiscretization::backend::mfem::DofMap&binding){ usingnamespaceutils::dependencies; constautoprojection=backend::mfem::displacement_projection(binding); returnmake_owning_computation<ShapeDerivatives,InputList<geometry::deformation::keys::Linearization>>([projection](constauto&deformation){ returnbackend::mfem::ShapeDerivatives{.deformation=deformation,.projection=projection, .tangent=serif::operators::backend::mfem::compose_blocks(projection,backend::mfem::deformation_tangent(deformation))}; }); } }