On 01/28/2013 10:31 PM, Garth N. Wells wrote: > On 28 January 2013 21:22, Anders Logg <[email protected]> wrote: >> On Mon, Jan 28, 2013 at 10:10:40PM +0100, Johan Hake wrote: >>> Hello! >>> >>> I have now added a method to DofMap, which tabulate a map between >>> vertices and dofs. It will only work for DofMaps with dofs on vertices. >>> So basically for any CG 1 FunctionSpaces and will raise error else wise. >>> >>> Usage: >>> >>> from dolfin import * >>> import numpy as np >>> mesh = UnitSquareMesh(10,10) >>> V = VectorFunctionSpace(mesh, "CG", 1) >>> u = Function(V) >>> u.interpolate(Constant((1,2))) >>> vert_values = np.zeros(mesh.num_vertices()*2) >>> vert_values[V.dofmap().tabulate_vertex_map(mesh)] = \ >>> u.vector().array() >>> print vert_values >>> >>> In parallel the map will follow the local dofs. This means that some >>> values in vert_values above will still be 0. The 0 values will then >>> correspond to vertex values which are owned by another process. >>> >>> In C++ the method returns a std::vector<std::size_t>. >>> >>> Questions: >>> Does the name "tabulate_vertex_map" work? >> >> Sounds ok. >> > > Doesn't mean much to me. Can it be more descriptive?
Because it is a member of dofmap I did not include "dof" in the name. But what with one of: vertex_to_dof_map tabulate_vertex_to_dof_map >>> Should a version of this method exist in other classes. FunctionSpace, >>> Function (without the mesh argument of course)? >> >> Yes, would be good to have for convenience. >> > > I don't see the benefit of spreading it around. It should just belong to > DofMap. I am fine with both. Johan > Garth > >> What is the relation to Function::compute_vertex_values? >> >> -- >> Anders >> >> _______________________________________________ >> Mailing list: https://launchpad.net/~dolfin >> Post to : [email protected] >> Unsubscribe : https://launchpad.net/~dolfin >> More help : https://help.launchpad.net/ListHelp _______________________________________________ Mailing list: https://launchpad.net/~dolfin Post to : [email protected] Unsubscribe : https://launchpad.net/~dolfin More help : https://help.launchpad.net/ListHelp

