deal.II version GIT relicensing-2202-g5ed228918a 2024-12-01 17:10:00+00:00
|
#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=0, const unsigned int n_columns=0) | |
EvaluatorTensorProduct (const Number2 *shape_values, const Number2 *shape_gradients, const Number2 *shape_hessians, const unsigned int n_rows=0, const unsigned int n_columns=0) | |
template<int direction, bool contract_over_rows, bool add, int stride = 1> | |
void | values (const Number *in, Number *out) const |
template<int direction, bool contract_over_rows, bool add, int stride = 1> | |
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, EvaluatorQuantity quantity = EvaluatorQuantity::value, int stride = 1> | |
void | apply (const Number2 *DEAL_II_RESTRICT shape_data, const Number *in, Number *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 1909 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 1920 of file tensor_product_kernels.h.
|
inline |
Constructor, taking the data from ShapeInfo
Definition at line 1931 of file tensor_product_kernels.h.
|
inline |
Constructor, taking the data from ShapeInfo
Definition at line 1973 of file tensor_product_kernels.h.
|
inline |
Definition at line 1987 of file tensor_product_kernels.h.
|
inline |
Definition at line 1996 of file tensor_product_kernels.h.
|
inline |
Definition at line 2007 of file tensor_product_kernels.h.
|
inline |
Definition at line 2018 of file tensor_product_kernels.h.
|
inline |
Definition at line 2027 of file tensor_product_kernels.h.
|
inline |
Definition at line 2039 of file tensor_product_kernels.h.
|
inline |
Definition at line 2080 of file tensor_product_kernels.h.
|
staticconstexpr |
Definition at line 1911 of file tensor_product_kernels.h.
|
staticconstexpr |
Definition at line 1913 of file tensor_product_kernels.h.
const Number2* internal::EvaluatorTensorProduct< variant, dim, 0, 0, Number, Number2 >::shape_values |
Definition at line 2060 of file tensor_product_kernels.h.
const Number2* internal::EvaluatorTensorProduct< variant, dim, 0, 0, Number, Number2 >::shape_gradients |
Definition at line 2061 of file tensor_product_kernels.h.
const Number2* internal::EvaluatorTensorProduct< variant, dim, 0, 0, Number, Number2 >::shape_hessians |
Definition at line 2062 of file tensor_product_kernels.h.
const unsigned int internal::EvaluatorTensorProduct< variant, dim, 0, 0, Number, Number2 >::n_rows |
Definition at line 2063 of file tensor_product_kernels.h.
const unsigned int internal::EvaluatorTensorProduct< variant, dim, 0, 0, Number, Number2 >::n_columns |
Definition at line 2064 of file tensor_product_kernels.h.