Reference documentation for deal.II version GIT 2f5445400b 2023-02-05 22:30:02+00:00
\(\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, Number > Struct Template Reference

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

Static Public Member Functions

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 do_evaluate (const MatrixFreeFunctions::UnivariateShapeData< Number > &shape, const EvaluationFlags::EvaluationFlags evaluation_flag, const Number *values_dofs, Number *gradients_quad, Number *hessians_quad)
 
static void integrate (const unsigned int n_components, const EvaluationFlags::EvaluationFlags integration_flag, Number *values_dofs, FEEvaluationData< dim, Number, false > &fe_eval, const bool add_into_values_array)
 
static void do_integrate (const MatrixFreeFunctions::UnivariateShapeData< Number > &shape, const EvaluationFlags::EvaluationFlags integration_flag, Number *values_dofs, Number *gradients_quad, const Number *hessians_quad, const bool add_into_values_array)
 

Detailed Description

template<int dim, int fe_degree, typename Number>
struct internal::FEEvaluationImplCollocation< dim, fe_degree, 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 1834 of file evaluation_kernels.h.

Member Function Documentation

◆ evaluate()

template<int dim, int fe_degree, typename Number >
void internal::FEEvaluationImplCollocation< dim, fe_degree, Number >::evaluate ( const unsigned int  n_components,
const EvaluationFlags::EvaluationFlags  evaluation_flag,
const Number *  values_dofs,
FEEvaluationData< dim, Number, false > &  fe_eval 
)
inlinestatic

Definition at line 1869 of file evaluation_kernels.h.

◆ do_evaluate()

template<int dim, int fe_degree, typename Number >
void internal::FEEvaluationImplCollocation< dim, fe_degree, Number >::do_evaluate ( const MatrixFreeFunctions::UnivariateShapeData< Number > &  shape,
const EvaluationFlags::EvaluationFlags  evaluation_flag,
const Number *  values_dofs,
Number *  gradients_quad,
Number *  hessians_quad 
)
inlinestatic

Definition at line 1897 of file evaluation_kernels.h.

◆ integrate()

template<int dim, int fe_degree, typename Number >
void internal::FEEvaluationImplCollocation< dim, fe_degree, Number >::integrate ( const unsigned int  n_components,
const EvaluationFlags::EvaluationFlags  integration_flag,
Number *  values_dofs,
FEEvaluationData< dim, Number, false > &  fe_eval,
const bool  add_into_values_array 
)
inlinestatic

Definition at line 1958 of file evaluation_kernels.h.

◆ do_integrate()

template<int dim, int fe_degree, typename Number >
void internal::FEEvaluationImplCollocation< dim, fe_degree, Number >::do_integrate ( const MatrixFreeFunctions::UnivariateShapeData< Number > &  shape,
const EvaluationFlags::EvaluationFlags  integration_flag,
Number *  values_dofs,
Number *  gradients_quad,
const Number *  hessians_quad,
const bool  add_into_values_array 
)
inlinestatic

Definition at line 1996 of file evaluation_kernels.h.


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