From: Roy S. <roy...@ic...> - 2018-06-06 18:45:22
|
On Wed, 6 Jun 2018, John Peterson wrote: > On Wed, Jun 6, 2018 at 11:51 AM, Caleb M Phillips <cal...@ut...> > wrote: > >> 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. How expensive depends on your time stepping, and on your topology, I believe. My biggest question would be about the latter: do you really need to delete old nodes and add new nodes with every step? If your mesh topology can remain unchanged then you can simply change the geometry by setting new positions for the same old nodes, which ought to be much simpler. >> 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 is correct on both counts. Sorry about the misleading error message! Looks like you're at UT? I'm working from the POB building 4 or 5 days a week, if you'd like help with anything. I usually prefer keeping user assistance as search-engine-accessible as possible, but I know sometimes a long back-and-forth can go ten times faster in person than it can over email. --- Roy |