26 const double coordinate_value)
32 for (
int d = 0; d < dim; ++d)
35 ::internal::coordinate_to_one_dim_higher<dim>(
51 const unsigned int direction,
52 const double coordinate_value)
54 , restricted_direction(direction)
55 , coordinate_value(coordinate_value)
65 const unsigned int component)
const
80 const unsigned int component)
const
94 for (
unsigned int d = 0; d < dim; ++d)
97 internal::coordinate_to_one_dim_higher<dim>(restricted_direction, d);
108 const unsigned int component)
const
112 restricted_direction,
122 for (
unsigned int i = 0; i < dim; ++i)
125 internal::coordinate_to_one_dim_higher<dim>(restricted_direction, i);
126 for (
unsigned int j = 0;
j < dim; ++
j)
129 internal::coordinate_to_one_dim_higher<dim>(restricted_direction,
141 const unsigned int open_direction,
143 : function(&function)
144 , open_direction(open_direction)
155 const unsigned int component)
const
159 return function->value(
full_point, component);
167 const unsigned int component)
const
186 const unsigned int component)
const
203#include "function_restriction.inst"
double value(const Point< dim > &point, const unsigned int component) const override
Tensor< 1, dim > gradient(const Point< dim > &point, const unsigned int component) const override
const unsigned int restricted_direction
SymmetricTensor< 2, dim > hessian(const Point< dim > &point, const unsigned int component) const override
CoordinateRestriction(const Function< dim+1 > &function, const unsigned int direction, const double coordinate_value)
PointRestriction(const Function< dim+1 > &function, const unsigned int open_direction, const Point< dim > &point)
const unsigned int open_direction
double value(const Point< 1 > &point, const unsigned int component) const override
Tensor< 1, 1 > gradient(const Point< 1 > &point, const unsigned int component) const override
SymmetricTensor< 2, 1 > hessian(const Point< 1 > &point, const unsigned int component) const override
#define DEAL_II_NAMESPACE_OPEN
#define DEAL_II_NAMESPACE_CLOSE
#define AssertIndexRange(index, range)
Point< dim+1 > create_higher_dim_point(const Point< dim > &point, const unsigned int component_in_dim_plus_1, const double coordinate_value)