-
-
Notifications
You must be signed in to change notification settings - Fork 661
Closed
Description
This is a pretty large module, consisting of 11 kLOC.
We could split it into several modules, each defining an intermediate class (like it is done in sage.matrix.matrix0, matrix1, matrix2
).
For example,
- a module
sage.geometry.polyhedron.base0
contains the very basic methods (initialization etc) Split initialization and basic access of polyhedra out as a separate module #32767. - a module
sage.geometry.polyhedron.base1
could contain the implementation of the methods defined by theConvexSet_base
API, split convex set methods of polyhedra into base1.py #32776 - a module
sage.geometry.polyhedron.base2
could contain all methods that have to do with lattice points in polyhedra, Move lattice point methods from Polyhedron_base to Polyhedron_base2 #32876 - a module
sage.geometry.polyhedron.base3
contains the combinatorial methods, Move combinatorial methods of Polyhedron_base to Polyhedron_base3 #32884 - a module
sage.geometry.polyhedron.base4
could contain all methods whose implementation needssage.graphs.graphs
, Move graphs methods to Polyhedron_base4 #32889 -- this would help with modularization because then we could conditionalize the doctests via a file-level directive (sage.doctest.control: Exclude doctests in files via file directives ''# sage.doctest: optional - xyz' #30778)vertex_graph
,graph
,vertex_digraph
,vertex_facet_graph
hasse_diagram
face_lattice
,flag_f_vector
{combinatorial,restricted}_automorphism_group
is_combinatorially_isomorphic
- a module
sage.geometry.polyhedron.base5
could contain all constructions of new polyhedra, Move construction methods to Polyhedron_base5 #33123 - a module
sage.geometry.polyhedron.base6
could contain all methods related to plotting and affine hull (projection), Move plotting and affine hull to Polyhedron_base6 #33449 - a module
sage.geometry.polyhedron.base7
could contain all methods related to triangulation and volume, Move integration and volume to Polyhedron_base7 #33583
This could also lead to an improvement of the documentation.
Component: refactoring
Issue created by migration from https://trac.sagemath.org/ticket/32651