dune-pdelab  2.7-git
Modules | Namespaces | Classes | Typedefs | Enumerations | Enumerator | Functions | Variables
Grid Function Space
Collaboration diagram for Grid Function Space:

Modules

 Finite Element Map
 
 Ordering
 
 Strict Trial and Test space handling
 

Namespaces

 Dune::PDELab::Experimental
 
 Dune::PDELab::gfs
 Implementation namespace for GridFunctionSpace-specific features.
 

Classes

struct  Dune::PDELab::CompositeConstraintsOperator< Children >
 
struct  Dune::PDELab::CompositeConstraintsParameters< Children >
 
struct  Dune::PDELab::PowerConstraintsParameters< T, k >
 
struct  Dune::PDELab::DirichletConstraintsParameters
 
struct  Dune::PDELab::NoDirichletConstraintsParameters
 
struct  Dune::PDELab::FluxConstraintsParameters
 
struct  Dune::PDELab::NoFluxConstraintsParameters
 
struct  Dune::PDELab::FluxFromDirichletConstraintsAdapter< DirichletConstraintsParameters >
 
struct  Dune::PDELab::DirichletFromFluxConstraintsAdapter< FluxConstraintsParameters >
 
class  Dune::PDELab::NoConstraintsParameters
 
class  Dune::PDELab::ConstraintsTransformation< DI, CI, F >
 a class holding transformation for constrained spaces More...
 
class  Dune::PDELab::EmptyTransformation
 
class  Dune::PDELab::NoConstraints
 
class  Dune::PDELab::CompositeGridFunctionSpace< Backend, OrderingTag, Children >
 base class for tuples of grid function spaces base class that holds implementation of the methods this is the default version with lexicographic ordering More...
 
struct  Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::FEM::Traits
 
struct  Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::FEM
 Rudimentary internal implementation of a FiniteElementMap. More...
 
struct  Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits
 export Traits class More...
 
struct  Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::Traits
 
struct  Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering
 The actual Ordering object of the grid function space. More...
 
struct  Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering
 Root of the ordering tree. More...
 
struct  Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::ConstraintsContainer< E >
 extract type for storing constraints More...
 
struct  Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::ConstraintsContainer< E >
 extract type for storing constraints More...
 
class  Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >
 A pdelab grid function space implemented by a dune-functions function space basis. More...
 
class  Dune::PDELab::LocalFunctionSpace< Experimental::GridFunctionSpace< DFBasis, V, CE >, TAG >
 
class  Dune::PDELab::LocalFunctionSpace< Experimental::GridFunctionSpace< DFBasis, V, CE >, AnySpaceTag >
 
struct  Dune::PDELab::GridFunctionSpaceTraits< G, L, C, B, O >
 collect types exported by a leaf grid function space More...
 
class  Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >
 A grid function space. More...
 
class  Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >
 
class  Dune::PDELab::DiscreteGridFunction< T, X >
 convert a grid function space and a coefficient vector into a grid function More...
 
class  Dune::PDELab::DiscreteGridFunctionCurl< T, X >
 convert a grid function space and a coefficient vector into a grid function of the curl More...
 
struct  Dune::PDELab::DiscreteGridFunctionCurlTraits< GV, RangeFieldType, dimRangeOfBasis >
 Helper class to calculate the Traits of DiscreteGridFunctionCurl. More...
 
struct  Dune::PDELab::DiscreteGridFunctionCurlTraits< GV, RangeFieldType, 1 >
 Helper class to calculate the Traits of DiscreteGridFunctionCurl (1D) More...
 
struct  Dune::PDELab::DiscreteGridFunctionCurlTraits< GV, RangeFieldType, 2 >
 Helper class to calculate the Traits of DiscreteGridFunctionCurl (2D) More...
 
struct  Dune::PDELab::DiscreteGridFunctionCurlTraits< GV, RangeFieldType, 3 >
 Helper class to calculate the Traits of DiscreteGridFunctionCurl (3D) More...
 
class  Dune::PDELab::DiscreteGridFunctionGlobalCurl< T, X >
 convert a single component function space with experimental global finite elements into a grid function representing the curl More...
 
class  Dune::PDELab::DiscreteGridFunctionGradient< T, X >
 convert a single component function space with a grid function representing the gradient More...
 
class  Dune::PDELab::DiscreteGridFunctionPiola< T, X >
 DiscreteGridFunction with Piola transformation. More...
 
class  Dune::PDELab::VectorDiscreteGridFunction< T, X, dimR >
 DiscreteGridFunction for vector-valued functions. More...
 
class  Dune::PDELab::VectorDiscreteGridFunctionGradient< T, X >
 Equivalent of DiscreteGridFunctionGradient for vector-valued functions. More...
 
struct  Dune::PDELab::SingleDerivativeComputationHelper< Mat, RF, size >
 Helper class to compute a single derivative of scalar basis functions. More...
 
struct  Dune::PDELab::SingleDerivativeComputationHelper< Dune::FieldMatrix< RF, size, size >, RF, size >
 Template specialization for Dune::FieldMatrix. More...
 
struct  Dune::PDELab::SingleDerivativeComputationHelper< Dune::DiagonalMatrix< RF, size >, RF, size >
 Template specialization for Dune::DiagonalMatrix. More...
 
class  Dune::PDELab::VectorDiscreteGridFunctionDiv< T, X >
 Compute divergence of vector-valued functions. More...
 
class  Dune::PDELab::VectorDiscreteGridFunctionCurl< T, X, dimR >
 Compute curl of vector-valued functions. More...
 
class  Dune::PDELab::VectorDiscreteGridFunctionCurl< T, X, 3 >
 Compute curl of vector-valued functions (3D). More...
 
class  Dune::PDELab::VectorDiscreteGridFunctionCurl< T, X, 2 >
 Compute curl of vector-valued functions (2D). More...
 
struct  Dune::PDELab::LocalFunctionSpaceBaseTraits< GFS, DI >
 traits mapping global function space information to local function space More...
 
class  Dune::PDELab::LocalFunctionSpaceBaseNode< GFS, DOFIndex >
 
struct  Dune::PDELab::GridViewLocalFunctionSpaceBaseTraits< GFS, DOFIndex >
 traits for local function space on a gridview More...
 
class  Dune::PDELab::GridViewLocalFunctionSpaceBaseNode< GFS, DOFIndex >
 
struct  Dune::PDELab::PowerCompositeLocalFunctionSpaceTraits< GFS, DOFIndex, N >
 traits for multi component local function space More...
 
class  Dune::PDELab::PowerLocalFunctionSpaceNode< GFS, DOFIndex, ChildLFS, k >
 
struct  Dune::PDELab::power_gfs_to_lfs_template< SourceNode, Transformation >
 
class  Dune::PDELab::CompositeLocalFunctionSpaceNode< GFS, DOFIndex, Children >
 
struct  Dune::PDELab::composite_gfs_to_lfs_template< SourceNode, Transformation >
 
struct  Dune::PDELab::LeafLocalFunctionSpaceTraits< GFS, DOFIndex, N >
 traits for single component local function space More...
 
class  Dune::PDELab::LeafLocalFunctionSpaceNode< GFS, DOFIndex >
 single component local function space More...
 
class  Dune::PDELab::LocalFunctionSpace< GFS, TAG >
 Create a local function space from a global function space. More...
 
class  Dune::PDELab::LocalFunctionSpace< GFS, AnySpaceTag >
 
struct  Dune::PDELab::PowerCompositeGridFunctionSpaceTraits< G, B, O, k >
 Trait class for the multi component grid function spaces. More...
 
class  Dune::PDELab::PowerCompositeGridFunctionSpaceBase< GridFunctionSpace, GV, B, O, k >
 Mixin class providing common functionality of PowerGridFunctionSpace and CompositeGridFunctionSpace. More...
 
struct  Dune::PDELab::FunctionSpaceTag
 
struct  Dune::PDELab::GridFunctionSpaceTag
 
struct  Dune::PDELab::PowerGridFunctionSpaceTag
 
struct  Dune::PDELab::VectorGridFunctionSpaceTag
 
struct  Dune::PDELab::CompositeGridFunctionSpaceTag
 
struct  Dune::PDELab::LeafGridFunctionSpaceTag
 
struct  Dune::PDELab::GridFunctionSubSpaceTag< ProxiedGFSTag >
 
struct  Dune::PDELab::CompositeGridFunctionSpaceBaseTag
 Tag for the intermediate base class of the CompositeGridFunctionSpace. More...
 
struct  Dune::PDELab::EntityBlockedOrderingTag
 Indicate blocking of the unknowns by grid entity. More...
 
struct  Dune::PDELab::LexicographicOrderingTag
 Indicate lexicographic ordering of the unknowns of non-leaf grid function spaces. More...
 
struct  Dune::PDELab::InterleavedOrderingTag
 Indicate interleaved ordering of the unknowns of non-leaf grid function spaces according to a given blocking pattern. More...
 
