4 #ifndef DUNE_PDELAB_FUNCTION_MEMBERADAPTOR_HH
5 #define DUNE_PDELAB_FUNCTION_MEMBERADAPTOR_HH
9 #include <dune/common/fvector.hh>
31 template<
class Member,
class Class,
32 class GV,
class RF, std::size_t dimR = 1>
35 GridFunctionTraits< GV, RF, dimR, FieldVector<RF, dimR> >,
36 MemberFunctionToGridFunctionAdaptor<Member, Class, GV, RF, dimR>
65 obj(obj_), member(member_), gv(gv_)
72 (obj.*member)(e, x, y);
90 template<
class RF, std::size_t dimRange,
91 class GV,
class Class,
class Member>
92 MemberFunctionToGridFunctionAdaptor<Member, Class, GV, RF, dimRange>
97 <Member, Class, GV, RF, dimRange>(obj, member, gv);
116 template<
class Member,
class Class,
117 class GV,
class RF, std::size_t dimR = 1>
120 GridFunctionTraits< GV, RF, dimR, FieldVector<RF, dimR> >,
121 TwoArgsMemberFunctionToGridFunctionAdaptor<Member, Class, GV, RF, dimR>
151 obj(obj_), member(member_), gv(gv_)
158 y = (obj.*member)(e, x);
176 template<
class RF, std::size_t dimRange,
177 class GV,
class Class,
class Member>
178 TwoArgsMemberFunctionToGridFunctionAdaptor<Member, Class, GV, RF,
185 <Member, Class, GV, RF, dimRange>(obj, member, gv);
204 template<
class Member,
class Class,
205 class GV,
class RF, std::size_t dimR = 1>
208 BoundaryGridFunctionTraits< GV, RF, dimR, FieldVector<RF, dimR> >,
209 TwoArgsMemberFunctionToBoundaryGridFunctionAdaptor<Member, Class, GV,
242 obj(obj_), member(member_), gv(gv_)
245 template<
typename Intersection>
250 y = (obj.*member)(is, x);
269 template<
class RF, std::size_t dimRange,
270 class GV,
class Class,
class Member>
271 TwoArgsMemberFunctionToBoundaryGridFunctionAdaptor<Member, Class, GV, RF,
278 <Member, Class, GV, RF, dimRange>(obj, member, gv);
284 #endif // DUNE_PDELAB_FUNCTION_MEMBERADAPTOR_HH
void evaluate(const typename Traits::ElementType &e, const typename Traits::DomainType &x, typename Traits::RangeType &y) const
Definition: memberadaptor.hh:68
GridFunction implemented by a member function of some class.
Definition: memberadaptor.hh:33
MemberFunctionToGridFunctionAdaptor< Member, Class, GV, RF, dimRange > makeMemberFunctionToGridFunctionAdaptor(const Class &obj, Member member, const GV &gv)
easy construction of a MemberFunctionToGridFunctionAdaptor
Definition: memberadaptor.hh:93
GridFunction implemented by a member function of some class.
Definition: memberadaptor.hh:118
GV::Traits::template Codim< 0 >::Entity ElementType
codim 0 entity
Definition: function.hh:118
BoundaryGridFunctionTraits< GV, RF, dimR, FieldVector< RF, dimR > > Traits
export traits class
Definition: memberadaptor.hh:216
void evaluate(const typename Traits::ElementType &e, const typename Traits::DomainType &x, typename Traits::RangeType &y) const
Definition: memberadaptor.hh:154
TwoArgsMemberFunctionToGridFunctionAdaptor(const Class &obj_, Member member_, const GV &gv_)
Construct an adaptor object.
Definition: memberadaptor.hh:148
const GV & getGridView() const
get reference to the internal gridview.
Definition: memberadaptor.hh:162
Dune::FieldVector< GV::Grid::ctype, GV::dimension > DomainType
domain type in dim-size coordinates
Definition: function.hh:49
void evaluate(const Intersection &is, const typename Traits::DomainType &x, typename Traits::RangeType &y) const
Definition: memberadaptor.hh:246
MemberFunctionToGridFunctionAdaptor(const Class &obj_, Member member_, const GV &gv_)
Construct an adaptor object.
Definition: memberadaptor.hh:63
TwoArgsMemberFunctionToGridFunctionAdaptor< Member, Class, GV, RF, dimRange > makeTwoArgsMemberFunctionToGridFunctionAdaptor(const Class &obj, Member member, const GV &gv)
easy construction of a TwoArgsMemberFunctionToGridFunctionAdaptor
Definition: memberadaptor.hh:180
R RangeType
range type
Definition: function.hh:61
TwoArgsMemberFunctionToBoundaryGridFunctionAdaptor(const Class &obj_, Member member_, const GV &gv_)
Construct an adaptor object.
Definition: memberadaptor.hh:239
leaf of a function tree
Definition: function.hh:577
GridFunctionTraits< GV, RF, dimR, FieldVector< RF, dimR > > Traits
export traits class
Definition: memberadaptor.hh:41
const GV & getGridView() const
get reference to the internal gridview.
Definition: memberadaptor.hh:76
leaf of a function tree
Definition: function.hh:597
traits class holding the function signature, same as in local function
Definition: function.hh:176
traits class holding function signature, same as in local function
Definition: function.hh:231
GridFunctionTraits< GV, RF, dimR, FieldVector< RF, dimR > > Traits
export traits class
Definition: memberadaptor.hh:126
const GV & getGridView() const
get reference to the internal gridview.
Definition: memberadaptor.hh:254
TwoArgsMemberFunctionToBoundaryGridFunctionAdaptor< Member, Class, GV, RF, dimRange > make2ArgsMemberFunctionToBoundaryGridFunctionAdaptor(const Class &obj, Member member, const GV &gv)
easy construction of a TwoArgsMemberFunctionToBoundaryGridFunctionAdaptor
Definition: memberadaptor.hh:273
const E & e
Definition: interpolate.hh:172
BoundaryGridFunction implemented by a member function of some class.
Definition: memberadaptor.hh:206