24 namespace HydroMechanics
28 template <
int GlobalDim,
29 template <
typename,
typename,
typename,
int>
30 class LocalAssemblerMatrixImplementation,
31 template <
typename,
typename,
typename,
int>
32 class LocalAssemblerMatrixNearFractureImplementation,
33 template <
typename,
typename,
typename,
int>
34 class LocalAssemblerFractureImplementation,
38 const unsigned shapefunction_order,
39 std::vector<MeshLib::Element*>
const& mesh_elements,
40 std::vector<std::unique_ptr<LocalAssemblerInterface>>& local_assemblers,
41 ExtraCtorArgs&&... extra_ctor_args)
46 LocalAssemblerMatrixNearFractureImplementation,
47 LocalAssemblerFractureImplementation, GlobalDim, ExtraCtorArgs...>;
49 DBUG(
"Create local assemblers for HydroMechanics with LIE.");
51 local_assemblers.resize(mesh_elements.size());
55 DBUG(
"Calling local assembler builder for all mesh elements.");
57 initializer, mesh_elements, local_assemblers,
58 std::forward<ExtraCtorArgs>(extra_ctor_args)...);
74 template <
int GlobalDim,
75 template <
typename,
typename,
typename,
int>
76 class LocalAssemblerMatrixImplementation,
77 template <
typename,
typename,
typename,
int>
78 class LocalAssemblerMatrixNearFractureImplementation,
79 template <
typename,
typename,
typename,
int>
80 class LocalAssemblerFractureImplementation,
83 std::vector<MeshLib::Element*>
const& mesh_elements,
85 const unsigned shapefunction_order,
86 std::vector<std::unique_ptr<LocalAssemblerInterface>>& local_assemblers,
87 ExtraCtorArgs&&... extra_ctor_args)
90 GlobalDim, LocalAssemblerMatrixImplementation,
91 LocalAssemblerMatrixNearFractureImplementation,
92 LocalAssemblerFractureImplementation>(
93 dof_table, shapefunction_order, mesh_elements, local_assemblers,
94 std::forward<ExtraCtorArgs>(extra_ctor_args)...);
void DBUG(char const *fmt, Args const &... args)
void createLocalAssemblers(NumLib::LocalToGlobalIndexMap const &dof_table, const unsigned shapefunction_order, std::vector< MeshLib::Element * > const &mesh_elements, std::vector< std::unique_ptr< LocalAssemblerInterface >> &local_assemblers, ExtraCtorArgs &&... extra_ctor_args)
void createLocalAssemblers(std::vector< MeshLib::Element * > const &mesh_elements, NumLib::LocalToGlobalIndexMap const &dof_table, const unsigned shapefunction_order, std::vector< std::unique_ptr< LocalAssemblerInterface >> &local_assemblers, ExtraCtorArgs &&... extra_ctor_args)
static void transformDereferenced(F const &f, C const &c, Data &data, Args_ &&... args)