Is there a simple way in getfem to map points to convexes, that is: > the interpolation point for each element is the barycenter. So you > can discriminate in wich part of your domain is the point.
Given the particular barycenter, say 'b', do I have to build a list of all barycenters in the beginning, and then search for 'b' in that list? Or is there some already builtin way to go about it. Thanks, -Jehanzeb On Wed, Jul 8, 2009 at 4:50 AM, Yves Renard<[email protected]> wrote: > On mardi 7 juillet 2009, Jehanzeb Hameed wrote: >> Hello, >> >> In laplacian.cc "getfem::classical_fem(pgt,0))" is used to represent >> the fem space for coefficient function (mf_coef). This coefficient >> function is constant on each convex. It is not used in laplacian.cc, >> and is set to one by creating a vector ones ( >> std::vector<scalar_type>(mf_coef.nb_dof(), 1.0) ). >> >> Now say, I want to this coefficient to be piecewise constant, that is >> constant on each of (say two) subdomains. It seems I cant use >> interpolation for it, as interpolation functions use coordinates of >> points, and dont seem to indicate which convex they come from. > > Indeed you can. If you represent your coefficient on a P0 method (piecewise > constant), the interpolation point for each element is the barycenter. So you > can discriminate in wich part of your domain is the point. If you want to > fill the corresponding vector by hand, you can use the method > mf.point_of_dof(i) for the P0 method which will give you the coordinates of > the corresponding barycenter. Otherwise, you can also use the interpolation > functions. > > Yves. > >> One way >> I can think of doing it, is to loop for mesh convexes, look up which >> region the convex belongs to, and then set the corresponding entry in >> the coefficient vector. However I am not sure if this is the way to >> go, as numbering of convexes in the mesh may not correspond to >> numbering of dof's of the vector passed as data for assembly. >> >> Is the above method the one to use, or is there a more elegant way around >> this? >> >> Thanks, >> -Jehanzeb >> >> _______________________________________________ >> Getfem-users mailing list >> [email protected] >> https://mail.gna.org/listinfo/getfem-users > > > > -- > > Yves Renard ([email protected]) tel : (33) 04.72.43.87.08 > Pole de Mathematiques, INSA-Lyon fax : (33) 04.72.43.85.29 > 20, rue Albert Einstein > 69621 Villeurbanne Cedex, FRANCE > http://math.univ-lyon1.fr/~renard > > --------- > _______________________________________________ Getfem-users mailing list [email protected] https://mail.gna.org/listinfo/getfem-users