struct  Dune::PDELab::NoConstOrderingSize< v >
 Mixin indicating whether a leaf GridFunctionSpace should never assume a const ordering size. More...
 
struct  Dune::PDELab::PartitionSelector< p0, p1, p2, p3, p4 >
 Helper for building the bitmask describing the grid partitions contained in a GFS. More...
 
struct  Dune::PDELab::EmptyParams
 
struct  Dune::PDELab::LeafOrderingTag< Params >
 Tag indicating a standard ordering for a leaf GridfunctionSpace. More...
 
struct  Dune::PDELab::SingleCodimMapper
 
struct  Dune::PDELab::PowerLocalFunctionSpaceTag
 Tag denoting a PowerLocalFunctionSpace. More...
 
struct  Dune::PDELab::CompositeLocalFunctionSpaceTag
 Tag denoting a CompositeLocalFunctionSpace. More...
 
struct  Dune::PDELab::LeafLocalFunctionSpaceTag
 Tag denoting a LeafLocalFunctionSpace. More...
 
struct  Dune::PDELab::HierarchicContainerAllocationTag
 
struct  Dune::PDELab::FlatContainerAllocationTag
 
struct  Dune::PDELab::DefaultLFSCacheTag
 
struct  Dune::PDELab::SimpleLFSCacheTag
 
struct  Dune::PDELab::_build_dof_index_type< GFS, Tag >
 
struct  Dune::PDELab::_build_dof_index_type< GFS, SingleCodimMapper >
 
struct  Dune::PDELab::build_dof_index_type< GFS >
 

Typedefs

template<typename VBE >
using Dune::PDELab::Experimental::DuneFunctionsCompatibleVBE = std::decay_t< decltype(*registerDuneFunctionsCompatibleVBE(std::declval< VBE * >()))>
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::GridView = Dune::PDELab::impl::GridView< typename DFBasis::GridView >
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::GridViewType = GridView
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::EntitySet = Dune::PDELab::impl::EntitySet< typename DFBasis::GridView >
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::size_type = std::size_t
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::SizeType = size_type
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::ConstraintsType = CE
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::FiniteElementType = typename DFBasis::LocalView::Tree::FiniteElement
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::Basis = DFBasis
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::Backend = DuneFunctionsCompatibleVBE< VBE >
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::FEM::Traits::FiniteElement = typename DFBasis::LocalView::Tree::FiniteElement
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::FEM::Traits::FiniteElementType = FiniteElement
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::FiniteElementMap = FEM
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::FiniteElementMapType = FEM
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Basis = DFBasis
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::Traits::DOFIndex = PDELab::DOFIndex< std::size_t, 1, 2 >
 A DOF index that is independent of any ordering. More...
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::Traits::ContainerIndex = PDELab::MultiIndex< std::size_t, 1 >
 The index to access containers with. More...
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::Traits::size_type = std::size_t
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::Traits::SizeType = size_type
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::Traits::DOFIndexAccessor = Dune::PDELab::DefaultDOFIndexAccessor
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::DOFIndex = typename Traits::DOFIndex
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::ContainerIndex = typename Traits::ContainerIndex
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::size_type = std::size_t
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::Traits = typename LeafOrdering::Traits
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::DOFIndex = typename Traits::DOFIndex
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::ContainerIndex = typename Traits::ContainerIndex
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::size_type = std::size_t
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::CacheTag = DuneFunctionsCacheTag
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::ContainerAllocationTag = FlatContainerAllocationTag
 
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::ConstraintsContainer< E >::Type = std::conditional_t< std::is_same< CE, NoConstraints >::value, EmptyTransformation, ConstraintsTransformation< typename Ordering::Traits::DOFIndex, typename Ordering::Traits::ContainerIndex, E > >
 define Type as the Type of a container of E's More...
 
using Dune::PDELab::GridFunctionSpaceTraits< G, L, C, B, O >::GridView = impl::GridView< G >
 the grid view where grid function is defined upon More...
 
using Dune::PDELab::GridFunctionSpaceTraits< G, L, C, B, O >::EntitySet = impl::EntitySet< G >
 the entity set of this function space. More...
 
using Dune::PDELab::GridFunctionSpaceTraits< G, L, C, B, O >::GridViewType = GridView
 
typedef B Dune::PDELab::GridFunctionSpaceTraits< G, L, C, B, O >::BackendType
 vector backend More...
 
typedef B Dune::PDELab::GridFunctionSpaceTraits< G, L, C, B, O >::Backend
 
typedef B::size_type Dune::PDELab::GridFunctionSpaceTraits< G, L, C, B, O >::SizeType
 short cut for size type exported by Backend More...
 
typedef L Dune::PDELab::GridFunctionSpaceTraits< G, L, C, B, O >::FiniteElementMapType
 finite element map More...
 
typedef L Dune::PDELab::GridFunctionSpaceTraits< G, L, C, B, O >::FiniteElementMap
 finite element map More...
 
typedef L::Traits::FiniteElementType Dune::PDELab::GridFunctionSpaceTraits< G, L, C, B, O >::FiniteElementType
 finite element More...
 
typedef L::Traits::FiniteElementType Dune::PDELab::GridFunctionSpaceTraits< G, L, C, B, O >::FiniteElement
 
typedef C Dune::PDELab::GridFunctionSpaceTraits< G, L, C, B, O >::ConstraintsType
 type representing constraints More...
 
typedef O Dune::PDELab::GridFunctionSpaceTraits< G, L, C, B, O >::OrderingTag
 tag describing the ordering. More...
 
typedef GridFunctionSpaceTraits< GV, FEM, CE, B, O > Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::Traits
 export Traits class More...
 
typedef GV::Traits::template Codim< 0 >::Entity Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::Element
 
typedef GV::Traits::template Codim< 0 >::Iterator Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::ElementIterator
 
typedef O Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::SizeTag
 
typedef O Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::OrderingTag
 
typedef LeafGridFunctionSpaceTag Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::ImplementationTag
 
typedef ordering_transformation::Type Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::Ordering
 
typedef std::conditional< std::is_same< CE, NoConstraints >::value, EmptyTransformation, ConstraintsTransformation< typename Ordering::Traits::DOFIndex, typename Ordering::Traits::ContainerIndex, E > >::type Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::ConstraintsContainer< E >::Type
 define Type as the Type of a container of E's More...
 
typedef GFSTraits Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::Traits
 
using Dune::PDELab::PowerCompositeGridFunctionSpaceTraits< G, B, O, k >::EntitySet = G
 
using Dune::PDELab::PowerCompositeGridFunctionSpaceTraits< G, B, O, k >::GridView = typename EntitySet::GridView
 
using Dune::PDELab::PowerCompositeGridFunctionSpaceTraits< G, B, O, k >::GridViewType = GridView
 the grid view where grid function is defined upon More...
 
typedef B Dune::PDELab::PowerCompositeGridFunctionSpaceTraits< G, B, O, k >::BackendType
 vector backend More...
 
typedef B Dune::PDELab::PowerCompositeGridFunctionSpaceTraits< G, B, O, k >::Backend
 
typedef O Dune::PDELab::PowerCompositeGridFunctionSpaceTraits< G, B, O, k >::MapperType
 mapper More...
 
typedef O Dune::PDELab::PowerCompositeGridFunctionSpaceTraits< G, B, O, k >::OrderingTag
 
typedef B::size_type Dune::PDELab::PowerCompositeGridFunctionSpaceTraits< G, B, O, k >::SizeType
 short cut for size type exported by Backend More...
 
typedef PowerCompositeGridFunctionSpaceTraits< GV, B, O, k > Dune::PDELab::PowerCompositeGridFunctionSpaceBase< GridFunctionSpace, GV, B, O, k >::Traits
 export traits class More...
 
typedef O Dune::PDELab::PowerCompositeGridFunctionSpaceBase< GridFunctionSpace, GV, B, O, k >::OrderingTag
 
template<typename GFS , typename TreePath >
using Dune::PDELab::GridFunctionSubSpace = gfs::GridFunctionSubSpace< GFS, TreePath >
 Non-nesting implementation of GridFunctionSubSpace. More...
 
using Dune::PDELab::DefaultLeafOrderingTag = LeafOrderingTag< EmptyParams >
 

Enumerations

enum  { Dune::PDELab::NoConstraints::doBoundary = false }
 
enum  { Dune::PDELab::NoConstraints::doProcessor = false }
 
enum  { Dune::PDELab::NoConstraints::doSkeleton = false }
 
enum  { Dune::PDELab::NoConstraints::doVolume = false }
 
enum  { Dune::PDELab::PowerCompositeGridFunctionSpaceTraits< G, B, O, k >::isComposite = 1, Dune::PDELab::PowerCompositeGridFunctionSpaceTraits< G, B, O, k >::noChilds = k }
 

Functions

