Reference documentation for deal.II version Git e1b67c38dc 2020-08-13 12:19:15 -0400
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Static Public Member Functions | List of all members
internal::FEEvaluationImplCollocation< dim, fe_degree, n_components, Number > Struct Template Reference

#include <deal.II/matrix_free/evaluation_kernels.h>

Static Public Member Functions

static void evaluate (const MatrixFreeFunctions::ShapeInfo< Number > &shape_info, const Number *values_dofs, Number *values_quad, Number *gradients_quad, Number *hessians_quad, Number *scratch_data, const bool evaluate_values, const bool evaluate_gradients, const bool evaluate_hessians)
 
static void integrate (const MatrixFreeFunctions::ShapeInfo< Number > &shape_info, Number *values_dofs, Number *values_quad, Number *gradients_quad, Number *scratch_data, const bool integrate_values, const bool integrate_gradients, const bool add_into_values_array)
 

Detailed Description

template<int dim, int fe_degree, int n_components, typename Number>
struct internal::FEEvaluationImplCollocation< dim, fe_degree, n_components, Number >

This struct performs the evaluation of function values, gradients and Hessians for tensor-product finite elements. This a specialization for elements where the nodal points coincide with the quadrature points like FE_Q shape functions on Gauss-Lobatto elements integrated with Gauss-Lobatto quadrature. The assumption of this class is that the shape 'values' operation is identity, which allows us to write shorter code.

In literature, this form of evaluation is often called spectral evaluation, spectral collocation or simply collocation, meaning the same location for shape functions and evaluation space (quadrature points).

Definition at line 1008 of file evaluation_kernels.h.

Member Function Documentation

◆ evaluate()

template<int dim, int fe_degree, int n_components, typename Number >
void internal::FEEvaluationImplCollocation< dim, fe_degree, n_components, Number >::evaluate ( const MatrixFreeFunctions::ShapeInfo< Number > &  shape_info,
const Number *  values_dofs,
Number *  values_quad,
Number *  gradients_quad,
Number *  hessians_quad,
Number *  scratch_data,
const bool  evaluate_values,
const bool  evaluate_gradients,
const bool  evaluate_hessians 
)
inlinestatic

Definition at line 1036 of file evaluation_kernels.h.

◆ integrate()

template<int dim, int fe_degree, int n_components, typename Number >
void internal::FEEvaluationImplCollocation< dim, fe_degree, n_components, Number >::integrate ( const MatrixFreeFunctions::ShapeInfo< Number > &  shape_info,
Number *  values_dofs,
Number *  values_quad,
Number *  gradients_quad,
Number *  scratch_data,
const bool  integrate_values,
const bool  integrate_gradients,
const bool  add_into_values_array 
)
inlinestatic

Definition at line 1114 of file evaluation_kernels.h.


The documentation for this struct was generated from the following file: