dune-functions 2.9.0
|
The restriction of a finite element basis to a single element. More...
#include <dune/functions/functionspacebases/defaultlocalview.hh>
Public Types | |
using | GlobalBasis = GB |
The global FE basis that this is a view on. More... | |
using | GridView = typename GlobalBasis::GridView |
The grid view the global FE basis lives on. More... | |
using | Element = typename GridView::template Codim< 0 >::Entity |
Type of the grid element we are bound to. More... | |
using | size_type = std::size_t |
The type used for sizes. More... | |
using | Tree = typename GlobalBasis::PreBasis::Node |
Tree of local finite elements / local shape function sets. More... | |
using | MultiIndex = std::conditional_t<(PreBasis::minMultiIndexSize==PreBasis::maxMultiIndexSize), StaticMultiIndex< size_type, PreBasis::maxMultiIndexSize >, Dune::ReservedVector< size_type, PreBasis::multiIndexBufferSize > > |
Type used for global numbering of the basis vectors. More... | |
Public Member Functions | |
DefaultLocalView (const GlobalBasis &globalBasis) | |
Construct local view for a given global finite element basis. More... | |
void | bind (const Element &e) |
Bind the view to a grid element. More... | |
bool | isBound () const |
Return if the view is bound to a grid element. More... | |
bool | bound () const |
Return if the view is bound to a grid element. More... | |
const Element & | element () const |
Return the grid element that the view is bound to. More... | |
void | unbind () |
Unbind from the current element. More... | |
const Tree & | tree () const |
Return the local ansatz tree associated to the bound entity. More... | |
size_type | size () const |
Total number of degrees of freedom on this element. More... | |
size_type | maxSize () const |
Maximum local size for any element on the GridView. More... | |
const MultiIndex & | index (size_type i) const |
Maps from subtree index set [0..size-1] to a globally unique multi index in global basis. More... | |
const GlobalBasis & | globalBasis () const |
Return the global basis that we are a view on. More... | |
const DefaultLocalView & | rootLocalView () const |
Protected Types | |
using | PreBasis = typename GlobalBasis::PreBasis |
using | MultiIndexStorage = std::conditional_t<(PreBasis::minMultiIndexSize==PreBasis::maxMultiIndexSize), OverflowArray< StaticMultiIndex< size_type, PreBasis::maxMultiIndexSize >, PreBasis::multiIndexBufferSize >, Dune::ReservedVector< size_type, PreBasis::multiIndexBufferSize > > |
Protected Attributes | |
const GlobalBasis * | globalBasis_ |
std::optional< Element > | element_ |
Tree | tree_ |
std::vector< MultiIndexStorage > | indices_ |
The restriction of a finite element basis to a single element.
using Dune::Functions::DefaultLocalView< GB >::Element = typename GridView::template Codim<0>::Entity |
Type of the grid element we are bound to.
using Dune::Functions::DefaultLocalView< GB >::GlobalBasis = GB |
The global FE basis that this is a view on.
using Dune::Functions::DefaultLocalView< GB >::GridView = typename GlobalBasis::GridView |
The grid view the global FE basis lives on.
using Dune::Functions::DefaultLocalView< GB >::MultiIndex = std::conditional_t<(PreBasis::minMultiIndexSize == PreBasis::maxMultiIndexSize), StaticMultiIndex<size_type, PreBasis::maxMultiIndexSize>, Dune::ReservedVector<size_type, PreBasis::multiIndexBufferSize> > |
Type used for global numbering of the basis vectors.
|
protected |
|
protected |
using Dune::Functions::DefaultLocalView< GB >::size_type = std::size_t |
The type used for sizes.
using Dune::Functions::DefaultLocalView< GB >::Tree = typename GlobalBasis::PreBasis::Node |
Tree of local finite elements / local shape function sets.
|
inline |
Construct local view for a given global finite element basis.
|
inline |
Bind the view to a grid element.
Having to bind the view to an element before being able to actually access any of its data members offers to centralize some expensive setup code in the 'bind' method, which can save a lot of run-time.
|
inline |
Return if the view is bound to a grid element.
|
inline |
Return the grid element that the view is bound to.
Dune::Exception | if the view is not bound to anything |
|
inline |
Return the global basis that we are a view on.
|
inline |
Maps from subtree index set [0..size-1] to a globally unique multi index in global basis.
|
inline |
Return if the view is bound to a grid element.
|
inline |
Maximum local size for any element on the GridView.
This is the maximal size needed for local matrices and local vectors, i.e., the result is
|
inline |
|
inline |
Total number of degrees of freedom on this element.
|
inline |
Return the local ansatz tree associated to the bound entity.
|
inline |
Unbind from the current element.
Calling this method should only be a hint that the view can be unbound.
|
protected |
|
protected |
|
protected |
|
protected |