template<typename GFS , typename CG >
void Dune::PDELab::constraints (const GFS &gfs, CG &cg, const bool verbose=false)
 construct constraints More...
 
template<typename P , typename GFS , typename CG >
void Dune::PDELab::constraints (const P &p, const GFS &gfs, CG &cg, const bool verbose=false)
 construct constraints from given constraints parameter tree More...
 
template<typename CG , typename XG >
void Dune::PDELab::set_constrained_dofs (const CG &cg, typename XG::ElementType x, XG &xg)
 construct constraints from given boundary condition function More...
 
template<typename CG , typename XG , typename Cmp >
bool Dune::PDELab::check_constrained_dofs (const CG &cg, typename XG::ElementType x, XG &xg, const Cmp &cmp=Cmp())
 check that constrained dofs match a certain value More...
 
template<typename CG , typename XG >
bool Dune::PDELab::check_constrained_dofs (const CG &cg, typename XG::ElementType x, XG &xg)
 check that constrained dofs match a certain value More...
 
template<typename CG , typename XG >
void Dune::PDELab::constrain_residual (const CG &cg, XG &xg)
 transform residual into transformed basis: r -> r~ More...
 
template<typename F , typename I , typename LFS , typename T >
void Dune::PDELab::NoConstraints::boundary (const F &f, const IntersectionGeometry< I > &ig, const LFS &lfs, T &trafo) const
 
template<typename I , typename LFS , typename T >
void Dune::PDELab::NoConstraints::processor (const IntersectionGeometry< I > &ig, const LFS &lfs, T &trafo) const
 
template<typename I , typename LFS , typename T >
void Dune::PDELab::NoConstraints::skeleton (const IntersectionGeometry< I > &ig, const LFS &lfs, T &trafo) const
 
template<typename E , typename LFS , typename T >
void Dune::PDELab::NoConstraints::volume (const ElementGeometry< E > &eg, const LFS &lfs, T &trafo) const
 
template<typename VBE >
VBE * Dune::PDELab::Experimental::registerDuneFunctionsCompatibleVBE (VBE *)
 
template<std::size_t block_size>
ISTL::SimpleVectorBackend<(block_size > 0 ? block_size :1)> * Dune::PDELab::Experimental::registerDuneFunctionsCompatibleVBE (ISTL::VectorBackend< ISTL::Blocking::none, block_size > *)
 
 Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::FEM::FEM (const std::shared_ptr< DFBasis > &basis)
 
const Traits::FiniteElementTypeDune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::FEM::find (const typename GridView::template Codim< 0 >::Entity &element) const
 Get local basis functions for entity. More...
 
void Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::FEM::update ()
 
 Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::LeafOrdering (const GridFunctionSpace &gfs)
 
size_type Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::size () const
 
size_type Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::size (const typename DOFIndex::EntityIndex &entity) const
 Number of degrees of freedom per entity. More...
 
size_type Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::maxLocalSize () const
 
bool Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::contains (typename Traits::SizeType codim) const
 True if there is at least one entity of the given codim that has a dof. More...
 
bool Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::fixedSize (typename Traits::SizeType codim) const
 True if all entities of the given codimension have the same number of dofs. More...
 
template<typename CIOutIterator , typename DIOutIterator = DummyDOFIndexIterator>
Traits::SizeType Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::extract_entity_indices (const typename Traits::DOFIndex::EntityIndex &entityIndex, typename Traits::SizeType child_index, CIOutIterator ci_out, const CIOutIterator ci_end, DIOutIterator dummy) const
 
ContainerIndex Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::containerIndex (const DOFIndex &i) const
 
void Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::update ()
 
 Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::Ordering (const GridFunctionSpace &gfs)
 
size_type Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::size () const
 
size_type Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::blockCount () const
 Same as size(), because block size is always 1. More...
 
size_type Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::maxLocalSize () const
 
bool Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::contains (typename Traits::SizeType codim) const
 Returns true if there is at least one entity of the given codim for which data needs to be communicated. More...
 
bool Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::fixedSize (typename Traits::SizeType codim) const
 True if for all entities of the given codim the same number of data items has to be communicated. More...
 
template<typename CIOutIterator , typename DIOutIterator = DummyDOFIndexIterator>
Traits::SizeType Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::extract_entity_indices (const typename Traits::DOFIndex::EntityIndex &ei, typename Traits::SizeType child_index, CIOutIterator ci_out, const CIOutIterator ci_end) const
 
void Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::update ()
 
 Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::GridFunctionSpace (std::shared_ptr< DFBasis > df_basis, std::shared_ptr< CE > ce)
 constructor More...
 
 Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::GridFunctionSpace (std::shared_ptr< DFBasis > df_basis)
 
const Traits::GridViewDune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::gridView () const
 get grid view More...
 
const Traits::EntitySetDune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::entitySet () const
 get EntitySet More...
 
const auto & Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::finiteElementMap () const
 get finite element map More...
 
const Traits::ConstraintsTypeDune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::constraints () const
 return constraints engine More...
 
std::shared_ptr< const CE > Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::constraintsStorage () const
 return storage of constraints engine More...
 
const OrderingDune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::ordering () const
 Direct access to the DOF ordering. More...
 
Traits::SizeType Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::size () const
 
Traits::SizeType Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::blockCount () const
 
Traits::SizeType Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::globalSize () const
 
Traits::SizeType Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::maxLocalSize () const
 
void Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::update (bool force=false)
 Update the indexing information of the GridFunctionSpace. More...
 
const std::string & Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::name () const
 
void Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::name (const std::string &name)
 
bool Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::isRootSpace () const
 
const BasisDune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::basis () const
 
 Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::GridFunctionSpace (const typename Traits::GridView &gridview, const FEM &fem, const CE &ce, const B &backend=B(), const OrderingTag &ordering_tag=OrderingTag())
 constructor More...
 
 Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::GridFunctionSpace (const typename Traits::GridView &gridview, const std::shared_ptr< const FEM > &fem, const std::shared_ptr< const CE > &ce, const B &backend=B(), const OrderingTag &ordering_tag=OrderingTag())
 constructor More...
 
 Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::GridFunctionSpace (const typename Traits::GridView &gridview, const FEM &fem, const B &backend=B(), const OrderingTag &ordering_tag=OrderingTag())
 constructor More...
 
 Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::GridFunctionSpace (const typename Traits::GridView &gridview, const std::shared_ptr< const FEM > &fem, const B &backend=B(), const OrderingTag &ordering_tag=OrderingTag())
 constructor More...
 
 Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::GridFunctionSpace (const typename Traits::EntitySet &entitySet, const FEM &fem, const CE &ce, const B &backend=B(), const OrderingTag &ordering_tag=OrderingTag())
 constructor More...
 
 Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::GridFunctionSpace (const typename Traits::EntitySet &entitySet, const std::shared_ptr< const FEM > &fem, const std::shared_ptr< const CE > &ce, const B &backend=B(), const OrderingTag &ordering_tag=OrderingTag())
 constructor More...
 
 Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::GridFunctionSpace (const typename Traits::EntitySet &entitySet, const FEM &fem, const B &backend=B(), const OrderingTag &ordering_tag=OrderingTag())
 constructor More...
 
 Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::GridFunctionSpace (const typename Traits::EntitySet &entitySet, const std::shared_ptr< const FEM > &fem, const B &backend=B(), const OrderingTag &ordering_tag=OrderingTag())
 constructor More...
 
const Traits::GridViewDune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::gridView () const
 get grid view More...
 
const Traits::EntitySetDune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::entitySet () const
 get EntitySet More...
 
const FEM & Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::finiteElementMap () const
 get finite element map More...
 
std::shared_ptr< const FEM > Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::finiteElementMapStorage () const
 get finite element map More...
 
const Traits::ConstraintsTypeDune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::constraints () const
 return constraints engine More...
 
std::shared_ptr< const CE > Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::constraintsStorage () const
 return storage of constraints engine More...
 
const OrderingDune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::ordering () const
 Direct access to the DOF ordering. More...
 
OrderingDune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::ordering ()
 Direct access to the DOF ordering. More...
 
std::shared_ptr< const OrderingDune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::orderingStorage () const
 Direct access to the storage of the DOF ordering. More...
 
std::shared_ptr< OrderingDune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::orderingStorage ()
 Direct access to the storage of the DOF ordering. More...
 
template<typename Backend_ , typename OrderingTag_ >
 Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::GridFunctionSpaceBase (Backend_ &&backend, OrderingTag_ &&ordering_tag)
 
Traits::SizeType Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::size () const
 
Traits::SizeType Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::blockCount () const
 
Traits::SizeType Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::globalSize () const
 
Traits::SizeType Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::maxLocalSize () const
 get max dimension of shape function space More...
 
void Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::update (bool force=false)
 Update the indexing information of the GridFunctionSpace. More...
 
const std::string & Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::name () const
 
void Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::name (const std::string &name)
 
Traits::Backend & Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::backend ()
 
