From f6a4a5a3de45003a38d3b8d3c667a1d1cf14adf9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B8rgen=20Schartum=20Dokken?= Date: Thu, 12 Sep 2024 08:12:25 +0200 Subject: [PATCH] Correct reference value size (#3373) --- cpp/dolfinx/fem/interpolate.h | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/cpp/dolfinx/fem/interpolate.h b/cpp/dolfinx/fem/interpolate.h index 12956057cb7..b856915bf21 100644 --- a/cpp/dolfinx/fem/interpolate.h +++ b/cpp/dolfinx/fem/interpolate.h @@ -911,11 +911,12 @@ void interpolate(Function& u, std::span f, std::vector coord_dofs_b(num_dofs_g * gdim); mdspan2_t coord_dofs(coord_dofs_b.data(), num_dofs_g, gdim); - - std::vector ref_data_b(Xshape[0] * 1 * value_size); + const std::size_t value_size_ref + = element->reference_value_size() / element_bs; + std::vector ref_data_b(Xshape[0] * 1 * value_size_ref); MDSPAN_IMPL_STANDARD_NAMESPACE::mdspan< T, MDSPAN_IMPL_STANDARD_NAMESPACE::dextents> - ref_data(ref_data_b.data(), Xshape[0], 1, value_size); + ref_data(ref_data_b.data(), Xshape[0], 1, value_size_ref); std::vector _vals_b(Xshape[0] * 1 * value_size); MDSPAN_IMPL_STANDARD_NAMESPACE::mdspan<