14#ifndef dealii_mesh_worker_functional_h
15#define dealii_mesh_worker_functional_h
45 template <
typename number =
double>
62 template <
class DOFINFO>
69 template <
class DOFINFO>
76 template <
class DOFINFO>
78 assemble(
const DOFINFO &info1,
const DOFINFO &info2);
102 template <
typename number =
double>
138 template <
class DOFINFO>
145 template <
class DOFINFO>
152 template <
class DOFINFO>
154 assemble(
const DOFINFO &info1,
const DOFINFO &info2);
168 template <
typename number>
177 template <
typename number>
178 template <
class DOFINFO>
182 info.initialize_numbers(
results.size());
186 template <
typename number>
187 template <
class DOFINFO>
191 for (
unsigned int i = 0; i <
results.size(); ++i)
196 template <
typename number>
197 template <
class DOFINFO>
201 for (
unsigned int i = 0; i <
results.size(); ++i)
209 template <
typename number>
219 template <
typename number>
226 template <
typename number>
242 template <
typename number>
243 template <
class DOFINFO>
247 info.initialize_numbers(
252 template <
typename number>
253 template <
class DOFINFO>
263 for (
unsigned int i = 0; i < info.n_values(); ++i)
264 v->
block(i)(info.cell->user_index()) += info.value(i);
268 template <
typename number>
269 template <
class DOFINFO>
273 for (
unsigned int i = 0; i < info1.n_values(); ++i)
278 const double J = info1.value(i) + info2.value(i);
279 v1->
block(i)(info1.face->user_index()) += J;
280 if (info2.face != info1.face)
281 v1->
block(i)(info2.face->user_index()) += J;
286 v0->
block(i)(info1.cell->user_index()) += .5 * info1.value(i);
287 v0->
block(i)(info2.cell->user_index()) += .5 * info2.value(i);
* * Point< dim > operator()(const Point< dim > &p) const *
const std::string & name(const unsigned int i) const
Name of object at index.
type entry(const std::string &name)
Access to stored data object by name.
unsigned int n_blocks() const
BlockType & block(const unsigned int i)
number operator()(const unsigned int i) const
void assemble(const DOFINFO &info)
void initialize(AnyData &results, bool separate_faces=true)
void initialize_info(DOFINFO &info, bool face) const
void initialize(const unsigned int n)
std::vector< double > results
void initialize_info(DOFINFO &info, bool face)
number operator()(const unsigned int i) const
void assemble(const DOFINFO &info)
#define DEAL_II_NAMESPACE_OPEN
#define DEAL_II_NAMESPACE_CLOSE
static ::ExceptionBase & ExcNameMismatch(int arg1, std::string arg2)
#define Assert(cond, exc)
#define AssertDimension(dim1, dim2)
#define AssertIndexRange(index, range)
constexpr unsigned int invalid_unsigned_int