const Traits::Backend & Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::backend () const
 
Traits::OrderingTag & Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::orderingTag ()
 
const Traits::OrderingTag & Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::orderingTag () const
 
bool Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::isRootSpace () const
 
template<typename Ordering >
void Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::update (Ordering &ordering) const
 
template<typename F , typename GFS , typename XG >
void Dune::PDELab::interpolate (const F &f, const GFS &gfs, XG &xg)
 interpolation from a given grid function More...
 
template<typename PowerGridFunctionSpace , typename Params >
TypeTree::TemplatizedGenericPowerNodeTransformation< PowerGridFunctionSpace, gfs_to_lfs< Params >, power_gfs_to_lfs_template< PowerGridFunctionSpace, gfs_to_lfs< Params > >::template result > Dune::PDELab::registerNodeTransformation (PowerGridFunctionSpace *pgfs, gfs_to_lfs< Params > *t, PowerGridFunctionSpaceTag *tag)
 
template<typename CompositeGridFunctionSpace , typename Params >
TypeTree::TemplatizedGenericCompositeNodeTransformation< CompositeGridFunctionSpace, gfs_to_lfs< Params >, composite_gfs_to_lfs_template< CompositeGridFunctionSpace, gfs_to_lfs< Params > >::template result > Dune::PDELab::registerNodeTransformation (CompositeGridFunctionSpace *cgfs, gfs_to_lfs< Params > *t, CompositeGridFunctionSpaceTag *tag)
 
template<typename GridFunctionSpace , typename Params >
TypeTree::GenericLeafNodeTransformation< GridFunctionSpace, gfs_to_lfs< Params >, LeafLocalFunctionSpaceNode< GridFunctionSpace, typename gfs_to_lfs< Params >::DOFIndex > > Dune::PDELab::registerNodeTransformation (GridFunctionSpace *gfs, gfs_to_lfs< Params > *t, LeafGridFunctionSpaceTag *tag)
 
const Traits::GridViewDune::PDELab::PowerCompositeGridFunctionSpaceBase< GridFunctionSpace, GV, B, O, k >::gridView () const
 get grid view More...
 
const Traits::EntitySetDune::PDELab::PowerCompositeGridFunctionSpaceBase< GridFunctionSpace, GV, B, O, k >::entitySet () const
 get grid view partition More...
 
 Dune::PDELab::PowerCompositeGridFunctionSpaceBase< GridFunctionSpace, GV, B, O, k >::PowerCompositeGridFunctionSpaceBase (const B &backend, const OrderingTag &ordering_tag)
 
template<typename NodeType , bool fast>
void Dune::PDELab::GridViewLocalFunctionSpaceBaseNode< GFS, DOFIndex >::bind (NodeType &node, const typename GridViewLocalFunctionSpaceBaseNode< GFS, DOFIndex >::Traits::Element &e, std::integral_constant< bool, fast >)
 

Variables

static const bool Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::consume_tree_index = false
 
static const bool Dune::PDELab::GridFunctionSpaceTraits< G, L, C, B, O >::isComposite = false
 True if this grid function space is composed of others. More...
 
const static std::size_t Dune::PDELab::PowerCompositeGridFunctionSpaceTraits< G, B, O, k >::CHILDREN = k
 
template<typename CG , typename XG >
void Dune::PDELab::copy_constrained_dofs (const CG &cg, const XG &xgin, XG &xgout)
 
template<typename CG , typename XG >
void Dune::PDELab::set_nonconstrained_dofs (const CG &cg, typename XG::ElementType x, XG &xg)
 
template<typename CG , typename XG >
void Dune::PDELab::copy_nonconstrained_dofs (const CG &cg, const XG &xgin, XG &xgout)
 
template<typename CG , typename XG >
void Dune::PDELab::set_shifted_dofs (const CG &cg, typename XG::ElementType x, XG &xg)
 

Detailed Description

Typedef Documentation

◆ Backend [1/3]

template<typename G , typename B , typename O , std::size_t k>
typedef B Dune::PDELab::PowerCompositeGridFunctionSpaceTraits< G, B, O, k >::Backend

◆ Backend [2/3]

template<typename DFBasis , typename VBE , typename CE >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::Backend = DuneFunctionsCompatibleVBE<VBE>

◆ Backend [3/3]

template<typename G , typename L , typename C , typename B , typename O >
typedef B Dune::PDELab::GridFunctionSpaceTraits< G, L, C, B, O >::Backend

◆ BackendType [1/2]

template<typename G , typename B , typename O , std::size_t k>
typedef B Dune::PDELab::PowerCompositeGridFunctionSpaceTraits< G, B, O, k >::BackendType

vector backend

◆ BackendType [2/2]

template<typename G , typename L , typename C , typename B , typename O >
typedef B Dune::PDELab::GridFunctionSpaceTraits< G, L, C, B, O >::BackendType

vector backend

◆ Basis [1/2]

template<typename DFBasis , typename VBE , typename CE >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::Basis = DFBasis

◆ Basis [2/2]

template<typename DFBasis , typename VBE , typename CE >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Basis = DFBasis

◆ CacheTag

template<typename DFBasis , typename VBE , typename CE >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::CacheTag = DuneFunctionsCacheTag

◆ ConstraintsType [1/2]

template<typename DFBasis , typename VBE , typename CE >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::ConstraintsType = CE

◆ ConstraintsType [2/2]

template<typename G , typename L , typename C , typename B , typename O >
typedef C Dune::PDELab::GridFunctionSpaceTraits< G, L, C, B, O >::ConstraintsType

type representing constraints

◆ ContainerAllocationTag

template<typename DFBasis , typename VBE , typename CE >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::ContainerAllocationTag = FlatContainerAllocationTag

◆ ContainerIndex [1/3]

template<typename DFBasis , typename VBE , typename CE >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::Traits::ContainerIndex = PDELab::MultiIndex<std::size_t,1>

The index to access containers with.

The implementation does not support blocking or other forms of multi-indices yet. Therefore the container index type is always a multi-index with one digit, i.e., an integer.

◆ ContainerIndex [2/3]

template<typename DFBasis , typename VBE , typename CE >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::ContainerIndex = typename Traits::ContainerIndex

◆ ContainerIndex [3/3]

template<typename DFBasis , typename VBE , typename CE >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::ContainerIndex = typename Traits::ContainerIndex

◆ DefaultLeafOrderingTag

◆ DOFIndex [1/3]

template<typename DFBasis , typename VBE , typename CE >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::Traits::DOFIndex = PDELab::DOFIndex<std::size_t,1,2>

A DOF index that is independent of any ordering.

◆ DOFIndex [2/3]

template<typename DFBasis , typename VBE , typename CE >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::DOFIndex = typename Traits::DOFIndex

◆ DOFIndex [3/3]

template<typename DFBasis , typename VBE , typename CE >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::DOFIndex = typename Traits::DOFIndex

◆ DOFIndexAccessor

template<typename DFBasis , typename VBE , typename CE >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::Traits::DOFIndexAccessor = Dune::PDELab::DefaultDOFIndexAccessor

◆ DuneFunctionsCompatibleVBE

template<typename VBE >
using Dune::PDELab::Experimental::DuneFunctionsCompatibleVBE = typedef std::decay_t<decltype(*registerDuneFunctionsCompatibleVBE(std::declval<VBE*>()))>

◆ Element

template<typename GV , typename FEM , typename CE = NoConstraints, typename B = ISTL::VectorBackend<>, typename O = DefaultLeafOrderingTag>
typedef GV::Traits::template Codim<0>::Entity Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::Element

◆ ElementIterator

template<typename GV , typename FEM , typename CE = NoConstraints, typename B = ISTL::VectorBackend<>, typename O = DefaultLeafOrderingTag>
typedef GV::Traits::template Codim<0>::Iterator Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::ElementIterator

◆ EntitySet [1/3]

template<typename G , typename B , typename O , std::size_t k>
using Dune::PDELab::PowerCompositeGridFunctionSpaceTraits< G, B, O, k >::EntitySet = G

◆ EntitySet [2/3]

template<typename DFBasis , typename VBE , typename CE >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::EntitySet = Dune::PDELab::impl::EntitySet<typename DFBasis::GridView>

◆ EntitySet [3/3]

template<typename G , typename L , typename C , typename B , typename O >
using Dune::PDELab::GridFunctionSpaceTraits< G, L, C, B, O >::EntitySet = impl::EntitySet<G>

the entity set of this function space.

◆ FiniteElement [1/2]

template<typename DFBasis , typename VBE , typename CE >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::FEM::Traits::FiniteElement = typename DFBasis::LocalView::Tree::FiniteElement

◆ FiniteElement [2/2]

template<typename G , typename L , typename C , typename B , typename O >
typedef L::Traits::FiniteElementType Dune::PDELab::GridFunctionSpaceTraits< G, L, C, B, O >::FiniteElement

