dune-functions  2.5-dev
Public Types | Public Member Functions | Public Attributes | List of all members
Dune::Functions::BSplineLocalFiniteElement< GV, R > Class Template Reference

LocalFiniteElement in the sense of dune-localfunctions, for the B-spline basis on tensor-product grids. More...

#include <dune/functions/functionspacebases/bsplinebasis.hh>

Inheritance diagram for Dune::Functions::BSplineLocalFiniteElement< GV, R >:
Inheritance graph

Public Types

typedef LocalFiniteElementTraits< BSplineLocalBasis< GV, R >, BSplineLocalCoefficients< dim >, BSplineLocalInterpolation< dim, BSplineLocalBasis< GV, R > > > Traits
 Export various types related to this LocalFiniteElement. More...
 

Public Member Functions

 BSplineLocalFiniteElement (const BSplineNodeFactory< GV, FlatMultiIndex< std::size_t >> &nodeFactory)
 Constructor with a given B-spline basis. More...
 
void bind (const std::array< uint, dim > &elementIdx)
 Bind LocalFiniteElement to a specific knot span of the spline patch. More...
 
const BSplineLocalBasis< GV, R > & localBasis () const
 Hand out a LocalBasis object. More...
 
const BSplineLocalCoefficients< dim > & localCoefficients () const
 Hand out a LocalCoefficients object. More...
 
const BSplineLocalInterpolation< dim, BSplineLocalBasis< GV, R > > & localInterpolation () const
 Hand out a LocalInterpolation object. More...
 
uint size () const
 Number of shape functions in this finite element. More...
 
GeometryType type () const
 Return the reference element that the local finite element is defined on (here, a hypercube) More...
 
unsigned int size (int i) const
 Number of degrees of freedom for one coordinate direction. More...
 

Public Attributes

const BSplineNodeFactory< GV, FlatMultiIndex< std::size_t > > & nodeFactory_
 
BSplineLocalBasis< GV, R > localBasis_
 
BSplineLocalCoefficients< dim > localCoefficients_
 
BSplineLocalInterpolation< dim, BSplineLocalBasis< GV, R > > localInterpolation_
 
std::array< uint, dim > currentKnotSpan_
 

Detailed Description

template<class GV, class R>
class Dune::Functions::BSplineLocalFiniteElement< GV, R >

LocalFiniteElement in the sense of dune-localfunctions, for the B-spline basis on tensor-product grids.

This class ties together the implementation classes BSplineLocalBasis, BSplineLocalCoefficients, and BSplineLocalInterpolation

Template Parameters
DNumber type used for domain coordinates
RNumber type used for spline function values
dimDimension of the patch

Member Typedef Documentation

§ Traits

template<class GV, class R>
typedef LocalFiniteElementTraits<BSplineLocalBasis<GV,R>, BSplineLocalCoefficients<dim>, BSplineLocalInterpolation<dim,BSplineLocalBasis<GV,R> > > Dune::Functions::BSplineLocalFiniteElement< GV, R >::Traits

Export various types related to this LocalFiniteElement.

Constructor & Destructor Documentation

§ BSplineLocalFiniteElement()

template<class GV, class R>
Dune::Functions::BSplineLocalFiniteElement< GV, R >::BSplineLocalFiniteElement ( const BSplineNodeFactory< GV, FlatMultiIndex< std::size_t >> &  nodeFactory)
inline

Constructor with a given B-spline basis.

Member Function Documentation

§ bind()

template<class GV, class R>
void Dune::Functions::BSplineLocalFiniteElement< GV, R >::bind ( const std::array< uint, dim > &  elementIdx)
inline

Bind LocalFiniteElement to a specific knot span of the spline patch.

Elements are the non-empty knot spans, here we do the renumbering

Parameters
ijkInteger coordinates in the tensor product patch

§ localBasis()

template<class GV, class R>
const BSplineLocalBasis<GV,R>& Dune::Functions::BSplineLocalFiniteElement< GV, R >::localBasis ( ) const
inline

Hand out a LocalBasis object.

§ localCoefficients()

template<class GV, class R>
const BSplineLocalCoefficients<dim>& Dune::Functions::BSplineLocalFiniteElement< GV, R >::localCoefficients ( ) const
inline

Hand out a LocalCoefficients object.

§ localInterpolation()

template<class GV, class R>
const BSplineLocalInterpolation<dim,BSplineLocalBasis<GV,R> >& Dune::Functions::BSplineLocalFiniteElement< GV, R >::localInterpolation ( ) const
inline

Hand out a LocalInterpolation object.

§ size() [1/2]

template<class GV, class R>
uint Dune::Functions::BSplineLocalFiniteElement< GV, R >::size ( ) const
inline

Number of shape functions in this finite element.

§ size() [2/2]

template<class GV, class R>
unsigned int Dune::Functions::BSplineLocalFiniteElement< GV, R >::size ( int  i) const
inline

Number of degrees of freedom for one coordinate direction.

§ type()

template<class GV, class R>
GeometryType Dune::Functions::BSplineLocalFiniteElement< GV, R >::type ( ) const
inline

Return the reference element that the local finite element is defined on (here, a hypercube)

Member Data Documentation

§ currentKnotSpan_

template<class GV, class R>
std::array<uint,dim> Dune::Functions::BSplineLocalFiniteElement< GV, R >::currentKnotSpan_

§ localBasis_

template<class GV, class R>
BSplineLocalBasis<GV,R> Dune::Functions::BSplineLocalFiniteElement< GV, R >::localBasis_

§ localCoefficients_

template<class GV, class R>
BSplineLocalCoefficients<dim> Dune::Functions::BSplineLocalFiniteElement< GV, R >::localCoefficients_

§ localInterpolation_

template<class GV, class R>
BSplineLocalInterpolation<dim,BSplineLocalBasis<GV,R> > Dune::Functions::BSplineLocalFiniteElement< GV, R >::localInterpolation_

§ nodeFactory_

template<class GV, class R>
const BSplineNodeFactory<GV,FlatMultiIndex<std::size_t> >& Dune::Functions::BSplineLocalFiniteElement< GV, R >::nodeFactory_

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