On Thu, 24 Feb 2011, Vetter Roman wrote: > I have a 1D mesh which is simulated in parallel. From time to time, > I would like to append some more nodes/elements at one end of > the mesh, or remove some. This is going to happen always at the > same end. How can this be done? The mesh will need to be > repartitioned and the system vectors etc. will need to be > redistributed in some way. Is there a class/method that provides > such functionality?
Adding new elements/nodes to a mesh ought to be possible using the same APIs as for the original mesh construction - see the MeshGeneration tools for examples. IIRC you'll want to add new elements with invalid processor ids so they're "unpartitioned", then call prepare_for_use() afterwards to get them assigned to processors in a load-balanced fashion. The catch is that I'm not sure our System::project_vector code is up to the task. It will try to project a solution on the changed mesh from the corresponding solution on the old mesh, which won't exist. Even if that's the case it ought to be simple to fix, though, just by adding a test for the old_dof_object and skipping projections on any elements where that doesn't exist. Sorry I've got a backlog of important emails from you right now, BTW; illness sapped my productivity and important work stuff is higher on the TODO list. Hoping to get caught up today or this weekend; yell at me if I haven't gotten back to you by next week. --- Roy ------------------------------------------------------------------------------ Free Software Download: Index, Search & Analyze Logs and other IT data in Real-Time with Splunk. Collect, index and harness all the fast moving IT data generated by your applications, servers and devices whether physical, virtual or in the cloud. Deliver compliance at lower cost and gain new business insights. http://p.sf.net/sfu/splunk-dev2dev _______________________________________________ Libmesh-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/libmesh-users