◆ FiniteElementMap [1/2]

template<typename DFBasis , typename VBE , typename CE >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::FiniteElementMap = FEM

◆ FiniteElementMap [2/2]

template<typename G , typename L , typename C , typename B , typename O >
typedef L Dune::PDELab::GridFunctionSpaceTraits< G, L, C, B, O >::FiniteElementMap

finite element map

◆ FiniteElementMapType [1/2]

template<typename DFBasis , typename VBE , typename CE >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::FiniteElementMapType = FEM

◆ FiniteElementMapType [2/2]

template<typename G , typename L , typename C , typename B , typename O >
typedef L Dune::PDELab::GridFunctionSpaceTraits< G, L, C, B, O >::FiniteElementMapType

finite element map

◆ FiniteElementType [1/3]

template<typename DFBasis , typename VBE , typename CE >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::FiniteElementType = typename DFBasis::LocalView::Tree::FiniteElement

◆ FiniteElementType [2/3]

template<typename DFBasis , typename VBE , typename CE >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::FEM::Traits::FiniteElementType = FiniteElement

◆ FiniteElementType [3/3]

template<typename G , typename L , typename C , typename B , typename O >
typedef L::Traits::FiniteElementType Dune::PDELab::GridFunctionSpaceTraits< G, L, C, B, O >::FiniteElementType

finite element

◆ GridFunctionSubSpace

template<typename GFS , typename TreePath >
using Dune::PDELab::GridFunctionSubSpace = typedef gfs::GridFunctionSubSpace<GFS,TreePath>

Non-nesting implementation of GridFunctionSubSpace.

This is the actual implementation of GridFunctionSubSpace. It is based around the idea of performing the mapping from the subspace to the rootspace in a single step using a SubOrdering. As SubOrderings cannot be nested, this class needs some helper functionality that constructs a new GridFunctionSubSpace directly on top of the underlying root GridFunctionSpace if the user attempts to nest GridFunctionSubSpaces. On the other hand, this implementation should render such usage mostly unnecessary, as it is now possible to directly construct a subspace for a given leaf space. If the compiler has support for template aliases, the de-nesting infrastructure will be able to completely remove all traces of nesting, letting the type obtained by nesting two GridFunctionSubSpaces look exactly like the type obtained by constructing a single GridFunctionSubSpace. Alternatively, without template aliases, it is only possible to have the actual implementation be non-nested. In this case, the Dune::PDELab::GridFunctionSubSpace classes will still nest.

Note
This class should always be used as Dune::PDELab::GridFunctionSubSpace. Never attempt to directly use the class Dune::PDELab::gfs::GridFunctionSubSpace!
Template Parameters
GFSThe root GridFunctionSpace.
TreePathPath from the root GridFunctionSpace to the represented subspace.

◆ GridView [1/3]

template<typename G , typename B , typename O , std::size_t k>
using Dune::PDELab::PowerCompositeGridFunctionSpaceTraits< G, B, O, k >::GridView = typename EntitySet::GridView

◆ GridView [2/3]

template<typename DFBasis , typename VBE , typename CE >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::GridView = Dune::PDELab::impl::GridView<typename DFBasis::GridView>

◆ GridView [3/3]

template<typename G , typename L , typename C , typename B , typename O >
using Dune::PDELab::GridFunctionSpaceTraits< G, L, C, B, O >::GridView = impl::GridView<G>

the grid view where grid function is defined upon

◆ GridViewType [1/3]

template<typename G , typename B , typename O , std::size_t k>
using Dune::PDELab::PowerCompositeGridFunctionSpaceTraits< G, B, O, k >::GridViewType = GridView

the grid view where grid function is defined upon

◆ GridViewType [2/3]

template<typename DFBasis , typename VBE , typename CE >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::GridViewType = GridView

◆ GridViewType [3/3]

template<typename G , typename L , typename C , typename B , typename O >
using Dune::PDELab::GridFunctionSpaceTraits< G, L, C, B, O >::GridViewType = GridView

◆ ImplementationTag

template<typename GV , typename FEM , typename CE = NoConstraints, typename B = ISTL::VectorBackend<>, typename O = DefaultLeafOrderingTag>
typedef LeafGridFunctionSpaceTag Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::ImplementationTag

◆ MapperType

template<typename G , typename B , typename O , std::size_t k>
typedef O Dune::PDELab::PowerCompositeGridFunctionSpaceTraits< G, B, O, k >::MapperType

mapper

◆ Ordering

template<typename GV , typename FEM , typename CE = NoConstraints, typename B = ISTL::VectorBackend<>, typename O = DefaultLeafOrderingTag>
typedef ordering_transformation::Type Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::Ordering

◆ OrderingTag [1/4]

template<typename G , typename B , typename O , std::size_t k>
typedef O Dune::PDELab::PowerCompositeGridFunctionSpaceTraits< G, B, O, k >::OrderingTag

◆ OrderingTag [2/4]

template<typename GridFunctionSpace , typename GV , typename B , typename O , std::size_t k>
typedef O Dune::PDELab::PowerCompositeGridFunctionSpaceBase< GridFunctionSpace, GV, B, O, k >::OrderingTag

◆ OrderingTag [3/4]

template<typename G , typename L , typename C , typename B , typename O >
typedef O Dune::PDELab::GridFunctionSpaceTraits< G, L, C, B, O >::OrderingTag

tag describing the ordering.

The tag type may contain additional constants and typedefs to control the behavior of the created ordering.

◆ OrderingTag [4/4]

template<typename GV , typename FEM , typename CE = NoConstraints, typename B = ISTL::VectorBackend<>, typename O = DefaultLeafOrderingTag>
typedef O Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::OrderingTag

◆ size_type [1/4]

template<typename DFBasis , typename VBE , typename CE >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::size_type = std::size_t

◆ size_type [2/4]

template<typename DFBasis , typename VBE , typename CE >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::Traits::size_type = std::size_t

◆ size_type [3/4]

template<typename DFBasis , typename VBE , typename CE >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::size_type = std::size_t

◆ size_type [4/4]

template<typename DFBasis , typename VBE , typename CE >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::size_type = std::size_t

◆ SizeTag

template<typename GV , typename FEM , typename CE = NoConstraints, typename B = ISTL::VectorBackend<>, typename O = DefaultLeafOrderingTag>
typedef O Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::SizeTag

◆ SizeType [1/4]

template<typename G , typename B , typename O , std::size_t k>
typedef B::size_type Dune::PDELab::PowerCompositeGridFunctionSpaceTraits< G, B, O, k >::SizeType

short cut for size type exported by Backend

◆ SizeType [2/4]

template<typename DFBasis , typename VBE , typename CE >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::SizeType = size_type

◆ SizeType [3/4]

template<typename G , typename L , typename C , typename B , typename O >
typedef B::size_type Dune::PDELab::GridFunctionSpaceTraits< G, L, C, B, O >::SizeType

short cut for size type exported by Backend

◆ SizeType [4/4]

template<typename DFBasis , typename VBE , typename CE >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::Traits::SizeType = size_type

◆ Traits [1/4]

template<typename GridFunctionSpace , typename GV , typename B , typename O , std::size_t k>
typedef PowerCompositeGridFunctionSpaceTraits<GV,B,O,k> Dune::PDELab::PowerCompositeGridFunctionSpaceBase< GridFunctionSpace, GV, B, O, k >::Traits

export traits class

◆ Traits [2/4]

template<typename GFS , typename GFSTraits >
typedef GFSTraits Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::Traits

◆ Traits [3/4]

template<typename GV , typename FEM , typename CE = NoConstraints, typename B = ISTL::VectorBackend<>, typename O = DefaultLeafOrderingTag>
typedef GridFunctionSpaceTraits<GV,FEM,CE,B,O> Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::Traits

export Traits class

◆ Traits [4/4]

template<typename DFBasis , typename VBE , typename CE >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::Traits = typename LeafOrdering::Traits

◆ Type [1/2]

template<typename GV , typename FEM , typename CE = NoConstraints, typename B = ISTL::VectorBackend<>, typename O = DefaultLeafOrderingTag>
template<typename E >
typedef std::conditional< std::is_same< CE, NoConstraints >::value, EmptyTransformation, ConstraintsTransformation<typename Ordering::Traits::DOFIndex,typename Ordering::Traits::ContainerIndex,E> >::type Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::ConstraintsContainer< E >::Type

define Type as the Type of a container of E's

◆ Type [2/2]

template<typename DFBasis , typename VBE , typename CE >
template<typename E >
using Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::ConstraintsContainer< E >::Type = std::conditional_t< std::is_same< CE, NoConstraints >::value, EmptyTransformation, ConstraintsTransformation<typename Ordering::Traits::DOFIndex,typename Ordering::Traits::ContainerIndex,E> >

define Type as the Type of a container of E's

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
doBoundary 

◆ anonymous enum

anonymous enum
Enumerator
doProcessor 

