DUNE-FEM (unstable)

localcontribution.hh
1#ifndef DUNE_FEM_COMMON_LOCALCONTRIBUTION_HH
2#define DUNE_FEM_COMMON_LOCALCONTRIBUTION_HH
3
4namespace Dune
5{
6
7 namespace Fem
8 {
9
10 // Forward Declarations
11 // --------------------
12
13 template< class DiscreteFunction, template< class > class AssemblyOperation, class = void >
14 class LocalContribution;
15
16
17
18 namespace Assembly
19 {
20
21 namespace Global
22 {
23
24 // Forward Declarations
25 // --------------------
26
27 template< class DiscreteFunction, class = void >
28 struct AddBase;
29
30 template< class DiscreteFunction, class = void >
31 struct SetBase;
32
33
34
35 // Add
36 // ---
37
38 template< class DiscreteFunction >
39 struct Add
40 : public AddBase< DiscreteFunction >
41 {};
42
43
44
45 // Set
46 // ---
47
48 template< class DiscreteFunction >
49 struct Set
50 : public SetBase< DiscreteFunction >
51 {};
52
53 } // namespace Global
54
55
56
57 // Forward Declarations
58 // --------------------
59
60 template< class DiscreteFunction, class = void >
61 struct AddBase;
62
63 template< class DiscreteFunction, class = void >
64 struct AddScaledBase;
65
66 template< class DiscreteFunction, class = void >
67 struct SetBase;
68
69 template< class DiscreteFunction, class = void >
70 struct SetSelectedBase;
71
72
73 // Add
74 // ---
75
76 template< class DiscreteFunction >
77 struct Add
78 : public AddBase< DiscreteFunction >
79 {
80 using AddBase< DiscreteFunction >::AddBase;
81 };
82
83
84
85 // AddScaled
86 // ---------
87
88 template< class DiscreteFunction >
89 struct AddScaled
90 : public AddScaledBase< DiscreteFunction >
91 {
92 using AddScaledBase< DiscreteFunction >::AddScaledBase;
93 };
94
95
96
97 // Set
98 // ---
99
100 template< class DiscreteFunction >
101 struct Set
102 : public SetBase< DiscreteFunction >
103 {
104 using SetBase< DiscreteFunction >::SetBase;
105 };
106
107
108 // SetSelected
109 // ---
110
111 template< class DiscreteFunction >
112 struct SetSelected
113 : public SetSelectedBase< DiscreteFunction >
114 {
115 using SetSelectedBase< DiscreteFunction >::SetSelectedBase;
116 };
117
118 } // namespace Assembly
119
120
121
122 // AddLocalContribution
123 // --------------------
124
125 template< class DiscreteFunction >
126 using AddLocalContribution = LocalContribution< DiscreteFunction, Assembly::Add >;
127
128
129
130 // AddScaledLocalContribution
131 // --------------------------
132
133 template< class DiscreteFunction >
134 using AddScaledLocalContribution = LocalContribution< DiscreteFunction, Assembly::AddScaled >;
135
136
137
138 // SetLocalContribution
139 // --------------------
140
141 template< class DiscreteFunction >
142 using SetLocalContribution = LocalContribution< DiscreteFunction, Assembly::Set >;
143
144
145 // SetSelectedLocalContribution
146 // ----------------------------
147
148 template< class DiscreteFunction >
149 using SetSelectedLocalContribution = LocalContribution< DiscreteFunction, Assembly::SetSelected >;
150
151 } // namespace Fem
152
153} // namespace Dune
154
155#endif // #ifndef DUNE_FEM_COMMON_LOCALCONTRIBUTION_HH
Dune namespace.
Definition: alignedallocator.hh:13
Creative Commons License   |  Legal Statements / Impressum  |  Hosted by TU Dresden  |  generated with Hugo v0.111.3 (Jul 27, 22:29, 2024)