From: John P. <jwp...@gm...> - 2018-06-06 18:31:49
|
On Wed, Jun 6, 2018 at 11:51 AM, Caleb M Phillips <cal...@ut...> wrote: > Hello all, > > I'm a newer user to lib mesh and would like to attempt to incorporate it in > my research. I am looking to take a list of objects (cells that make up a > blood vessel) and add nodes and elements to the mesh over the entire > domain. These new nodes/elements would act as a boundary for blood flow. So > I would be solving incompressible 2D flow over the whole domain with the > new elements acting as a boundary (the wall of the vessel). The vessels > would move every time point so I would delete the new nodes at the end of > every time point and add the updated positions as new nodes. > > I'm wondering if this is thought to be feasible or if the manipulations to > the mesh at every time point would be extremely computationally expensive. > > I am trying to implement this in a very simple case, but whenever I try to > add nodes wherever these cells are in the domain, I get an error "Error, > cannot insert node on top of existing node." which I am certainly not > adding a node directly on top of an existing node. I've looked through some > of the documentation but cannot seem to make sense of my issue. > Hmm.. that error message is coming from ReplicatedMesh::insert_node(Node * n) and I agree it's a bit confusing. It's referring to inserting a new node being inserted with the same ID as an existing node, not at the same geometric location as an existing node. I'm not sure exactly what your algorithm entails, but from the description above I'd say it's definitely possible to do in libmesh. -- John |