◆ anonymous enum

anonymous enum
Enumerator
doSkeleton 

◆ anonymous enum

anonymous enum
Enumerator
doVolume 

◆ anonymous enum

template<typename G , typename B , typename O , std::size_t k>
anonymous enum
Enumerator
isComposite 

True if this grid function space is composed of others.

noChilds 

number of child spaces

Function Documentation

◆ backend() [1/2]

template<typename GFS , typename GFSTraits >
Traits::Backend& Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::backend ( )
inline

◆ backend() [2/2]

template<typename GFS , typename GFSTraits >
const Traits::Backend& Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::backend ( ) const
inline

◆ basis()

template<typename DFBasis , typename VBE , typename CE >
const Basis& Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::basis ( ) const
inline

◆ bind()

template<typename GFS , typename DOFIndex >
template<typename NodeType , bool fast>
void Dune::PDELab::GridViewLocalFunctionSpaceBaseNode< GFS, DOFIndex >::bind ( NodeType &  node,
const typename GridViewLocalFunctionSpaceBaseNode< GFS, DOFIndex >::Traits::Element e,
std::integral_constant< bool, fast >   
)

◆ blockCount() [1/3]

template<typename GFS , typename GFSTraits >
Traits::SizeType Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::blockCount ( ) const
inline

◆ blockCount() [2/3]

template<typename DFBasis , typename VBE , typename CE >
size_type Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::blockCount ( ) const
inline

Same as size(), because block size is always 1.

◆ blockCount() [3/3]

template<typename DFBasis , typename VBE , typename CE >
Traits::SizeType Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::blockCount ( ) const
inline

◆ boundary()

template<typename F , typename I , typename LFS , typename T >
void Dune::PDELab::NoConstraints::boundary ( const F &  f,
const IntersectionGeometry< I > &  ig,
const LFS &  lfs,
T &  trafo 
) const
inline

◆ check_constrained_dofs() [1/2]

template<typename CG , typename XG >
bool Dune::PDELab::check_constrained_dofs ( const CG &  cg,
typename XG::ElementType  x,
XG &  xg 
)

check that constrained dofs match a certain value

This just calls check_constrained_dofs(cg, x, xg, cmp) with a default comparison object FloatCmpOps<typename XG::ElementType>().

Template Parameters
CGType of ConstraintsContainer
XGType of coefficients container
Parameters
cgThe ConstraintsContainer
xThe value to compare with
xgThe container with the coefficients
Returns
true if all constrained dofs match the given value, false otherwise.

◆ check_constrained_dofs() [2/2]

template<typename CG , typename XG , typename Cmp >
bool Dune::PDELab::check_constrained_dofs ( const CG &  cg,
typename XG::ElementType  x,
XG &  xg,
const Cmp &  cmp = Cmp() 
)

check that constrained dofs match a certain value

as if they were set by set_constrained_dofs()

Template Parameters
CGType of ConstraintsContainer
XGType of coefficients container
CmpType of Comparison object to use (something with the interface of Dune::FloatCmpOps)
Parameters
cgThe ConstraintsContainer
xThe value to compare with
xgThe container with the coefficients
cmpThe comparison object to use.
Returns
true if all constrained dofs match the given value, false otherwise.

◆ constrain_residual()

template<typename CG , typename XG >
void Dune::PDELab::constrain_residual ( const CG &  cg,
XG &  xg 
)

transform residual into transformed basis: r -> r~

◆ constraints() [1/4]

template<typename GV , typename FEM , typename CE = NoConstraints, typename B = ISTL::VectorBackend<>, typename O = DefaultLeafOrderingTag>
const Traits::ConstraintsType& Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::constraints ( ) const
inline

return constraints engine

◆ constraints() [2/4]

template<typename DFBasis , typename VBE , typename CE >
const Traits::ConstraintsType& Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::constraints ( ) const
inline

return constraints engine

◆ constraints() [3/4]

template<typename GFS , typename CG >
void Dune::PDELab::constraints ( const GFS &  gfs,
CG &  cg,
const bool  verbose = false 
)

construct constraints

Template Parameters
GFSType implementing the model GridFunctionSpace
CGType implementing the model GridFunctionSpace::ConstraintsContainer::Type
Parameters
gfsThe gridfunctionspace
cgThe constraints container
verbosePrint information about the constaints at the end
Examples
recipe-geometry-grid.cc, recipe-linear-system-assembly.cc, recipe-linear-system-solution-istl.cc, recipe-linear-system-solution-pdelab.cc, and recipe-operator-splitting.cc.

◆ constraints() [4/4]

template<typename P , typename GFS , typename CG >
void Dune::PDELab::constraints ( const P &  p,
const GFS &  gfs,
CG &  cg,
const bool  verbose = false 
)

construct constraints from given constraints parameter tree

Template Parameters
PType implementing a constraits parameter tree
GFSType implementing the model GridFunctionSpace
CGType implementing the model GridFunctionSpace::ConstraintsContainer::Type
Parameters
pThe condition parameters
gfsThe gridfunctionspace
cgThe constraints container
verbosePrint information about the constraints at the end
Note
For backwards compatibility you can implement the parameter tree as an Implemention Dune::PDELab::FunctionInterface

◆ constraintsStorage() [1/2]

template<typename GV , typename FEM , typename CE = NoConstraints, typename B = ISTL::VectorBackend<>, typename O = DefaultLeafOrderingTag>
std::shared_ptr<const CE> Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::constraintsStorage ( ) const
inline

return storage of constraints engine

◆ constraintsStorage() [2/2]

template<typename DFBasis , typename VBE , typename CE >
std::shared_ptr<const CE> Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::constraintsStorage ( ) const
inline

return storage of constraints engine

◆ containerIndex()

template<typename DFBasis , typename VBE , typename CE >
ContainerIndex Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::containerIndex ( const DOFIndex i) const
inline

◆ contains() [1/2]

template<typename DFBasis , typename VBE , typename CE >
bool Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::contains ( typename Traits::SizeType  codim) const
inline

True if there is at least one entity of the given codim that has a dof.

◆ contains() [2/2]

template<typename DFBasis , typename VBE , typename CE >
bool Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::contains ( typename Traits::SizeType  codim) const
inline

Returns true if there is at least one entity of the given codim for which data needs to be communicated.

◆ copy_constrained_dofs()

template<typename CG , typename XG >
void Dune::PDELab::copy_constrained_dofs ( const CG &  cg,
const XG &  xgin,
XG &  xgout 
)

Modify coefficient vector based on constrained dofs as given in the constraints container

◆ copy_nonconstrained_dofs()

template<typename CG , typename XG >
void Dune::PDELab::copy_nonconstrained_dofs ( const CG &  cg,
const XG &  xgin,
XG &  xgout 
)
Todo:
reimplement; this is horribly inefficient

◆ entitySet() [1/3]

template<typename GridFunctionSpace , typename GV , typename B , typename O , std::size_t k>
const Traits::EntitySet& Dune::PDELab::PowerCompositeGridFunctionSpaceBase< GridFunctionSpace, GV, B, O, k >::entitySet ( ) const
inline

get grid view partition

◆ entitySet() [2/3]

template<typename GV , typename FEM , typename CE = NoConstraints, typename B = ISTL::VectorBackend<>, typename O = DefaultLeafOrderingTag>
const Traits::EntitySet& Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::entitySet ( ) const
inline

get EntitySet

◆ entitySet() [3/3]

template<typename DFBasis , typename VBE , typename CE >
const Traits::EntitySet& Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::entitySet ( ) const
inline

get EntitySet

◆ extract_entity_indices() [1/2]

template<typename DFBasis , typename VBE , typename CE >
template<typename CIOutIterator , typename DIOutIterator = DummyDOFIndexIterator>
Traits::SizeType Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::extract_entity_indices ( const typename Traits::DOFIndex::EntityIndex &  ei,
typename Traits::SizeType  child_index,
CIOutIterator  ci_out,
const CIOutIterator  ci_end 
) const
inline

◆ extract_entity_indices() [2/2]

template<typename DFBasis , typename VBE , typename CE >
template<typename CIOutIterator , typename DIOutIterator = DummyDOFIndexIterator>
Traits::SizeType Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::extract_entity_indices ( const typename Traits::DOFIndex::EntityIndex entityIndex,
typename Traits::SizeType  child_index,
CIOutIterator  ci_out,
const CIOutIterator  ci_end,
DIOutIterator  dummy 
) const
inline

◆ FEM()

template<typename DFBasis , typename VBE , typename CE >
Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::FEM::FEM ( const std::shared_ptr< DFBasis > &  basis)
inline

◆ find()

template<typename DFBasis , typename VBE , typename CE >
const Traits::FiniteElementType& Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::FEM::find ( const typename GridView::template Codim< 0 >::Entity &  element) const
inline

Get local basis functions for entity.

