Class template Dune::GDT::SpaceInterface

template<class GV, size_t r, size_t rC, class R>
class Dune::GDT::SpaceInterface

Interface for discrete function spaces, providing grid view, mapper, basis, finite elements and functionality for adaptation and parallel communication.

virtual ThisType *Dune::GDT::SpaceInterface::copy() const = 0

No documentation provided.

virtual const GridViewType &Dune::GDT::SpaceInterface::grid_view() const = 0

\ {

These methods provide most functionality, they have to be implemented.

virtual const MapperType &Dune::GDT::SpaceInterface::mapper() const = 0

No documentation provided.

virtual const LocalFiniteElementFamilyType &Dune::GDT::SpaceInterface::finite_elements() const = 0

No documentation provided.

virtual const GlobalBasisType &Dune::GDT::SpaceInterface::basis() const = 0

No documentation provided.

virtual SpaceType Dune::GDT::SpaceInterface::type() const = 0

\ }

These methods help to identify the space, they have to be implemented.

\ {

virtual int Dune::GDT::SpaceInterface::min_polorder() const = 0

No documentation provided.

virtual int Dune::GDT::SpaceInterface::max_polorder() const = 0

No documentation provided.

virtual bool Dune::GDT::SpaceInterface::continuous(const int diff_order) const = 0

To query if elements of this space (functions) are continuous (i.e., in C^0), use continuous(0).

virtual bool Dune::GDT::SpaceInterface::continuous_normal_components() const = 0

No documentation provided.

virtual bool Dune::GDT::SpaceInterface::is_lagrangian() const = 0

If this returns true, every FE provided by local_finite_elements() is expected to provide lagrange_points().

virtual void Dune::GDT::SpaceInterface::restrict_to(const int &element, int) const

Computes an L^2 projection of the data defined on the finer elements, on the domain covered by the coarser element.

Warning

This implementation only makes sense if the evaluation of the global basis coincides with the evaluation of the finite elements basis.

Note

Override this method if this is not the correct choice for the space in question!

void Dune::GDT::SpaceInterface::pre_adapt()

No documentation provided.

virtual void Dune::GDT::SpaceInterface::update_after_adapt()

Note

Ensure in derived classes that the basis, mapper and communicator are updated!

virtual void Dune::GDT::SpaceInterface::adapt()

No documentation provided.

void Dune::GDT::SpaceInterface::post_adapt()

No documentation provided.

virtual void Dune::GDT::SpaceInterface::prolong_onto(const int &element, const int) const

Computes a prolongation using the interpolation of the finite_element().

Warning

This implementation only makes sense if the evaluation of the global basis coincides with the evaluation of the finite elements basis.

Note

Override this method if this is not the correct choice for the space in question.

const int &Dune::GDT::SpaceInterface::dof_communicator() const
void Dune::GDT::SpaceInterface::create_communicator()

\ }

template<>
Dune::GDT::SpaceInterface::SpaceInterface<GV, r, rC, R>(const std::string &logging_prefix = <recovery-expr>(""), const std::array<bool, 3> &logging_state = <recovery-expr>())

No documentation provided.

template<>
Dune::GDT::SpaceInterface::SpaceInterface<GV, r, rC, R>(const ThisType &other) = default

No documentation provided.

template<>
Dune::GDT::SpaceInterface::SpaceInterface<GV, r, rC, R>(ThisType &&source) noexcept = default

No documentation provided.

template<>
virtual ~SpaceInterface<GridView, range_dim, range_dim_columns, RangeField>() = default

No documentation provided.

int Dune::GDT::SpaceInterface::dof_communicator_

No documentation provided.

bool Dune::GDT::SpaceInterface::adapted_

No documentation provided.

const size_t Dune::GDT::SpaceInterface::d

No documentation provided.

const size_t Dune::GDT::SpaceInterface::r

No documentation provided.

const size_t Dune::GDT::SpaceInterface::rC

No documentation provided.

type Dune::GDT::SpaceInterface::ThisType

No documentation provided.

type Dune::GDT::SpaceInterface::Logger

No documentation provided.

type Dune::GDT::SpaceInterface::GridViewType

No documentation provided.

type Dune::GDT::SpaceInterface::GV

No documentation provided.

type Dune::GDT::SpaceInterface::GridType

No documentation provided.

type Dune::GDT::SpaceInterface::G

No documentation provided.

type Dune::GDT::SpaceInterface::D

No documentation provided.

type Dune::GDT::SpaceInterface::R

No documentation provided.

type Dune::GDT::SpaceInterface::GlobalBasisType

No documentation provided.

type Dune::GDT::SpaceInterface::LocalFiniteElementFamilyType

No documentation provided.

type Dune::GDT::SpaceInterface::MapperType

No documentation provided.

template<class V>
bool Dune::GDT::SpaceInterface::contains(const int &vector) const
template<class V>
bool Dune::GDT::SpaceInterface::contains(const ConstDiscreteFunction<V, GV, r, rC, R> &function) const

Note

A return value of true cannot be ultimately trusted yet.

See also: https://github.com/dune-community/dune-gdt/issues/123