Hi, I have been working on a way to load the parallel mesh directly from files. I think I have made some good progresses. The parallel part is not very difficult so far but have not thoroughly tested it since the problem encountered sequentially has not been solved, which is the question I am asking in this email. What I did is to built the topology from output of sieve->view() and coordinates from individual files. The problem is in the topology. Without interpolation, everything works straightforwardly but with interpolation, I am having trouble. When I construct a sieve with exactly the same arrows as the one created from regular sequential run, I don't seem to get identical node orders. I first save the sieve->view() output of a normal run and then read them in and create exactly the same arrows. This way, I was able to reduce identical sieve->view() results. However, the resulting mesh order is not always identical. For example, within one element, the order of vertexes given by nCone() may be different (although they are the same 4 vertexes). I originally thought that the arrows completely determines the sieve but now it seems to have other factors. In particular, I am not sure how the vertexes are ordered when a nCone is called on a cell. I noticed that the arrows pointing to the same point are numbered. One way to obtain an ordered node list is to retrieve the vertexes from the edges and faces in the increasing order. When an existing point is found, nothing is done. When a new point is found, then it is added in sequence. However, I checked my regular run, the order of vertexes resulting from nCone() on a cell does not always follow this rule: some times the order is changed to enforce the consistent orientation of vertexes (such as right- handedness). When I build the sieve purely from the arrow information, the sign of Jacobian is not always the same since the order of nodes is not guaranteed from the order of arrows. Therefore, I think a different algorithm (thus extra information) is used to determine the order of nodes. I am wondering if you can explain how it works. With this information, I might be able to reproduce the topology of the grid. Thank you very much. -- Sincerely, Shi Jin, Ph.D. http://www.ualberta.ca/~sjin1/
participants (1)
-
Shi Jin