![]() |
Reference documentation for deal.II version 9.3.3
|
#include <deal.II/matrix_free/tensor_product_kernels.h>
Public Member Functions | |
EvaluatorTensorProduct () | |
EvaluatorTensorProduct (const AlignedVector< Number2 > &shape_values, const AlignedVector< Number2 > &shape_gradients, const AlignedVector< Number2 > &shape_hessians, const unsigned int n_rows, const unsigned int n_columns) | |
EvaluatorTensorProduct (const Number2 *shape_values, const Number2 *shape_gradients, const Number2 *shape_hessians, const unsigned int n_rows, const unsigned int n_columns) | |
template<int direction, bool contract_over_rows, bool add> | |
void | values (const Number *in, Number *out) const |
template<int direction, bool contract_over_rows, bool add> | |
void | gradients (const Number *in, Number *out) const |
template<int direction, bool contract_over_rows, bool add> | |
void | hessians (const Number *in, Number *out) const |
template<int direction, bool contract_over_rows, bool add> | |
void | values_one_line (const Number in[], Number out[]) const |
template<int direction, bool contract_over_rows, bool add> | |
void | gradients_one_line (const Number in[], Number out[]) const |
template<int direction, bool contract_over_rows, bool add> | |
void | hessians_one_line (const Number in[], Number out[]) const |
template<int direction, bool contract_over_rows, bool add, bool one_line = false> | |
void | apply (const Number2 *DEAL_II_RESTRICT shape_data, const Number *in, Number *out) const |
template<int face_direction, bool contract_onto_face, bool add, int max_derivative, bool lex_faces = false> | |
void | apply_face (const Number *DEAL_II_RESTRICT in, Number *DEAL_II_RESTRICT out) const |
Public Attributes | |
const Number2 * | shape_values |
const Number2 * | shape_gradients |
const Number2 * | shape_hessians |
const unsigned int | n_rows |
const unsigned int | n_columns |
Static Public Attributes | |
static constexpr unsigned int | n_rows_of_product |
static constexpr unsigned int | n_columns_of_product |
Internal evaluator for shape function using the tensor product form of the basis functions. The same as the other templated class but without making use of template arguments and variable loop bounds instead.
dim | Space dimension in which this class is applied |
Number | Abstract number type for input and output arrays |
Number2 | Abstract number type for coefficient arrays (defaults to same type as the input/output arrays); must implement operator* with Number and produce Number as an output to be a valid type |
Definition at line 579 of file tensor_product_kernels.h.
|
inline |
Empty constructor. Does nothing. Be careful when using 'values' and related methods because they need to be filled with the other constructor
Definition at line 590 of file tensor_product_kernels.h.
|
inline |
Constructor, taking the data from ShapeInfo
Definition at line 601 of file tensor_product_kernels.h.
|
inline |
Constructor, taking the data from ShapeInfo
Definition at line 631 of file tensor_product_kernels.h.
|
inline |
Definition at line 645 of file tensor_product_kernels.h.
|
inline |
Definition at line 652 of file tensor_product_kernels.h.
|
inline |
Definition at line 659 of file tensor_product_kernels.h.
|
inline |
Definition at line 666 of file tensor_product_kernels.h.
|
inline |
Definition at line 674 of file tensor_product_kernels.h.
|
inline |
Definition at line 682 of file tensor_product_kernels.h.
|
inline |
Definition at line 718 of file tensor_product_kernels.h.
|
inline |
Definition at line 868 of file tensor_product_kernels.h.
|
staticconstexpr |
Definition at line 581 of file tensor_product_kernels.h.
|
staticconstexpr |
Definition at line 583 of file tensor_product_kernels.h.
const Number2* internal::EvaluatorTensorProduct< evaluate_general, dim, 0, 0, Number, Number2 >::shape_values |
Definition at line 706 of file tensor_product_kernels.h.
const Number2* internal::EvaluatorTensorProduct< evaluate_general, dim, 0, 0, Number, Number2 >::shape_gradients |
Definition at line 707 of file tensor_product_kernels.h.
const Number2* internal::EvaluatorTensorProduct< evaluate_general, dim, 0, 0, Number, Number2 >::shape_hessians |
Definition at line 708 of file tensor_product_kernels.h.
const unsigned int internal::EvaluatorTensorProduct< evaluate_general, dim, 0, 0, Number, Number2 >::n_rows |
Definition at line 709 of file tensor_product_kernels.h.
const unsigned int internal::EvaluatorTensorProduct< evaluate_general, dim, 0, 0, Number, Number2 >::n_columns |
Definition at line 710 of file tensor_product_kernels.h.