Le 17/12/2012 14:42, Ronnie Ghose a écrit :
Ehh these are sort of trivial things now but why not use a multidimensional array for the coords [n,2] and then use the numpy operators to find the difference?
Well I guess that would reduce some overloading, but the reason I keep my coordinates separated is for clarity. The coordinate system is a bit more complicated than just (x,y), it's more cynlindrical like, with two curvilinear coordinates for the surface, plus a radius corresponding to the distance of the surface w/r to the central axis... I think that explicitly writing down every coordinate separately avoids mistakes, though the code looks a bit redondant then.

G. 

Just trying to reduce the things you do and offload more to the numpy fortran library. Uhm hmm you can use 4 cores then ~ just split it into 4 chunks to subtract? I find personally numpy does for loop operations tons faster ~ so a vectorized function rather than a for loop...


On 17 December 2012 08:38, Guillaume Gay <guillaume@mitotic-machine.org> wrote:
Le 17/12/2012 13:14, Ronnie Ghose a écrit :
also i assume you're using a numpy / C structure for all of this right? Also depending on the number of cores you have you could try parallelizing all of your loops with multiprocessing / if applicable  ~ GPU processing
Well I rely on the `propertymap.a` and `propertymap.fa` attributes, which are subclasses of numpy ndarray. As for multiprocessing, of course, but I only have 4 cores, so... As for GPU processing, I don't know whether there is a simple way to do this in python.
I guess the real efficient way would be to dive into the underlying C++ API, but I am not very C++ litterate  and look for something simpler.

But avoiding the inelegant loop over all edges is already interesting...

Thanks for the suggestion anyway!

Guillaume


On 17 December 2012 05:59, Guillaume Gay <guillaume@mitotic-machine.org> wrote:
Le 17/12/2012 11:29, Tiago de Paula Peixoto a écrit :
On 12/17/2012 11:28 AM, Guillaume Gay wrote:
Hi Tiago,

Thanks for the blazing fast answer!

It will sure do the job. I can't find it in the documentation though (it's accessible online via ipython autocompletion and magic '?', but doesn't appear on your web site).
Oops... Indeed. I'll add it in the next release.

Cheers,
Tiago



_______________________________________________
graph-tool mailing list
graph-tool@skewed.de
http://lists.skewed.de/mailman/listinfo/graph-tool
Ok cool..

One more point:

Is there a way to do the following differently:

edge_x = g.new_edge_property()
edge_x.a = np.array([x[e.source()] for e in g.edges()])

with x being a vector property map.
I plain English, is there a (more efficient) way to copy the vertex property map of every edge source to  an edge property map?


Guillaume
 

_______________________________________________
graph-tool mailing list
graph-tool@skewed.de
http://lists.skewed.de/mailman/listinfo/graph-tool




_______________________________________________
graph-tool mailing list
graph-tool@skewed.de
http://lists.skewed.de/mailman/listinfo/graph-tool


_______________________________________________
graph-tool mailing list
graph-tool@skewed.de
http://lists.skewed.de/mailman/listinfo/graph-tool




_______________________________________________
graph-tool mailing list
graph-tool@skewed.de
http://lists.skewed.de/mailman/listinfo/graph-tool