14#ifndef dealii_matrix_free_evaluation_template_factory_h
15#define dealii_matrix_free_evaluation_template_factory_h
28template <
int,
typename,
bool>
34 template <
int dim,
typename Number>
40 const Number *values_dofs,
48 const bool sum_into_values_array);
52 const unsigned int n_q_points_1d);
57 template <
int dim,
typename Number>
63 const Number *values_dofs,
69 const Number *values_dofs,
82 const bool sum_into_values);
89 const bool sum_into_values);
98 const unsigned int n_q_points_1d);
103 template <
int dim,
typename Number,
typename VectorizedArrayType>
109 const Number *src_ptr,
123 template <
int dim,
typename Number>
127 apply(
const unsigned int n_components,
129 const Number *in_array,
133 apply(
const unsigned int n_components,
136 const bool dyadic_coefficients,
137 const Number *in_array,
142 const unsigned int n_components,
144 const Number *in_array,
154 apply(
const unsigned int n_components,
155 const unsigned int fe_degree,
159 VectorizedArrayType::size()> &c_mask,
160 VectorizedArrayType *values);
#define DEAL_II_NAMESPACE_OPEN
#define DEAL_II_NAMESPACE_CLOSE
EvaluationFlags
The EvaluationFlags enum.
std::uint8_t compressed_constraint_kind
static void apply(const unsigned int n_components, const FEEvaluationData< dim, Number, false > &fe_eval, const Number *in_array, Number *out_array)
static void apply(const unsigned int n_components, const FEEvaluationData< dim, Number, false > &fe_eval, const ArrayView< const Number > &inverse_coefficients, const bool dyadic_coefficients, const Number *in_array, Number *out_array)
static void transform_from_q_points_to_basis(const unsigned int n_components, const FEEvaluationData< dim, Number, false > &fe_eval, const Number *in_array, Number *out_array)
static bool fast_evaluation_supported(const unsigned int given_degree, const unsigned int n_q_points_1d)
static void evaluate(const unsigned int n_components, const EvaluationFlags::EvaluationFlags evaluation_flag, const Number *values_dofs, FEEvaluationData< dim, Number, false > &fe_eval)
static void integrate(const unsigned int n_components, const EvaluationFlags::EvaluationFlags integration_flag, Number *values_dofs, FEEvaluationData< dim, Number, false > &fe_eval, const bool sum_into_values_array)
static void apply(const unsigned int n_components, const unsigned int fe_degree, const MatrixFreeFunctions::ShapeInfo< Number > &shape_info, const bool transpose, const std::array< MatrixFreeFunctions::compressed_constraint_kind, VectorizedArrayType::size()> &c_mask, VectorizedArrayType *values)
static void integrate(const unsigned int n_components, const EvaluationFlags::EvaluationFlags integration_flag, Number *values_dofs, FEEvaluationData< dim, Number, true > &fe_eval, const bool sum_into_values)
static void evaluate(const unsigned int n_components, const EvaluationFlags::EvaluationFlags evaluation_flag, const Number *values_dofs, FEEvaluationData< dim, Number, true > &fe_eval)
static bool fast_evaluation_supported(const unsigned int given_degree, const unsigned int n_q_points_1d)
static void evaluate_in_face(const unsigned int n_components, const EvaluationFlags::EvaluationFlags evaluation_flag, FEEvaluationData< dim, Number, true > &fe_eval)
static void integrate_in_face(const unsigned int n_components, const EvaluationFlags::EvaluationFlags integration_flag, FEEvaluationData< dim, Number, true > &fe_eval)
static void collect_from_face(const unsigned int n_components, const EvaluationFlags::EvaluationFlags integration_flag, Number *values_dofs, FEEvaluationData< dim, Number, true > &fe_eval, const bool sum_into_values)
static void project_to_face(const unsigned int n_components, const EvaluationFlags::EvaluationFlags evaluation_flag, const Number *values_dofs, FEEvaluationData< dim, Number, true > &fe_eval)
static void evaluate(const unsigned int n_components, const EvaluationFlags::EvaluationFlags evaluation_flag, const Number *src_ptr, const std::vector< ArrayView< const Number > > *sm_ptr, FEEvaluationData< dim, VectorizedArrayType, true > &fe_eval)
static void integrate(const unsigned int n_components, const EvaluationFlags::EvaluationFlags integration_flag, Number *dst_ptr, const std::vector< ArrayView< const Number > > *sm_ptr, FEEvaluationData< dim, VectorizedArrayType, true > &fe_eval)