Marshall and David: thanks very much for these suggestions. Dave
On Jul 20, 4:59 am, David Joyner <[email protected]> wrote: > On Sun, Jul 19, 2009 at 3:33 PM, davidp<[email protected]> wrote: > > > I have been working on a Sage package for doing computations involving > > the > > Abelian Sandpile Model. In addition, this summer I am the mentor for > > a Google > > Summer of Code project which is a java application for visualizing and > > analyzing sandpiles. The latest addition to the java program has been > > the > > ability to interact with Sage. For a glance at what has been going > > on, I would > > recommend: > > > www.reed.edu/~davidp/sand > > > especially > > > www.reed.edu/~davidp/sand/sage/html/sage_sandpiles.html > > > and > > > www.reed.edu/~davidp/sand/program/program.html > > > It would be great to get feedback from Sage users. The Google Summer > > I've read the papers on RR spaces of graphs, and related papers using > tropical curves, > so am very happy to see that this is implemented. Long ago, I looked > at the chip-firing papers. > However, I had no idea that these topics were related and have > forgotten what I read > about that aspect anyway. > > You asked for comments. Looking > athttp://people.reed.edu/~davidp/sand/sage/html/sage_sandpiles.html#dis... > andhttp://people.reed.edu/~davidp/sand/sage/html/sage_sandpiles.html#pro... > (in other words looking at the *output* of your code and not the code itself), > I have a few observations (which may or may not be useful or correct:-): > > 1) it seems to me that you have implemented rather hackish methods for > constructing and manipulating divisors on graphs. It would be nice if > they were implemented > in a way similar to divisors on curves (ie, as a class with methods > for addition, etc). > > 2) It seems you have a included some print statements for the r_of_D function: > > sage: r_of_D = S.r_of_D(D)[0] > 0 > 1 > 2 > sage: r_of_F = S.r_of_D(F)[0] > 0 > > though I am not sure. I would suggest having r_of_D return r(D) by > default and then > have an option 'algorithm = "verbose"' or something if you want to > output the divisor F > as well. I suggest eliminating the print statements. Typically and assignment > in Python (such as r_of_D = S.r_of_D(D)[0]) has no values printed to the > screen. > > 3) You seem to have a non-standard method of describing a ring in Sage: > > sage: g = {0:{},1:{0:1,3:1,4:1},2:{0:1,3:1,5:1}, > 3:{2:1,5:1},4:{1:1,3:1},5:{2:1,3:1}} > sage: S = Sandpile(g, 0) > sage: S.ring() > > // characteristic : 0 > // number of vars : 6 > // block 1 : ordering dp > // : names x_5 x_4 x_3 x_2 x_1 x_0 > // block 2 : ordering C > > It seems to me the print method should, again, mirror that of the > base_ring method for an algebraic curve. > > Overall though I think this is extremely interesting code and I'm > looking forward > to playing with it a lot more! This week I'm helping with advising new > freshmen > who will be starting classes this fall, but will try to give you more detailed > comments as soon as I can. > > > of Code > > project will end in August, so if there are any features you would > > like us to > > add to the java application, please let us know as soon as possible. > > > Thanks, > > Dave --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---
