With regards to mapping a real space point back to computational space, what do you think of this idea:
In the PointLocatorStructure::init(), build an n-dimentional container where n is the dimension of the Point, containing Elem constant refferences. For example, in a 2D case I would have
E :: n-dimensional container where references are stored
delta :: n-dimensional container where cell size (a conversion factor) is stored.
for all elements
    E[floor(element.centroid(0)/delta(0))][floor(element.centroid(1)delta(1))] = &element;
Then have the point locator operator() function would
return E[floor(Point(0)/delta(0))][floor(Point(1)/delta(1))]
which is the constant reference to the element.
Outside of space inefficiency can you provide any suggestions as far as this method is concerned?
Cristian Coroian
Software Engineer I
Advatech Pacific Inc