sieve-dev sieve arrow and the node order

Shi Jin jinzishuai at gmail.com
Wed Mar 19 23:53:12 CDT 2008


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/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.mcs.anl.gov/mailman/private/sieve-dev/attachments/20080319/fdc15f64/attachment.htm>


More information about the sieve-dev mailing list