system_data.hpp serif/backend/mfem/model/system.hpp src/lib/serif/backend/mfem/model/system.cpp src/lib/serif/backend/mfem/model/system_selection.cpp serif::model::backend::mfem::detail::SystemData serif serif::model serif::model::backend serif::model::backend::mfem serif::model::backend::mfem::detail #pragmaonce #include"serif/backend/mfem/model/system.hpp" namespaceserif::model::backend::mfem::detail { structSystemData { std::shared_ptr<constvoid>owner; introws; intcolumns; std::vector<JacobianContribution>jacobian; std::vector<RowReplacement>replacements; std::vector<bool>replaced_rows; std::optional<std::vector<JacobianContribution>>complete_actions; }; voidvalidate_range(intoffset,intsize,intextent); [[nodiscard]]LinearizedBlockselect_block(std::shared_ptr<constSystemData>data,std::span<constCoordinateRange>rows,std::span<constCoordinateRange>columns,boolcomplete_action=false); }//namespaceserif::model::backend::mfem::detail