KASKADE 7 development version
Public Member Functions | List of all members
Kaskade::LagrangeMapperImplementation< ScalarType, GV, restricted >::Combiner Class Reference

A class implementing a matrix \( K \in \R^{n\times m}\) mapping a subset of \( m \) global degrees of freedom (those given by globalIndices()) to \( n \) local degrees of freedom (shape functions). More...

#include <lagrangespace.hh>

Detailed Description

template<class ScalarType, class GV, bool restricted = false>
class Kaskade::LagrangeMapperImplementation< ScalarType, GV, restricted >::Combiner

A class implementing a matrix \( K \in \R^{n\times m}\) mapping a subset of \( m \) global degrees of freedom (those given by globalIndices()) to \( n \) local degrees of freedom (shape functions).

For Lagrange elements, this usually realizes just the identity. We also support the case that there are no degrees of freedom associated to a cell, i.e. \( m=0 \), see ContinuousLagrangeMapperSubdomain.

Definition at line 174 of file lagrangespace.hh.

Public Member Functions

template<class GlobalIndices >
 Combiner (GlobalIndices const &globalIndices, ShapeFunctionSet const &sfs)
 
template<class Matrix >
void rightTransform (Matrix &A) const
 In-place computation of \( A \leftarrow A K \). Since \( K \) is the identity, this is a no-op. More...
 
template<int d, int k>
void rightTransform (std::vector< VariationalArg< Scalar, d, k > > &v) const
 In-place computation of row vectors \( v \leftarrow v K \). More...
 
template<class Matrix >
void leftPseudoInverse (Matrix &A) const
 In-place computation of \( A \leftarrow K^+ A \). More...
 
 operator Dune::BCRSMatrix< Dune::FieldMatrix< Scalar, 1, 1 > > () const
 

Constructor & Destructor Documentation

◆ Combiner()

template<class ScalarType , class GV , bool restricted = false>
template<class GlobalIndices >
Kaskade::LagrangeMapperImplementation< ScalarType, GV, restricted >::Combiner::Combiner ( GlobalIndices const &  globalIndices,
ShapeFunctionSet const &  sfs 
)
inline

Definition at line 178 of file lagrangespace.hh.

Member Function Documentation

◆ leftPseudoInverse()

template<class ScalarType , class GV , bool restricted = false>
template<class Matrix >
void Kaskade::LagrangeMapperImplementation< ScalarType, GV, restricted >::Combiner::leftPseudoInverse ( Matrix &  A) const
inline

In-place computation of \( A \leftarrow K^+ A \).

Definition at line 211 of file lagrangespace.hh.

◆ operator Dune::BCRSMatrix< Dune::FieldMatrix< Scalar, 1, 1 > >()

template<class ScalarType , class GV , bool restricted = false>
Kaskade::LagrangeMapperImplementation< ScalarType, GV, restricted >::Combiner::operator Dune::BCRSMatrix< Dune::FieldMatrix< Scalar, 1, 1 > > ( ) const
inline

Implicit conversion to a sparse matrix. This is just the identity.

Definition at line 220 of file lagrangespace.hh.

◆ rightTransform() [1/2]

template<class ScalarType , class GV , bool restricted = false>
template<class Matrix >
void Kaskade::LagrangeMapperImplementation< ScalarType, GV, restricted >::Combiner::rightTransform ( Matrix &  A) const
inline

In-place computation of \( A \leftarrow A K \). Since \( K \) is the identity, this is a no-op.

Definition at line 193 of file lagrangespace.hh.

◆ rightTransform() [2/2]

template<class ScalarType , class GV , bool restricted = false>
template<int d, int k>
void Kaskade::LagrangeMapperImplementation< ScalarType, GV, restricted >::Combiner::rightTransform ( std::vector< VariationalArg< Scalar, d, k > > &  v) const
inline

In-place computation of row vectors \( v \leftarrow v K \).

Definition at line 202 of file lagrangespace.hh.


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