Closed 5286a521-11fe-4c4e-9f98-8ed6b0603b1f closed 7 years ago
Branch: ribbon_graphs
Changed branch from ribbon_graphs to none
Branch: u/pportilla/ribbon_graphs
Commit: a39ea2e
Branch pushed to git repo; I updated commit sha1. New commits:
a39ea2e | Started formatting according developers guide |
Branch pushed to git repo; I updated commit sha1. New commits:
5afd130 | added INPUT of main class |
Branch pushed to git repo; I updated commit sha1. New commits:
bb5cb78 | fixed some typos |
Branch pushed to git repo; I updated commit sha1. New commits:
d82e31f | More functions correctly formatted |
Branch pushed to git repo; I updated commit sha1. New commits:
2dbcdc2 | Deleted directory, put file in combinat, modified all.py |
This will be a nice addition. A few quick comments to help:
.directory
file that has gotten mixed in with your commit.sage.all
. From within Sage, you can use import_statements(foo)
to see the import.Looking forward to this being ready for review.
Replying to @tscrim:
This will be a nice addition. A few quick comments to help:
- You have a
.directory
file that has gotten mixed in with your commit.- You should only import things you need, not
sage.all
. From within Sage, you can useimport_statements(foo)
to see the import.- I've found it helpful to write docstrings (with doctests) as soon as I create a new function/method.
Looking forward to this being ready for review.
Thank you for the comments!
Basically I was working on this on my own for doing some computations and somebody told me that this might be useful for other people, so I decided to collaborate on Sage development. It happens that I had two ".sage" files that were written "for me". So now I am doing all the translation to python + adjusting to developers guide lines. That's why there is no docstrings yet and the format is not yet adapted.
The import sage.all was just to check that the .py file actually compiled :)
Branch pushed to git repo; I updated commit sha1. New commits:
3c80c83 | Continued formatting according to developers guide. |
Branch pushed to git repo; I updated commit sha1. New commits:
627f775 | Several changes |
Branch pushed to git repo; I updated commit sha1. New commits:
e311e5e | Modified __init__.py and all.py. Added examples, documentation. |
Branch pushed to git repo; I updated commit sha1. New commits:
32cc071 | Removing .gitignore which should be only personal. |
Branch pushed to git repo; I updated commit sha1. New commits:
21bed2c | New folder |
Since this is the only file for ribbon graphs, I think it is overkill to have it be in a separate folder.
Replying to @tscrim:
Since this is the only file for ribbon graphs, I think it is overkill to have it be in a separate folder.
I understand it is overkill for now, but I will open a new ticket shortly depending on this and add a second file. This file will be about the so called tete-a-tete graphs that model automorphisms of surfaces.
I thought it was appropriated but I will revert the changes if it is not. Also I don't know if this fits more in "geometry". ?¿
I would say 4 or so files would deserve a new folder, so I still recommend reverting. However, considering where you want this to go and how I think about ribbon graphs, geometry
would be a much better fit than combinat
.
Branch pushed to git repo; I updated commit sha1. New commits:
9ea064e | New folder |
Branch pushed to git repo; I updated commit sha1. New commits:
4788854 | Modified __init__.py and all.py. Added examples, documentation. |
Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:
Branch pushed to git repo; I updated commit sha1. New commits:
a84c211 | Reverted to develop + changed to geometry. Also modified documentation. |
Branch pushed to git repo; I updated commit sha1. New commits:
b69f90b | Added more examples. Introduction with explanation of notation and examples. |
Branch pushed to git repo; I updated commit sha1. New commits:
5509661 | Added docstrings and documentation in general. |
Branch pushed to git repo; I updated commit sha1. New commits:
05aa3a0 | Added a whole introduction introducing ribbon graphs. More and more docstrings. This is coming to an end... |
Branch pushed to git repo; I updated commit sha1. New commits:
103ebf9 | Added method extrude_edge(). Also added function make_ribbon(g,r) |
Branch pushed to git repo; I updated commit sha1. New commits:
7e4979d | Added method make_generic() that perturbes a ribbon graph to produce |
Branch pushed to git repo; I updated commit sha1. New commits:
4ef44be | Completed documentation and it compiles. The document passes all doctests. So I submit it to review. |
I submit the ticket to review. Comments, bugs, anything is welcomed.
There are some methods such as homology_basis() that might not have a clear purpose. Nevertheless they work as expected and are there because a future ticket will use them. In general, this ticket just lets you play with ribbon graphs and I think it could be useful for people trying to make computations on dessins d'enfant for example. Also it will be useful (and necessary) for the implementation of tete-a-tete graph as I said in the beginning. i will start with this project as soon as this ticket is positively reviewed to be included in the next sage version.
Also, is there a way to include images on the documentation?. And I mean images created for example with IPE (not by plotting with sphinx_plot).
EDIT: at some point I did a force-push (I know I know) so if conflict appear for anyway, I recommend deleting your local branch and re-pulling it.
This ticket is meant to implement a new class of objects: ribbon graphs. These are graphs together with a cyclic ordering of the half edges adjacent to each vertex. This data allows us to unambiguosly "thicken" the ribbon graph to an orientable surface with boundary.
This will be done by encoding the ribbon graphs in two permutations. As done for example in [Gir] (and many other places). This is also meant to include basic methods of the class to compute:
This is implementation is useful in itself but is also meant to serve as a base for a later implementation of something called "tete-a-tete" graphs which is an original idea by the mathematician Norbert A'Campo [Nor] and has been developed in my thesis. These other graphs model periodic automorphisms of the thickening of the graph.
[Gir] Girondo, Ernesto; González-Diez, Gabino (2012), Introduction to compact Riemann surfaces and dessins d'enfants, London Mathematical Society Student Texts, 79, Cambridge: Cambridge University Press,
[Nor] Tete-a-tete graphs and geometric monodromy
CC: @tscrim @sagetrac-tmonteil
Component: geometry
Keywords: ribbon, surfaces, orientable, days79
Author: Pablo Portilla
Branch/Commit:
809412e
Reviewer: David Coudert, Travis Scrimshaw
Issue created by migration from https://trac.sagemath.org/ticket/21587