20 namespace SmallDeformation
24 template <
int GlobalDim,
25 template <
typename ,
int >
26 class LocalAssemblerImplementation,
29 NumLib::LocalToGlobalIndexMap const& dof_table,
30 std::vector<MeshLib::Element*> const& mesh_elements,
31 std::vector<std::unique_ptr<LocalAssemblerInterface>>& local_assemblers,
33 ExtraCtorArgs&&... extra_ctor_args)
37 LocalAssemblerImplementation,
38 GlobalDim, ExtraCtorArgs...>;
40 DBUG(
"Create local assemblers.");
42 LocAsmFactory factory(dof_table, integration_order);
43 local_assemblers.resize(mesh_elements.size());
45 DBUG(
"Calling local assembler builder for all mesh elements.");
47 factory, mesh_elements, local_assemblers,
48 std::forward<ExtraCtorArgs>(extra_ctor_args)...);
64 template <
int GlobalDim,
65 template <
typename ,
int >
66 class LocalAssemblerImplementation,
69 std::vector<MeshLib::Element*> const& mesh_elements,
71 std::vector<std::unique_ptr<LocalAssemblerInterface>>& local_assemblers,
73 ExtraCtorArgs&&... extra_ctor_args)
75 DBUG(
"Create local assemblers.");
77 detail::createLocalAssemblers<GlobalDim, LocalAssemblerImplementation>(
78 dof_table, mesh_elements, local_assemblers, integration_order,
79 std::forward<ExtraCtorArgs>(extra_ctor_args)...);
void DBUG(fmt::format_string< Args... > fmt, Args &&... args)
static void transformDereferenced(F const &f, C const &c, Data &data, Args_ &&... args)