diff --git a/ProcessLib/NeumannBc.h b/ProcessLib/NeumannBc.h index db6b9f83531ed7bbb8a2788d4a159438a4109bb8..ba42a3bdf9894111bba88dcde106d7f9cb22572e 100644 --- a/ProcessLib/NeumannBc.h +++ b/ProcessLib/NeumannBc.h @@ -101,7 +101,9 @@ public: void integrate(GlobalSetup const& global_setup, const double t, GlobalVector& b) { - global_setup.executeDereferenced(*_global_assembler, _local_assemblers, t, b); + global_setup.executeMemberDereferenced( + *_global_assembler, &GlobalAssembler::assemble, + _local_assemblers, t, b); } void initialize(GlobalSetup const& global_setup, @@ -180,16 +182,16 @@ private: /// the #_function. unsigned const _integration_order; + using LocalAssembler = LocalNeumannBcAsmDataInterface< + GlobalMatrix, GlobalVector>; + using GlobalAssembler = AssemblerLib::VectorMatrixAssembler< - GlobalMatrix, GlobalVector, + GlobalMatrix, GlobalVector, LocalAssembler, NumLib::ODESystemTag::NeumannBC>; std::unique_ptr<GlobalAssembler> _global_assembler; - using LocalAssembler = LocalNeumannBcAsmDataInterface< - GlobalMatrix, GlobalVector>; - /// Local assemblers for each element of #_elements. std::vector<std::unique_ptr<LocalAssembler>> _local_assemblers;