From: Yujie <rec...@gm...> - 2007-09-09 21:24:17
|
Hi, everyone In libmesh package, the MeshBase::prepare_for_use() renumbers the points and elements of the mesh data. From the explanation in the codes, it is used to parallel computation. However, it is difficult to check the simulated data according to the original mesh data. If I want to easily do so, How should I do? In addition, who can further explain about this function for parallel requestion? Its purpose is to improve the computional speed, or other consideration? What factors does the renumbering depend on? METIS may compute fill-reducing orderings of sparse matrices for improving the speed. This renumbering in libmesh is the similar funtion with in METIS? Thanks a lot. Regards, Yujie |
From: Roy S. <roy...@ic...> - 2007-09-10 04:40:37
|
On Sun, 9 Sep 2007, Yujie wrote: > In libmesh package, the MeshBase::prepare_for_use() renumbers the > points and elements of the mesh data. From the explanation in the > codes, it is used to parallel computation. It's mostly important with adaptive meshing; mesh coarsening deletes nodes and elements and leaves "holes" in the internal data structures we use; we simply renumber to leave node and element ids in the same order but make them contiguous again. > However, it is difficult to check the simulated data according to > the original mesh data. If I want to easily do so, How should I do? The most general way is to make a copy of the initial mesh and use a MeshFunction object. If you know that the new mesh is generated by refinement of the old mesh (without coarsening or moving nodes) then you can simply add a vector to your System which will hold the initial data; this vector will then be projected into the refined basis on every EquationSystems::reinit. --- Roy |