dune-assembler 2.12
Loading...
Searching...
No Matches
denselocalassemblerbase.hh
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright © DUNE Project contributors, see file AUTHORS.md
2// SPDX-License-Identifier: LicenseRef-GPL-2.0-only-with-DUNE-exception OR LGPL-3.0-or-later
3
4#ifndef DUNE_ASSEMBLER_DENSELOCALASSEMBLERBASE_HH
5#define DUNE_ASSEMBLER_DENSELOCALASSEMBLERBASE_HH
6
8
9namespace Dune::Assembler {
10
11
19template <Concepts::LocalView RowLocalView, Concepts::LocalView ColLocalView = RowLocalView>
21{
22 using GridView = typename RowLocalView::GridView;
23 using Element = typename GridView::template Codim<0>::Entity;
24 using Intersection = typename GridView::Intersection;
25
26public:
32 template <Concepts::LocalMatrixPattern LocalPattern>
33 void assembleElementMatrixPattern (const Element& e, LocalPattern& p) noexcept
34 {
35 p.addAll();
36 }
37
43 template <Concepts::LocalMatrixPattern LocalPattern>
44 void assembleBoundaryIntersectionMatrixPattern (const Intersection& is, LocalPattern& p) noexcept
45 {
46 p.addAll();
47 }
48
54 template <Concepts::BlockLocalMatrixPattern LocalPatterns>
55 void assembleInteriorIntersectionMatrixPattern (const Intersection& is, LocalPatterns& p) noexcept
56 {
57 p[0][0].addAll();
58 p[0][1].addAll();
59 p[1][0].addAll();
60 p[1][1].addAll();
61 }
62
63};
64
65
66} // end namespace Dune::Assembler
67
68#endif // DUNE_ASSEMBLER_DENSELOCALASSEMBLERBASE_HH
Definition localboundaryintersectionmatrixassembler.hh:9
Base class for local assemblers with dense local pattern.
Definition denselocalassemblerbase.hh:21
void assembleBoundaryIntersectionMatrixPattern(const Intersection &is, LocalPattern &p) noexcept
Definition denselocalassemblerbase.hh:44
void assembleElementMatrixPattern(const Element &e, LocalPattern &p) noexcept
Definition denselocalassemblerbase.hh:33
void assembleInteriorIntersectionMatrixPattern(const Intersection &is, LocalPatterns &p) noexcept
Definition denselocalassemblerbase.hh:55