20 namespace SmallDeformation
24 template <
int GlobalDim,
25 template <
typename,
typename,
int>
class LocalAssemblerImplementation,
29 std::vector<MeshLib::Element*>
const& mesh_elements,
30 std::vector<std::unique_ptr<LocalAssemblerInterface>>& local_assemblers,
31 ExtraCtorArgs&&... extra_ctor_args)
36 LocalAssemblerImplementation, GlobalDim,
39 DBUG(
"Create local assemblers.");
41 local_assemblers.resize(mesh_elements.size());
45 DBUG(
"Calling local assembler builder for all mesh elements.");
47 initializer, mesh_elements, local_assemblers,
48 std::forward<ExtraCtorArgs>(extra_ctor_args)...);
64 template <
int GlobalDim,
65 template <
typename,
typename,
int>
class LocalAssemblerImplementation,
68 std::vector<MeshLib::Element*>
const& mesh_elements,
70 std::vector<std::unique_ptr<LocalAssemblerInterface>>& local_assemblers,
71 ExtraCtorArgs&&... extra_ctor_args)
73 DBUG(
"Create local assemblers.");
75 detail::createLocalAssemblers<GlobalDim, LocalAssemblerImplementation>(
76 dof_table, mesh_elements, local_assemblers,
77 std::forward<ExtraCtorArgs>(extra_ctor_args)...);
void DBUG(char const *fmt, Args const &... args)
static void transformDereferenced(F const &f, C const &c, Data &data, Args_ &&... args)