sieve-dev A few questions about the ISieve

Shi Jin jinzishuai at gmail.com
Mon Jul 21 12:15:41 CDT 2008


Hi there,

Thank you very much for helping me with the new ISieve staff. I've made
significant progress in converting my code. Here are the questions I have
got:
*1. The use of Visitors*
I am able to follow some example code found in the petsc-dev source to use
the visitors to replace previous nCone() calls. However, it is very unclear
to me how I should use it.
In order to get the vertexes of a given cell, I use
ALE::ISieveVisitor::NConeRetriever<PETSC_MESH_TYPE::sieve_type> ncV(
            *sieve, (size_t) pow((double) sieve->getMaxConeSize(),
m->depth()));
and
ALE::ISieveTraversal<PETSC_MESH_TYPE::sieve_type>::orientedClosure(
                *sieve, *c_iter, ncV);
const int coneSize = ncV.getSize();
const PETSC_MESH_TYPE::point_type *cone = ncV.getPoints();
for (int cl = 0; cl < coneSize; ++cl)
{
     fprintf(fp, " %d", localNumbering->getIndex(cone[cl]));
}
ncV.clear();
However, I don't know what I should do to get the edges or faces for a cell.
In the nCone() function, we just supply the distance such as depth()-1.
I guess it might have something to do with the pow() function and its
arguments. Could you please explain in some detail?


*2. tags and calculateCustomAtlas()*
In order to speed up the restrict() calls, we used the tags and
calculateCustomAtlas() to cache the data. But in ISieve, I am not able to do
it any more? Is it because the data is continuously allocated now and there
is no need to cache any more? Can we use the restrict() calls directly? If
not, what should I do?

*3. getIndices()*
The complier complains about no member named getIndices for the class
ALE:IMesh while I used to use
const ALE::Mesh::indices_type indicesBlock = m->getIndices(vel[0],
*c_iter, globalOrder);
What shall we do to replace these calls?

-- 
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/20080721/494a06b8/attachment.htm>


More information about the sieve-dev mailing list