15template <
typename ElementType>
21 using NonGenericIntegrationMethod =
23 NonGenericIntegrationMethod int_met{
25 return int_met.getNumberOfPoints();
81 OGS_FATAL(
"Mesh element type {:s} is not supported",
91 std::vector<MeshLib::Element*>
const& mesh_elements,
104 std::vector<std::size_t> element_ip_data_offsets(mesh_elements.size() + 1);
105 std::size_t counter = 0;
108 for (std::size_t i = 0; i < mesh_elements.size(); i++)
110 auto const*
const element = mesh_elements[i];
113 element_ip_data_offsets[i] = counter;
117 element_ip_data_offsets[mesh_elements.size()] = counter;
119 return element_ip_data_offsets;
NumLib::GaussLegendreIntegrationPolicy< MeshElement > IntegrationPolicy
virtual CellType getCellType() const =0
Property manager on mesh items. Class Properties manages scalar, vector or matrix properties....
int getNumberOfGlobalComponents() const
std::string const & getPropertyName() const
std::optional< IntegrationPointMetaData > getIntegrationPointMetaData(MeshLib::Properties const &properties)
TemplateElement< MeshLib::PyramidRule13 > Pyramid13
std::string CellType2String(const CellType t)
Given a MeshElemType this returns the appropriate string.
IntegrationPointMetaDataSingleField getIntegrationPointMetaDataSingleField(std::optional< IntegrationPointMetaData > const &ip_meta_data, std::string const &field_name)
NumLib::IntegrationGaussLegendreRegular< MeshElement::dimension > IntegrationMethod