This method makes a few short-cuts. The problem is that dune-functions bases return LocalFiniteElement objects by value, but the method 'find' here hands them out by reference. Therefore, the FiniteElementMap class has to assume ownership of these objects. In principle they can be different for each element. However, storing a LocalFiniteElement for each element can be very expensive. Therefore, we make the simplifying assumption that the basis is such that the LocalFiniteElement type can be inferred from the GeometryType of the element alone. This will work for many interesting case, but it will fail, for example, for p-adaptive or XFEM-type bases.

◆ finiteElementMap() [1/2]

template<typename GV , typename FEM , typename CE = NoConstraints, typename B = ISTL::VectorBackend<>, typename O = DefaultLeafOrderingTag>
const FEM& Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::finiteElementMap ( ) const
inline

get finite element map

◆ finiteElementMap() [2/2]

template<typename DFBasis , typename VBE , typename CE >
const auto& Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::finiteElementMap ( ) const
inline

get finite element map

◆ finiteElementMapStorage()

template<typename GV , typename FEM , typename CE = NoConstraints, typename B = ISTL::VectorBackend<>, typename O = DefaultLeafOrderingTag>
std::shared_ptr<const FEM> Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::finiteElementMapStorage ( ) const
inline

get finite element map

◆ fixedSize() [1/2]

template<typename DFBasis , typename VBE , typename CE >
bool Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::fixedSize ( typename Traits::SizeType  codim) const
inline

True if all entities of the given codimension have the same number of dofs.

◆ fixedSize() [2/2]

template<typename DFBasis , typename VBE , typename CE >
bool Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::fixedSize ( typename Traits::SizeType  codim) const
inline

True if for all entities of the given codim the same number of data items has to be communicated.

◆ globalSize() [1/2]

template<typename GFS , typename GFSTraits >
Traits::SizeType Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::globalSize ( ) const
inline

◆ globalSize() [2/2]

template<typename DFBasis , typename VBE , typename CE >
Traits::SizeType Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::globalSize ( ) const
inline

◆ GridFunctionSpace() [1/10]

template<typename GV , typename FEM , typename CE = NoConstraints, typename B = ISTL::VectorBackend<>, typename O = DefaultLeafOrderingTag>
Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::GridFunctionSpace ( const typename Traits::EntitySet entitySet,
const FEM &  fem,
const B &  backend = B(),
const OrderingTag ordering_tag = OrderingTag() 
)
inline

constructor

◆ GridFunctionSpace() [2/10]

template<typename GV , typename FEM , typename CE = NoConstraints, typename B = ISTL::VectorBackend<>, typename O = DefaultLeafOrderingTag>
Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::GridFunctionSpace ( const typename Traits::EntitySet entitySet,
const FEM &  fem,
const CE &  ce,
const B &  backend = B(),
const OrderingTag ordering_tag = OrderingTag() 
)
inline

constructor

◆ GridFunctionSpace() [3/10]

template<typename GV , typename FEM , typename CE = NoConstraints, typename B = ISTL::VectorBackend<>, typename O = DefaultLeafOrderingTag>
Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::GridFunctionSpace ( const typename Traits::EntitySet entitySet,
const std::shared_ptr< const FEM > &  fem,
const B &  backend = B(),
const OrderingTag ordering_tag = OrderingTag() 
)
inline

constructor

◆ GridFunctionSpace() [4/10]

template<typename GV , typename FEM , typename CE = NoConstraints, typename B = ISTL::VectorBackend<>, typename O = DefaultLeafOrderingTag>
Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::GridFunctionSpace ( const typename Traits::EntitySet entitySet,
const std::shared_ptr< const FEM > &  fem,
const std::shared_ptr< const CE > &  ce,
const B &  backend = B(),
const OrderingTag ordering_tag = OrderingTag() 
)
inline

constructor

◆ GridFunctionSpace() [5/10]

template<typename GV , typename FEM , typename CE = NoConstraints, typename B = ISTL::VectorBackend<>, typename O = DefaultLeafOrderingTag>
Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::GridFunctionSpace ( const typename Traits::GridView gridview,
const FEM &  fem,
const B &  backend = B(),
const OrderingTag ordering_tag = OrderingTag() 
)
inline

constructor

◆ GridFunctionSpace() [6/10]

template<typename GV , typename FEM , typename CE = NoConstraints, typename B = ISTL::VectorBackend<>, typename O = DefaultLeafOrderingTag>
Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::GridFunctionSpace ( const typename Traits::GridView gridview,
const FEM &  fem,
const CE &  ce,
const B &  backend = B(),
const OrderingTag ordering_tag = OrderingTag() 
)
inline

constructor

◆ GridFunctionSpace() [7/10]

template<typename GV , typename FEM , typename CE = NoConstraints, typename B = ISTL::VectorBackend<>, typename O = DefaultLeafOrderingTag>
Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::GridFunctionSpace ( const typename Traits::GridView gridview,
const std::shared_ptr< const FEM > &  fem,
const B &  backend = B(),
const OrderingTag ordering_tag = OrderingTag() 
)
inline

constructor

◆ GridFunctionSpace() [8/10]

template<typename GV , typename FEM , typename CE = NoConstraints, typename B = ISTL::VectorBackend<>, typename O = DefaultLeafOrderingTag>
Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::GridFunctionSpace ( const typename Traits::GridView gridview,
const std::shared_ptr< const FEM > &  fem,
const std::shared_ptr< const CE > &  ce,
const B &  backend = B(),
const OrderingTag ordering_tag = OrderingTag() 
)
inline

constructor

◆ GridFunctionSpace() [9/10]

template<typename DFBasis , typename VBE , typename CE >
Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::GridFunctionSpace ( std::shared_ptr< DFBasis >  df_basis)
inline

◆ GridFunctionSpace() [10/10]

template<typename DFBasis , typename VBE , typename CE >
Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::GridFunctionSpace ( std::shared_ptr< DFBasis >  df_basis,
std::shared_ptr< CE >  ce 
)
inline

constructor

◆ GridFunctionSpaceBase()

template<typename GFS , typename GFSTraits >
template<typename Backend_ , typename OrderingTag_ >
Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::GridFunctionSpaceBase ( Backend_ &&  backend,
OrderingTag_ &&  ordering_tag 
)
inline

◆ gridView() [1/3]

template<typename GridFunctionSpace , typename GV , typename B , typename O , std::size_t k>
const Traits::GridView& Dune::PDELab::PowerCompositeGridFunctionSpaceBase< GridFunctionSpace, GV, B, O, k >::gridView ( ) const
inline

get grid view

◆ gridView() [2/3]

template<typename GV , typename FEM , typename CE = NoConstraints, typename B = ISTL::VectorBackend<>, typename O = DefaultLeafOrderingTag>
const Traits::GridView& Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::gridView ( ) const
inline

get grid view

◆ gridView() [3/3]

template<typename DFBasis , typename VBE , typename CE >
const Traits::GridView& Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::gridView ( ) const
inline

get grid view

◆ interpolate()

template<typename F , typename GFS , typename XG >
void Dune::PDELab::interpolate ( const F &  f,
const GFS &  gfs,
XG &  xg 
)

interpolation from a given grid function

   \code

#include <dune/pdelab/gridfunctionspace/interpolate.hh>

Parameters
fFunction to interpolate from.
gfsGridFunctionSpace to use for interpoaltion.
xgGlobal vector of dofs to interpolate into.
Note
xg needs to be initialized to the correct size, but there is no need to initialize its contents.
Examples
recipe-geometry-grid.cc, recipe-linear-system-assembly.cc, recipe-linear-system-solution-istl.cc, recipe-linear-system-solution-pdelab.cc, and recipe-operator-splitting.cc.

◆ isRootSpace() [1/2]

template<typename GFS , typename GFSTraits >
bool Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::isRootSpace ( ) const
inline

◆ isRootSpace() [2/2]

template<typename DFBasis , typename VBE , typename CE >
bool Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::isRootSpace ( ) const
inline

◆ LeafOrdering()

template<typename DFBasis , typename VBE , typename CE >
Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::LeafOrdering ( const GridFunctionSpace gfs)
inline

◆ maxLocalSize() [1/4]

template<typename GFS , typename GFSTraits >
Traits::SizeType Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::maxLocalSize ( ) const
inline

get max dimension of shape function space

◆ maxLocalSize() [2/4]

template<typename DFBasis , typename VBE , typename CE >
size_type Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::maxLocalSize ( ) const
inline

◆ maxLocalSize() [3/4]

template<typename DFBasis , typename VBE , typename CE >
size_type Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::maxLocalSize ( ) const
inline

◆ maxLocalSize() [4/4]

template<typename DFBasis , typename VBE , typename CE >
Traits::SizeType Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::maxLocalSize ( ) const
inline

◆ name() [1/4]

template<typename GFS , typename GFSTraits >
const std::string& Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::name ( ) const
inline

◆ name() [2/4]

template<typename DFBasis , typename VBE , typename CE >
const std::string& Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::name ( ) const
inline

