AMDiS  2.10
The Adaptive Multi-Dimensional Simulation Toolbox
Concepts

Concept definitions. More...

Classes

struct  IsSimilar< A, B >
 
struct  IsSimilar< Types< A >, Types< B > >
 
struct  IsSimilar< Types<>, Types<> >
 
struct  IsSimilar< Types< A0, As... >, Types< B0, Bs... > >
 
struct  IsSame< Ts >
 
struct  IsSame< T0, Ts... >
 
struct  IsSame<>
 
struct  IsReferenceWrapper< T >
 
struct  IsReferenceWrapper< std::reference_wrapper< T > >
 

Typedefs

template<class... Ts>
using Same_t = Traits::IsSame< Ts... >
 
template<class A , class B >
using Similar_t = Traits::IsSimilar< A, B >
 
template<class F , class... Args>
using Callable_t = models_t< Definition::Callable(F, Args...)>
 
template<class F , class Signature >
using Functor_t = bool_t< Functor< F, Signature > >
 
template<class F , class... Args>
using Predicate_t = Functor_t< F, bool(Args...)>
 
template<class MI >
using MultiIndex_t = models_t< Definition::MultiIndex(MI)>
 
template<class Range , class Index >
using HasIndexAccess_t = models_t< Dune::Functions::Concept::HasIndexAccess(Range, Index)>
 
template<class N >
using BasisNode_t = models_t< Dune::Functions::Concept::BasisNode(N)>
 
template<class Tree , class GV >
using BasisTree_t = models_t< Dune::Functions::Concept::BasisTree< GV >(Tree)>
 
template<class LV , class GB = typename LV::GlobalBasis>
using LocalView_t = models_t< Dune::Functions::Concept::LocalView< GB >(LV)>
 
template<class GB , class GV = typename GB::GridView>
using GlobalBasis_t = models_t< Dune::Functions::Concept::GlobalBasis< GV >(GB)>
 
template<class PBF , class GV >
using PreBasisFactory_t = models_t< Definition::PreBasisFactory(PBF, GV)>
 
template<class F >
using Polynomial_t = models_t< Definition::Polynomial(F)>
 
template<class GF , class Type >
using HasDerivative_t = models_t< Definition::HasDerivative(GF, Type)>
 
template<class GF , class Type >
using HasLocalFunctionDerivative_t = models_t< Definition::HasLocalFunctionDerivative(GF, Type)>
 
template<class F >
using HasPartial_t = models_t< Definition::HasPartial(F, index_t< 0 >)>
 
template<class GF >
using HasLocalFunction_t = models_t< Definition::HasLocalFunction(GF)>
 
template<class GF >
using GridFunction_t = bool_t< GridFunction< GF > >
 
template<class... GFs>
using AnyGridFunction_t = bool_t< AnyGridFunction< GFs... > >
 
template<class TP >
using PreTreePath_t = bool_t< PreTreePath< TP > >
 

Variables

template<class... Ts>
constexpr bool Same = Traits::IsSame<Ts...>::value
 Types are the same.
 
template<class A , class B >
constexpr bool Similar = Traits::IsSimilar<A, B>::value
 Types are the same, up to decay of qualifiers.
 
template<class F , class... Args>
constexpr bool Callable = models<Definition::Callable(F, Args...)>
 A Collable is a function F that can be called with arguments of type Args.... More...
 
template<class F , class Signature >
constexpr bool Functor = Dune::Functions::Concept::isFunction<F, Signature>()
 A Functor is a function F with signature Signature. More...
 
template<class F , class... Args>
constexpr bool Predicate = Functor<F, bool(Args...)>
 A predicate is a function that returns a boolean.
 
template<class MI >
constexpr bool MultiIndex = models<Definition::MultiIndex(MI)>
 A multi-index type.
 
template<class Range , class Index >
constexpr bool HasIndexAccess = models<Dune::Functions::Concept::HasIndexAccess(Range, Index)>
 A Dune::Functions::HasIndexAccess type.
 
template<class N >
constexpr bool BasisNode = models<Dune::Functions::Concept::BasisNode(N)>
 A Dune::Functions::BasisNode type.
 
template<class Tree , class GV >
constexpr bool BasisTree = models<Dune::Functions::Concept::BasisTree<GV>(Tree)>
 A Dune::Functions::BasisTree type.
 
