HyperHDG
Classes | Public Member Functions | Static Public Member Functions | List of all members
LocalSolver::Template< hyEdge_dimT, lSol_float_t > Class Template Reference

Implementation the interface of local solvers needed by enclosing objects in minimal way. More...

#include <template.hxx>

Classes

struct  data_type
 Define type of (hyperedge related) data that is stored in HyDataContainer. More...
 
struct  node_element
 Define type of node elements, especially with respect to nodal shape functions. More...
 

Public Member Functions

template<typename SmallMatInT , typename SmallMatOutT >
SmallMatOutT & trace_to_flux (const SmallMatInT &, SmallMatOutT &) const
 The local solver as needed by the HDG method. More...
 
template<typename AbscissaType , std::size_t AbscissaSize, class InputArrayType >
std::array< std::array< lSol_float_t, Hypercube< hyEdge_dimT >::pow(AbscissaSize)>, system_dimension()> bulk_values (const std::array< AbscissaType, AbscissaSize > &, const InputArrayType &, const lSol_float_t=0.) const
 The values of the local solution in quadrature points of the cell. More...
 

Static Public Member Functions

static constexpr unsigned int hyEdge_dim ()
 Return template parameter hyEdge_dimT. More...
 
static constexpr unsigned int n_glob_dofs_per_node ()
 Number of degrees of freedom per hypernode. More...
 
static constexpr unsigned int system_dimension ()
 The dimension of the local system of partial differential equations. More...
 
static constexpr unsigned int node_system_dimension ()
 The dimension of the function represented by skeletal unknowns. More...
 

Detailed Description

template<int hyEdge_dimT, typename lSol_float_t>
class LocalSolver::Template< hyEdge_dimT, lSol_float_t >

Implementation the interface of local solvers needed by enclosing objects in minimal way.


The class serves as a template for the implementation of local solvers. It also serves as a minimal input to other classes using local solvers.The local solver uses no degrees of freedom on the nodes and also produces no output.

Member Function Documentation

◆ bulk_values()

template<int hyEdge_dimT, typename lSol_float_t >
template<typename AbscissaType , std::size_t AbscissaSize, class InputArrayType >
std::array<std::array<lSol_float_t, Hypercube<hyEdge_dimT>::pow(AbscissaSize)>, system_dimension()> LocalSolver::Template< hyEdge_dimT, lSol_float_t >::bulk_values ( const std::array< AbscissaType, AbscissaSize > &  ,
const InputArrayType &  ,
const  lSol_float_t = 0. 
) const
inline

The values of the local solution in quadrature points of the cell.


Return values
Anarray of array with outer size system_dimension() and inner size number of quadrature points, containing for each component of the solution the values in each quadrature point.
Here is the call graph for this function:

◆ hyEdge_dim()

template<int hyEdge_dimT, typename lSol_float_t >
static constexpr unsigned int LocalSolver::Template< hyEdge_dimT, lSol_float_t >::hyEdge_dim ( )
inlinestaticconstexpr

Return template parameter hyEdge_dimT.


Return values
hyEdge_dimTDimension of hypergraph's hyperedges.

◆ n_glob_dofs_per_node()

template<int hyEdge_dimT, typename lSol_float_t >
static constexpr unsigned int LocalSolver::Template< hyEdge_dimT, lSol_float_t >::n_glob_dofs_per_node ( )
inlinestaticconstexpr

Number of degrees of freedom per hypernode.


Note
n_dofs_per_nodeT of HyperNodeFactory must be equal to this number.

◆ node_system_dimension()

template<int hyEdge_dimT, typename lSol_float_t >
static constexpr unsigned int LocalSolver::Template< hyEdge_dimT, lSol_float_t >::node_system_dimension ( )
inlinestaticconstexpr

The dimension of the function represented by skeletal unknowns.


◆ system_dimension()

template<int hyEdge_dimT, typename lSol_float_t >
static constexpr unsigned int LocalSolver::Template< hyEdge_dimT, lSol_float_t >::system_dimension ( )
inlinestaticconstexpr

The dimension of the local system of partial differential equations.


◆ trace_to_flux()

template<int hyEdge_dimT, typename lSol_float_t >
template<typename SmallMatInT , typename SmallMatOutT >
SmallMatOutT& LocalSolver::Template< hyEdge_dimT, lSol_float_t >::trace_to_flux ( const SmallMatInT &  ,
SmallMatOutT &   
) const
inline

The local solver as needed by the HDG method.



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