[Dune] Extract coordinate of a point

Agnese, Marco m.agnese13 at imperial.ac.uk
Fri May 23 15:40:02 CEST 2014


Hello Christian,
thank you for the answer. That is what I was doing but it complains when I compile.
My grid is a wrapped one 

typedef GeometryGrid<HostGridType,GridDeformationType> WrappedGridType;

where GridDeformationType is a class with this signature

class VertexFunction:public DiscreteCoordFunction<typename HostGridImp::ctype,WORLDDIM,VertexFunction<HostGridImp>; 

which represent the position of my vertices. In the class VertexFunction I implemented the method  

template<class RangeVector>
void evaluate(const EntityType& entity,unsigned int corner,RangeVector& y) const;

to extract the vertices.

When I try to call

it->geometry().corner(0);

I have the following error

 error: no matching function for call to ‘Dune::Fem::VertexFunction<Dune::AlbertaGrid<1, 2> >::evaluate(const Dune::Entity<1, 1, const Dune::AlbertaGrid<1, 2>, Dune::AlbertaGridEntity>&, unsigned int&, Dune::DiscreteCoordFunctionInterface<double, 2u, Dune::Fem::VertexFunction<Dune::AlbertaGrid<1, 2> > >::RangeVector&) const’
       asImp().evaluate( hostEntity, corner, y );

note: candidate is:
In file included from dynamicgridwrapper.hh:8:0,
                 from dune_dynamic_grid.cc:15:
vertexfunction.hh:75:17: note: template<class RangeVector> void Dune::Fem::VertexFunction<HostGridImp>::evaluate(const EntityType&, unsigned int, RangeVector&) const [with RangeVector = RangeVector; HostGridImp = Dune::AlbertaGrid<1, 2>]
     inline void evaluate(const EntityType& entity,unsigned int corner,RangeVector& y) const{

note:   cannot convert ‘hostEntity’ (type ‘const Dune::Entity<1, 1, const Dune::AlbertaGrid<1, 2>, Dune::AlbertaGridEntity>’) to type ‘const EntityType& {aka const Dune::Entity<0, 1, const Dune::AlbertaGrid<1, 2>, Dune::AlbertaGridEntity>&}’
       asImp().evaluate( hostEntity, corner, y );

When I use with intersection iterator everything works fine. I do not understand what I am doing wrong.
Thank you,
Marco.

________________________________________
From: christi at wg20.mathe-macht-spass.de [christi at wg20.mathe-macht-spass.de] on behalf of Christian Engwer [christian.engwer at uni-muenster.de]
Sent: Friday, May 23, 2014 2:26 PM
To: Agnese, Marco
Cc: dune at dune-project.org
Subject: Re: [Dune] Extract coordinate of a point

On Fri, May 23, 2014 at 01:24:59PM +0000, Agnese, Marco wrote:
> Hello DUNErs,
> a very quick question.
> I have an iterator over the points of the leaf view:
> typename LeafViewType::template Codim<GRIDDIM>::Iterator it;
> how can I extract the coordinates of the point?

it->geometry().corner(0);

Ciao
Christian

>
> Thank you,
> Marco.
> _______________________________________________
> Dune mailing list
> Dune at dune-project.org
> http://lists.dune-project.org/mailman/listinfo/dune
>

--
Prof. Dr. Christian Engwer
Institut für Numerische und Angewandte Mathematik
Fachbereich Mathematik und Informatik der Universität Münster
Einsteinstrasse 62
48149 Münster

E-Mail  christian.engwer at uni-muenster.de
Telefon +49 251 83-35067
FAX             +49 251 83-32729



More information about the Dune mailing list