template<class LV , class GB = typename LV::GlobalBasis>
constexpr bool LocalView = models<Dune::Functions::Concept::LocalView<GB>(LV)>
 A Dune::Functions::LocalView type.
 
template<class GB , class GV = typename GB::GridView>
constexpr bool GlobalBasis = models<Dune::Functions::Concept::GlobalBasis<GV>(GB)>
 A Dune::Functions::GlobalBasis type.
 
template<class PBF , class GV >
constexpr bool PreBasisFactory = models<Definition::PreBasisFactory(PBF,GV)>
 
template<class F >
constexpr bool Polynomial = models<Definition::Polynomial(F)>
 Funcion F has free function order(F)
 
template<class T >
constexpr bool ConstantToGridFunction
 Concepts that is true for all ''simple'' types that can be converted automatically to a GridFunction, e.g. arithmetic types, FieldVectors, and std::reference_wrapper. More...
 
template<class GF , class Type >
constexpr bool HasDerivative = models<Definition::HasDerivative(GF,Type)>
 GridFunction GF has free function derivativeOf(F,type)
 
template<class GF , class Type >
constexpr bool HasLocalFunctionDerivative = models<Definition::HasLocalFunctionDerivative(GF,Type)>
 GridFunction GF has free function derivativeOf(localFunction(F))
 
template<class F >
constexpr bool HasPartial = models<Definition::HasPartial(F,index_t<0>)>
 Functor F has free function partial(F,_0)
 
template<class GF >
constexpr bool HasLocalFunction = models<Definition::HasLocalFunction(GF)>
 GridFunction GF has free function localFunction(GF)
 
template<class GF >
constexpr bool GridFunction
 GridFunction GF is a Type that has LocalFunction and provides some typedefs for Domain, Range, and EntitySet. More...
 
template<class... GFs>
constexpr bool AnyGridFunction
 Concept is fulfilled, if at least one of the massed Expressions can be converted to a GridFunction, or is already a GridFunction. More...
 
template<class TP >
constexpr bool PreTreePath = Dune::TypeTree::IsTreePath<TP>::value || Definition::IsPreTreePath<TP>::value
 

Detailed Description

Concept definitions.

Variable Documentation

◆ AnyGridFunction

constexpr bool AnyGridFunction
Initial value:
=
(GridFunction<remove_cvref_t<GFs>> ||...) ||
(Traits::IsPreGridFunction<remove_cvref_t<GFs>>::value ||...)

Concept is fulfilled, if at least one of the massed Expressions can be converted to a GridFunction, or is already a GridFunction.

◆ Callable

constexpr bool Callable = models<Definition::Callable(F, Args...)>

A Collable is a function F that can be called with arguments of type Args....

To be used as follows: Concepts::Collable<F, Args...>. Returns true, if an instance of F can be called by operator() with arguments of type Args....

◆ ConstantToGridFunction

constexpr bool ConstantToGridFunction
Initial value:
=
Definition::ConstantToGridFunction<T>::value

Concepts that is true for all ''simple'' types that can be converted automatically to a GridFunction, e.g. arithmetic types, FieldVectors, and std::reference_wrapper.

◆ Functor

constexpr bool Functor = Dune::Functions::Concept::isFunction<F, Signature>()

A Functor is a function F with signature Signature.

To be used as follows: Concepts::Functor<F, R(Args...)>. Returns true, if an instance of F can be called by operator() with arguments of type Args... and returns a value of type R, i.e. Signature := R(Args...).

Referenced by ProblemStat< Traits >::addDirichletBC(), BoundarySubset< Intersection >::BoundarySubset(), ComposerLocalFunction< R(D), E, Functor, LocalFunctions... >::fct(), ComposerGridFunction< Sig, EntitySet, Functor, GridFunctions >::invokeAtQP(), ComposerGridFunction< R(D), ES, Functor, GridFunctions... >::makeLocalFunction(), BoundaryManager< G >::setBoxBoundary(), and BoundaryManager< G >::setIndicator().

◆ GridFunction

constexpr bool GridFunction
Initial value:
=
HasLocalFunction<GF> && models<Definition::HasGridFunctionTypes(GF)>

GridFunction GF is a Type that has LocalFunction and provides some typedefs for Domain, Range, and EntitySet.

Referenced by DerivativeGridFunction< GridFunction, Type >::entitySet().