@@ -920,21 +920,17 @@ void lift_bc(std::span<T> b, const Form<T, U>& a, mdspan2_t x_dofmap,
920920 auto coeffs = md::mdspan (_coeffs.data (), cells.size (), cstride);
921921 if (bs0 == 1 and bs1 == 1 )
922922 {
923- _lift_bc_cells<T, std::integral_constant<int , 1 >,
924- std::integral_constant<int , 1 >>(
925- b, x_dofmap, x, kernel, cells,
926- {dofmap0, std::integral_constant<int , 1 >(), cells0}, P0,
927- {dofmap1, std::integral_constant<int , 1 >(), cells1}, P1T, constants,
928- coeffs, cell_info0, cell_info1, bc_values1, bc_markers1, x0, alpha);
923+ _lift_bc_cells<T, BS<1 >, BS<1 >>(
924+ b, x_dofmap, x, kernel, cells, {dofmap0, BS<1 >(), cells0}, P0,
925+ {dofmap1, BS<1 >(), cells1}, P1T, constants, coeffs, cell_info0,
926+ cell_info1, bc_values1, bc_markers1, x0, alpha);
929927 }
930928 else if (bs0 == 3 and bs1 == 3 )
931929 {
932- _lift_bc_cells<T, std::integral_constant<int , 3 >,
933- std::integral_constant<int , 3 >>(
934- b, x_dofmap, x, kernel, cells,
935- {dofmap0, std::integral_constant<int , 3 >(), cells0}, P0,
936- {dofmap1, std::integral_constant<int , 3 >(), cells1}, P1T, constants,
937- coeffs, cell_info0, cell_info1, bc_values1, bc_markers1, x0, alpha);
930+ _lift_bc_cells<T, BS<3 >, BS<3 >>(
931+ b, x_dofmap, x, kernel, cells, {dofmap0, BS<3 >(), cells0}, P0,
932+ {dofmap1, BS<3 >(), cells1}, P1T, constants, coeffs, cell_info0,
933+ cell_info1, bc_values1, bc_markers1, x0, alpha);
938934 }
939935 else
940936 {
@@ -1158,16 +1154,14 @@ void assemble_vector(
11581154 assert (cells.size () * cstride == coeffs.size ());
11591155 if (bs == 1 )
11601156 {
1161- impl::assemble_cells<T, std::integral_constant<int , 1 >>(
1162- P0, b, x_dofmap, x, cells,
1163- {dofs, std::integral_constant<int , 1 >(), cells0}, fn, constants,
1157+ impl::assemble_cells<T, BS<1 >>(
1158+ P0, b, x_dofmap, x, cells, {dofs, BS<1 >(), cells0}, fn, constants,
11641159 md::mdspan (coeffs.data (), cells.size (), cstride), cell_info0);
11651160 }
11661161 else if (bs == 3 )
11671162 {
1168- impl::assemble_cells<T, std::integral_constant<int , 3 >>(
1169- P0, b, x_dofmap, x, cells,
1170- {dofs, std::integral_constant<int , 3 >(), cells0}, fn, constants,
1163+ impl::assemble_cells<T, BS<3 >>(
1164+ P0, b, x_dofmap, x, cells, {dofs, BS<3 >(), cells0}, fn, constants,
11711165 md::mdspan (coeffs.data (), cells.size (), cstride), cell_info0);
11721166 }
11731167 else
@@ -1209,17 +1203,15 @@ void assemble_vector(
12091203 if (bs == 1 )
12101204 {
12111205
1212- impl::assemble_exterior_facets<T, std::integral_constant<int , 1 >>(
1213- P0, b, x_dofmap, x, facets,
1214- {dofs, std::integral_constant<int , 1 >(), facets1}, fn, constants,
1206+ impl::assemble_exterior_facets<T, BS<1 >>(
1207+ P0, b, x_dofmap, x, facets, {dofs, BS<1 >(), facets1}, fn, constants,
12151208 md::mdspan (coeffs.data (), facets.extent (0 ), cstride), cell_info0,
12161209 perms);
12171210 }
12181211 else if (bs == 3 )
12191212 {
1220- impl::assemble_exterior_facets<T, std::integral_constant<int , 3 >>(
1221- P0, b, x_dofmap, x, facets,
1222- {dofs, std::integral_constant<int , 3 >(), facets1}, fn, constants,
1213+ impl::assemble_exterior_facets<T, BS<3 >>(
1214+ P0, b, x_dofmap, x, facets, {dofs, BS<3 >(), facets1}, fn, constants,
12231215 md::mdspan (coeffs.data (), facets.size () / 2 , cstride), cell_info0,
12241216 perms);
12251217 }
@@ -1250,21 +1242,21 @@ void assemble_vector(
12501242 assert ((facets.size () / 4 ) * 2 * cstride == coeffs.size ());
12511243 if (bs == 1 )
12521244 {
1253- impl::assemble_interior_facets<T, std::integral_constant< int , 1 >>(
1245+ impl::assemble_interior_facets<T, BS< 1 >>(
12541246 P0, b, x_dofmap, x,
12551247 mdspanx22_t (facets.data (), facets.size () / 4 , 2 , 2 ),
1256- {*dofmap, std::integral_constant< int , 1 >(),
1248+ {*dofmap, BS< 1 >(),
12571249 mdspanx22_t (facets1.data (), facets1.size () / 4 , 2 , 2 )},
12581250 fn, constants,
12591251 mdspanx2x_t (coeffs.data (), facets.size () / 4 , 2 , cstride),
12601252 cell_info0, perms);
12611253 }
12621254 else if (bs == 3 )
12631255 {
1264- impl::assemble_interior_facets<T, std::integral_constant< int , 3 >>(
1256+ impl::assemble_interior_facets<T, BS< 3 >>(
12651257 P0, b, x_dofmap, x,
12661258 mdspanx22_t (facets.data (), facets.size () / 4 , 2 , 2 ),
1267- {*dofmap, std::integral_constant< int , 3 >(),
1259+ {*dofmap, BS< 3 >(),
12681260 mdspanx22_t (facets1.data (), facets1.size () / 4 , 2 , 2 )},
12691261 fn, constants,
12701262 mdspanx2x_t (coeffs.data (), facets.size () / 4 , 2 , cstride),
0 commit comments