Reference documentation for deal.II version 9.3.3
\(\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\}}\)
Public Types | Public Member Functions | Protected Attributes | Private Attributes | List of all members
FEInterfaceViews::Scalar< dim, spacedim > Class Template Reference

#include <deal.II/fe/fe_interface_values.h>

Inheritance diagram for FEInterfaceViews::Scalar< dim, spacedim >:
[legend]

Public Types

using value_type = double
 
using gradient_type = typename FEValuesViews::Scalar< dim, spacedim >::gradient_type
 
using hessian_type = typename FEValuesViews::Scalar< dim, spacedim >::hessian_type
 
using third_derivative_type = typename FEValuesViews::Scalar< dim, spacedim >::third_derivative_type
 

Public Member Functions

 Scalar (const FEInterfaceValues< dim, spacedim > &fe_interface, const unsigned int component)
 
value_type value (const bool here_or_there, const unsigned int interface_dof_index, const unsigned int q_point) const
 
value_type jump (const unsigned int interface_dof_index, const unsigned int q_point) const
 
value_type average (const unsigned int interface_dof_index, const unsigned int q_point) const
 
gradient_type average_gradient (const unsigned int interface_dof_index, const unsigned int q_point) const
 
gradient_type jump_gradient (const unsigned int interface_dof_index, const unsigned int q_point) const
 
hessian_type average_hessian (const unsigned int interface_dof_index, const unsigned int q_point) const
 
hessian_type jump_hessian (const unsigned int interface_dof_index, const unsigned int q_point) const
 
third_derivative_type jump_3rd_derivative (const unsigned int interface_dof_index, const unsigned int q_point) const
 

Protected Attributes

const FEInterfaceValues< dim, spacedim > * fe_interface
 

Private Attributes

const FEValuesExtractors::Scalar extractor
 

Detailed Description

template<int dim, int spacedim = dim>
class FEInterfaceViews::Scalar< dim, spacedim >

The view of a scalar variable for FEInterfaceValues.

Definition at line 64 of file fe_interface_values.h.

Member Typedef Documentation

◆ value_type

template<int dim, int spacedim = dim>
using FEInterfaceViews::Scalar< dim, spacedim >::value_type = double

This is the type returned for values.

Definition at line 70 of file fe_interface_values.h.

◆ gradient_type

template<int dim, int spacedim = dim>
using FEInterfaceViews::Scalar< dim, spacedim >::gradient_type = typename FEValuesViews::Scalar<dim, spacedim>::gradient_type

This is the type returned for gradients, for example from average_gradient().

Definition at line 76 of file fe_interface_values.h.

◆ hessian_type

template<int dim, int spacedim = dim>
using FEInterfaceViews::Scalar< dim, spacedim >::hessian_type = typename FEValuesViews::Scalar<dim, spacedim>::hessian_type

This is the type returned for hessians, for example from jump_hessian().

Definition at line 82 of file fe_interface_values.h.

◆ third_derivative_type

template<int dim, int spacedim = dim>
using FEInterfaceViews::Scalar< dim, spacedim >::third_derivative_type = typename FEValuesViews::Scalar<dim, spacedim>::third_derivative_type

This is the type returned for third derivatives, for example from jump_hessian().

Definition at line 89 of file fe_interface_values.h.

Constructor & Destructor Documentation

◆ Scalar()

template<int dim, int spacedim = dim>
FEInterfaceViews::Scalar< dim, spacedim >::Scalar ( const FEInterfaceValues< dim, spacedim > &  fe_interface,
const unsigned int  component 
)

Constructor for an object that represents a single scalar component

Member Function Documentation

◆ value()

template<int dim, int spacedim = dim>
value_type FEInterfaceViews::Scalar< dim, spacedim >::value ( const bool  here_or_there,
const unsigned int  interface_dof_index,
const unsigned int  q_point 
) const

Return the value of the shape function with interface dof index interface_dof_index in quadrature point q_point of the component selected by this view.

