hyper.deal
Loading...
Searching...
No Matches
hyperdeal::FEEvaluationBase< dim_x, dim_v, degree, n_points, Number, VectorizedArrayType > Class Template Reference

#include <fe_evaluation_base.h>

Inheritance diagram for hyperdeal::FEEvaluationBase< dim_x, dim_v, degree, n_points, Number, VectorizedArrayType >:
hyperdeal::FEEvaluation< dim_x, dim_v, degree, n_points, Number, VectorizedArrayType > hyperdeal::FEFaceEvaluation< dim_x, dim_v, degree, n_points, Number, VectorizedArrayType > hyperdeal::FEEvaluationInverse< dim_x, dim_v, degree, n_points, Number, VectorizedArrayType >

Public Types

using NUMBER_ = Number
 
using VEC_NUMBER_ = VectorizedArrayType
 
using MF = MatrixFree<dim_x, dim_v, Number, VectorizedArrayType>
 
using VectorizedArrayTypeX = typename MF::VectorizedArrayTypeX
 
using VectorizedArrayTypeV = typename MF::VectorizedArrayTypeV
 

Public Member Functions

 FEEvaluationBase (const MatrixFree< dim_x, dim_v, Number, VectorizedArrayType > &matrix_free)
 
virtual ~FEEvaluationBase ()=default
 
virtual void reinit (typename MatrixFree< dim_x, dim_v, Number, VectorizedArrayType >::ID cell_index)
 
VectorizedArrayType * get_data_ptr ()
 
const dealii::AlignedVector< Number > * get_shape_values () const
 
const dealii::AlignedVector< Number > * get_shape_gradients () const
 

Static Public Attributes

static const int dim = dim_x + dim_v
 
static const unsigned int n_vectors = MF::VectorizedArrayTypeX::size()
 
static const unsigned int n_vectors_v = MF::VectorizedArrayTypeV::size()
 
static const int static_dofs
 

Protected Attributes

dealii::AlignedVector< VectorizedArrayType > data
 
const MFmatrix_free
 
const dealii::MatrixFree< dim_x, Number, VectorizedArrayTypeX > & matrix_free_x
 
const dealii::MatrixFree< dim_v, Number, VectorizedArrayTypeV > & matrix_free_v
 
unsigned int macro_cell_x
 
unsigned int macro_cell_v
 
unsigned int lane_y
 
unsigned int macro
 
const dealii::AlignedVector< Number > * shape_values
 
const dealii::AlignedVector< Number > * shape_gradients
 

Detailed Description

template<int dim_x, int dim_v, int degree, int n_points, typename Number, typename VectorizedArrayType>
class hyperdeal::FEEvaluationBase< dim_x, dim_v, degree, n_points, Number, VectorizedArrayType >

Base class of FEEvaluation and FEFaceEvaluation.

Constructor & Destructor Documentation

◆ FEEvaluationBase()

template<int dim_x, int dim_v, int degree, int n_points, typename Number , typename VectorizedArrayType >
hyperdeal::FEEvaluationBase< dim_x, dim_v, degree, n_points, Number, VectorizedArrayType >::FEEvaluationBase ( const MatrixFree< dim_x, dim_v, Number, VectorizedArrayType > & matrix_free)

Constructor.

◆ ~FEEvaluationBase()

template<int dim_x, int dim_v, int degree, int n_points, typename Number , typename VectorizedArrayType >
virtual hyperdeal::FEEvaluationBase< dim_x, dim_v, degree, n_points, Number, VectorizedArrayType >::~FEEvaluationBase ( )
virtualdefault

Destructor.

Member Function Documentation

◆ get_data_ptr()

template<int dim_x, int dim_v, int degree, int n_points, typename Number , typename VectorizedArrayType >
VectorizedArrayType * hyperdeal::FEEvaluationBase< dim_x, dim_v, degree, n_points, Number, VectorizedArrayType >::get_data_ptr ( )

Return pointer to the internal buffer.

◆ get_shape_gradients()

template<int dim_x, int dim_v, int degree, int n_points, typename Number , typename VectorizedArrayType >
const dealii::AlignedVector< Number > * hyperdeal::FEEvaluationBase< dim_x, dim_v, degree, n_points, Number, VectorizedArrayType >::get_shape_gradients ( ) const

Return gradient of the shape values.

◆ get_shape_values()

template<int dim_x, int dim_v, int degree, int n_points, typename Number , typename VectorizedArrayType >
const dealii::AlignedVector< Number > * hyperdeal::FEEvaluationBase< dim_x, dim_v, degree, n_points, Number, VectorizedArrayType >::get_shape_values ( ) const

Return shape values.

◆ reinit()

template<int dim_x, int dim_v, int degree, int n_points, typename Number , typename VectorizedArrayType >
void hyperdeal::FEEvaluationBase< dim_x, dim_v, degree, n_points, Number, VectorizedArrayType >::reinit ( typename MatrixFree< dim_x, dim_v, Number, VectorizedArrayType >::ID cell_index)
virtual

Member Data Documentation

◆ data

template<int dim_x, int dim_v, int degree, int n_points, typename Number , typename VectorizedArrayType >
dealii::AlignedVector<VectorizedArrayType> hyperdeal::FEEvaluationBase< dim_x, dim_v, degree, n_points, Number, VectorizedArrayType >::data
protected

Local storage for values and derivatives.

◆ matrix_free

template<int dim_x, int dim_v, int degree, int n_points, typename Number , typename VectorizedArrayType >
const MF& hyperdeal::FEEvaluationBase< dim_x, dim_v, degree, n_points, Number, VectorizedArrayType >::matrix_free
protected

Reference to the phase-space matrix-free instance.

◆ matrix_free_v

template<int dim_x, int dim_v, int degree, int n_points, typename Number , typename VectorizedArrayType >
const dealii::MatrixFree<dim_v, Number, VectorizedArrayTypeV>& hyperdeal::FEEvaluationBase< dim_x, dim_v, degree, n_points, Number, VectorizedArrayType >::matrix_free_v
protected

Reference to the v-space matrix-free instance.

◆ matrix_free_x

template<int dim_x, int dim_v, int degree, int n_points, typename Number , typename VectorizedArrayType >
const dealii::MatrixFree<dim_x, Number, VectorizedArrayTypeX>& hyperdeal::FEEvaluationBase< dim_x, dim_v, degree, n_points, Number, VectorizedArrayType >::matrix_free_x
protected

Reference to the x-space matrix-free instance.

◆ shape_gradients

template<int dim_x, int dim_v, int degree, int n_points, typename Number , typename VectorizedArrayType >
const dealii::AlignedVector<Number>* hyperdeal::FEEvaluationBase< dim_x, dim_v, degree, n_points, Number, VectorizedArrayType >::shape_gradients
protected

Pointer to the gradient of the shape functions.

◆ shape_values

template<int dim_x, int dim_v, int degree, int n_points, typename Number , typename VectorizedArrayType >
const dealii::AlignedVector<Number>* hyperdeal::FEEvaluationBase< dim_x, dim_v, degree, n_points, Number, VectorizedArrayType >::shape_values
protected

Pointer to the shape functions.

◆ static_dofs

template<int dim_x, int dim_v, int degree, int n_points, typename Number , typename VectorizedArrayType >
const int hyperdeal::FEEvaluationBase< dim_x, dim_v, degree, n_points, Number, VectorizedArrayType >::static_dofs
static
Initial value:
=
dealii::Utilities::pow((degree + 1 > n_points) ? (degree + 1) : n_points,
dim)

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