![]() |
Reference documentation for deal.II version 9.6.0
|
#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 1623 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 1634 of file tensor_product_kernels.h.
|
inline |
Constructor, taking the data from ShapeInfo
Definition at line 1645 of file tensor_product_kernels.h.
|
inline |
Constructor, taking the data from ShapeInfo
Definition at line 1687 of file tensor_product_kernels.h.
|
inline |
Definition at line 1701 of file tensor_product_kernels.h.
|
inline |
Definition at line 1710 of file tensor_product_kernels.h.
|
inline |
Definition at line 1721 of file tensor_product_kernels.h.
|
inline |
Definition at line 1732 of file tensor_product_kernels.h.
|
inline |
Definition at line 1741 of file tensor_product_kernels.h.
|
inline |
Definition at line 1753 of file tensor_product_kernels.h.
|
inline |
Definition at line 1794 of file tensor_product_kernels.h.
|
staticconstexpr |
Definition at line 1625 of file tensor_product_kernels.h.
|
staticconstexpr |
Definition at line 1627 of file tensor_product_kernels.h.
const Number2* internal::EvaluatorTensorProduct< variant, dim, 0, 0, Number, Number2 >::shape_values |
Definition at line 1774 of file tensor_product_kernels.h.
const Number2* internal::EvaluatorTensorProduct< variant, dim, 0, 0, Number, Number2 >::shape_gradients |
Definition at line 1775 of file tensor_product_kernels.h.
const Number2* internal::EvaluatorTensorProduct< variant, dim, 0, 0, Number, Number2 >::shape_hessians |
Definition at line 1776 of file tensor_product_kernels.h.
const unsigned int internal::EvaluatorTensorProduct< variant, dim, 0, 0, Number, Number2 >::n_rows |
Definition at line 1777 of file tensor_product_kernels.h.
const unsigned int internal::EvaluatorTensorProduct< variant, dim, 0, 0, Number, Number2 >::n_columns |
Definition at line 1778 of file tensor_product_kernels.h.