The argument here_or_there selects between the upstream value and the downstream value as defined by the direction of the normal vector in this quadrature point. If here_or_there is true, the shape functions from the first cell of the interface is used.

In other words, this function returns the limit of the value of the shape function in the given quadrature point when approaching it from one of the two cells of the interface.

Note
This function is typically used to pick the upstream or downstream value based on a direction. This can be achieved by using (direction * normal)>0 as the first argument of this function.

◆ jump()

template<int dim, int spacedim = dim>
value_type FEInterfaceViews::Scalar< dim, spacedim >::jump ( const unsigned int  interface_dof_index,
const unsigned int  q_point 
) const

Return the jump \(\jump{u}=u_1 - u_2\) on the interface for the shape function interface_dof_index in the quadrature point q_point of the component selected by this view.

◆ average()

template<int dim, int spacedim = dim>
value_type FEInterfaceViews::Scalar< dim, spacedim >::average ( const unsigned int  interface_dof_index,
const unsigned int  q_point 
) const

Return the average value \(\average{u}=\frac{1}{2}(u_1 + u_2)\) on the interface for the shape function interface_dof_index in the quadrature point q_point of the component selected by this view.

◆ average_gradient()

template<int dim, int spacedim = dim>
gradient_type FEInterfaceViews::Scalar< dim, spacedim >::average_gradient ( const unsigned int  interface_dof_index,
const unsigned int  q_point 
) const

Return the average of the gradient \(\average{\nabla u}\) on the interface for the shape function interface_dof_index in the quadrature point q_point of the component selected by this view.

◆ jump_gradient()

template<int dim, int spacedim = dim>
gradient_type FEInterfaceViews::Scalar< dim, spacedim >::jump_gradient ( const unsigned int  interface_dof_index,
const unsigned int  q_point 
) const

Return the jump of the gradient \(\jump{nabla u}\) on the interface for the shape function interface_dof_index in the quadrature point q_point of the component selected by this view.

◆ average_hessian()

template<int dim, int spacedim = dim>
hessian_type FEInterfaceViews::Scalar< dim, spacedim >::average_hessian ( const unsigned int  interface_dof_index,
const unsigned int  q_point 
) const

Return the average of the Hessian \(\average{\nabla^2 u} = \frac{1}{2}\nabla^2 u_{\text{cell0}} + \frac{1}{2} \nabla^2 u_{\text{cell1}}\) on the interface for the shape function interface_dof_index at the quadrature point q_point of the component selected by this view.

◆ jump_hessian()

template<int dim, int spacedim = dim>
hessian_type FEInterfaceViews::Scalar< dim, spacedim >::jump_hessian ( const unsigned int  interface_dof_index,
const unsigned int  q_point 
) const

Return the jump in the gradient \(\jump{\nabla u}=\nabla u_{\text{cell0}} - \nabla u_{\text{cell1}}\) on the interface for the shape function interface_dof_index at the quadrature point q_point of the component selected by this view.

◆ jump_3rd_derivative()

template<int dim, int spacedim = dim>
third_derivative_type FEInterfaceViews::Scalar< dim, spacedim >::jump_3rd_derivative ( const unsigned int  interface_dof_index,
const unsigned int  q_point 
) const

Return the jump in the third derivative \(\jump{\nabla^3 u} = \nabla^3 u_{\text{cell0}} - \nabla^3 u_{\text{cell1}}\) on the interface for the shape function interface_dof_index at the quadrature point q_point of the component selected by this view.

Member Data Documentation

◆ extractor

template<int dim, int spacedim = dim>
const FEValuesExtractors::Scalar FEInterfaceViews::Scalar< dim, spacedim >::extractor
private

The extractor for this view.

Definition at line 197 of file fe_interface_values.h.

◆ fe_interface

const FEInterfaceValues<dim, spacedim>* FEInterfaceViews::Base< dim, spacedim >::fe_interface
protectedinherited

Store a pointer to the FEInterfaceValues instance.

Definition at line 55 of file fe_interface_values.h.


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