◆ name() [3/4]

template<typename GFS , typename GFSTraits >
void Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::name ( const std::string &  name)
inline

◆ name() [4/4]

template<typename DFBasis , typename VBE , typename CE >
void Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::name ( const std::string &  name)
inline

◆ ordering() [1/3]

template<typename GV , typename FEM , typename CE = NoConstraints, typename B = ISTL::VectorBackend<>, typename O = DefaultLeafOrderingTag>
Ordering& Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::ordering ( )
inline

Direct access to the DOF ordering.

◆ ordering() [2/3]

template<typename GV , typename FEM , typename CE = NoConstraints, typename B = ISTL::VectorBackend<>, typename O = DefaultLeafOrderingTag>
const Ordering& Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::ordering ( ) const
inline

Direct access to the DOF ordering.

◆ ordering() [3/3]

template<typename DFBasis , typename VBE , typename CE >
const Ordering& Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::ordering ( ) const
inline

Direct access to the DOF ordering.

◆ Ordering()

template<typename DFBasis , typename VBE , typename CE >
Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::Ordering ( const GridFunctionSpace gfs)
inline

◆ orderingStorage() [1/2]

template<typename GV , typename FEM , typename CE = NoConstraints, typename B = ISTL::VectorBackend<>, typename O = DefaultLeafOrderingTag>
std::shared_ptr<Ordering> Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::orderingStorage ( )
inline

Direct access to the storage of the DOF ordering.

◆ orderingStorage() [2/2]

template<typename GV , typename FEM , typename CE = NoConstraints, typename B = ISTL::VectorBackend<>, typename O = DefaultLeafOrderingTag>
std::shared_ptr<const Ordering> Dune::PDELab::GridFunctionSpace< GV, FEM, CE, B, O >::orderingStorage ( ) const
inline

Direct access to the storage of the DOF ordering.

◆ orderingTag() [1/2]

template<typename GFS , typename GFSTraits >
Traits::OrderingTag& Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::orderingTag ( )
inline

◆ orderingTag() [2/2]

template<typename GFS , typename GFSTraits >
const Traits::OrderingTag& Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::orderingTag ( ) const
inline

◆ PowerCompositeGridFunctionSpaceBase()

template<typename GridFunctionSpace , typename GV , typename B , typename O , std::size_t k>
Dune::PDELab::PowerCompositeGridFunctionSpaceBase< GridFunctionSpace, GV, B, O, k >::PowerCompositeGridFunctionSpaceBase ( const B &  backend,
const OrderingTag ordering_tag 
)
inline

◆ processor()

template<typename I , typename LFS , typename T >
void Dune::PDELab::NoConstraints::processor ( const IntersectionGeometry< I > &  ig,
const LFS &  lfs,
T &  trafo 
) const
inline

◆ registerDuneFunctionsCompatibleVBE() [1/2]

template<std::size_t block_size>
ISTL::SimpleVectorBackend<(block_size > 0 ? block_size : 1)>* Dune::PDELab::Experimental::registerDuneFunctionsCompatibleVBE ( ISTL::VectorBackend< ISTL::Blocking::none, block_size > *  )

◆ registerDuneFunctionsCompatibleVBE() [2/2]

template<typename VBE >
VBE* Dune::PDELab::Experimental::registerDuneFunctionsCompatibleVBE ( VBE *  )

◆ registerNodeTransformation() [1/3]

template<typename CompositeGridFunctionSpace , typename Params >
TypeTree::TemplatizedGenericCompositeNodeTransformation< CompositeGridFunctionSpace, gfs_to_lfs<Params>, composite_gfs_to_lfs_template<CompositeGridFunctionSpace,gfs_to_lfs<Params> >::template result > Dune::PDELab::registerNodeTransformation ( CompositeGridFunctionSpace cgfs,
gfs_to_lfs< Params > *  t,
CompositeGridFunctionSpaceTag tag 
)

◆ registerNodeTransformation() [2/3]

template<typename GridFunctionSpace , typename Params >
TypeTree::GenericLeafNodeTransformation< GridFunctionSpace, gfs_to_lfs<Params>, LeafLocalFunctionSpaceNode<GridFunctionSpace,typename gfs_to_lfs<Params>::DOFIndex> > Dune::PDELab::registerNodeTransformation ( GridFunctionSpace gfs,
gfs_to_lfs< Params > *  t,
LeafGridFunctionSpaceTag tag 
)

◆ registerNodeTransformation() [3/3]

template<typename PowerGridFunctionSpace , typename Params >
TypeTree::TemplatizedGenericPowerNodeTransformation< PowerGridFunctionSpace, gfs_to_lfs<Params>, power_gfs_to_lfs_template<PowerGridFunctionSpace,gfs_to_lfs<Params> >::template result > Dune::PDELab::registerNodeTransformation ( PowerGridFunctionSpace pgfs,
gfs_to_lfs< Params > *  t,
PowerGridFunctionSpaceTag tag 
)

◆ set_constrained_dofs()

template<typename CG , typename XG >
void Dune::PDELab::set_constrained_dofs ( const CG &  cg,
typename XG::ElementType  x,
XG &  xg 
)

construct constraints from given boundary condition function

Template Parameters
CGType of ConstraintsContainer
XGType of coefficients container
Parameters
cgThe ConstraintsContainer
xThe value to assign
xgThe container with the coefficients

◆ set_nonconstrained_dofs()

template<typename CG , typename XG >
void Dune::PDELab::set_nonconstrained_dofs ( const CG &  cg,
typename XG::ElementType  x,
XG &  xg 
)
Todo:
reimplement; this is horribly inefficient

◆ set_shifted_dofs()

template<typename CG , typename XG >
void Dune::PDELab::set_shifted_dofs ( const CG &  cg,
typename XG::ElementType  x,
XG &  xg 
)
Todo:
reimplement; this is horribly inefficient

◆ size() [1/5]

template<typename GFS , typename GFSTraits >
Traits::SizeType Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::size ( ) const
inline

◆ size() [2/5]

template<typename DFBasis , typename VBE , typename CE >
size_type Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::size ( ) const
inline

◆ size() [3/5]

template<typename DFBasis , typename VBE , typename CE >
size_type Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::size ( ) const
inline

◆ size() [4/5]

template<typename DFBasis , typename VBE , typename CE >
Traits::SizeType Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::size ( ) const
inline

◆ size() [5/5]

template<typename DFBasis , typename VBE , typename CE >
size_type Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::size ( const typename DOFIndex::EntityIndex entity) const
inline

Number of degrees of freedom per entity.

◆ skeleton()

template<typename I , typename LFS , typename T >
void Dune::PDELab::NoConstraints::skeleton ( const IntersectionGeometry< I > &  ig,
const LFS &  lfs,
T &  trafo 
) const
inline

◆ update() [1/6]

template<typename DFBasis , typename VBE , typename CE >
void Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Traits::FEM::update ( )
inline

◆ update() [2/6]

template<typename DFBasis , typename VBE , typename CE >
void Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::LeafOrdering::update ( )
inline

◆ update() [3/6]

template<typename DFBasis , typename VBE , typename CE >
void Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::update ( )
inline

◆ update() [4/6]

template<typename GFS , typename GFSTraits >
void Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::update ( bool  force = false)
inline

Update the indexing information of the GridFunctionSpace.

\ param force Set to true if the underlying grid has changed (e.g. due to adaptivity) to force an update of the embedded EntitySet.

◆ update() [5/6]

template<typename DFBasis , typename VBE , typename CE >
void Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::update ( bool  force = false)
inline

Update the indexing information of the GridFunctionSpace.

\ param force Set to true if the underlying grid has changed (e.g. due to adaptivity) to force an update of the embedded EntitySet.

◆ update() [6/6]

template<typename GFS , typename GFSTraits >
template<typename Ordering >
void Dune::PDELab::GridFunctionSpaceBase< GFS, GFSTraits >::update ( Ordering &  ordering) const
inlineprotected

◆ volume()

template<typename E , typename LFS , typename T >
void Dune::PDELab::NoConstraints::volume ( const ElementGeometry< E > &  eg,
const LFS &  lfs,
T &  trafo 
) const
inline

Variable Documentation

◆ CHILDREN

template<typename G , typename B , typename O , std::size_t k>
const static std::size_t Dune::PDELab::PowerCompositeGridFunctionSpaceTraits< G, B, O, k >::CHILDREN = k
static

◆ consume_tree_index

template<typename DFBasis , typename VBE , typename CE >
const bool Dune::PDELab::Experimental::GridFunctionSpace< DFBasis, VBE, CE >::Ordering::consume_tree_index = false
static

◆ isComposite

template<typename G , typename L , typename C , typename B , typename O >
const bool Dune::PDELab::GridFunctionSpaceTraits< G, L, C, B, O >::isComposite = false
static

True if this grid function space is composed of others.

constraints.hh