There are various means to obtain new objects without having to type the data in a new file manually.
Application surface defines many standard construction and transformation algorithms. Unfortunately, due
to the preliminary state of polymake reconstruction, we can't supply a uniform, comfortable function-like
interface to all of them. At the moment you still have to call the construction clients as separate
programs from the shell command line.
These clients are called by polymake automatically via the rules. They compute
some new properties of an object. You will hardly ever need to call them
directly. They are documented here first of all for the sake of completeness.
Compute the subgraph induced by a given set of nodes.
The nodes are labeled with the original node indices, unless nol option is specified.
If compl option is specified, the complement of the subgraph_nodes_section is used to
select the subgraph nodes.
Determine whether two given graphs are isomorphic.
The answer is written as a boolean property result_section of the first file.
If the result section is omitted, prints the node permutation to the standard output.
Create an embedding of the Hasse diagram as a layered graph.
The embedding algorithm tries to minimize the weighted sum of squares of edge lengths, starting
from a random distribution. The weights are relative to the fatness of the layers.
The y-space between the layers is constant; in the -primal mode the whole-lattice node is placed
on the top, in the -dual mode it is the empty node.
label_width_section should contain estimates (better upper bounds) of the label width of each
node. The computed layout guarantees that the distances between the nodes in a layer are at least equal to
the widest label in this layer.
Compute the lenghts of all edges of a given graph with assigned coordinates for the nodes. If the -redirect option is set
then it is assumed that the graph has indices as node attributes which point into the coordinate section.
Produce a 3-d embedding for the graph using the spring embedding algorithm
along the lines of
Thomas Fruchtermann and Edward Reingold:
Graph Drawing by Force-directed Placement.
Software Practice and Experience Vol. 21, 1129-1164 (1992), no. 11
The initial node coordinates are chosen randomly on the unit sphere.
The optional parameter -seed controls the initial setting.
In the standard setting, the embedding algorithm tries to stretch all edges to the
same length. If you prefer different edge lengths, store them as the edge attributes
of the input graph, and put the -read-edge-weights option on the command line.
If the nodes already have an embedding in Rd and there is a linear or abstract objective function defined
in the coordinate space, it can be used to rearrange the 3-d embedding along the z-axis corresponding
to the objective function growth. This mode is enabled with option -z-ordering.
The embedding algorithm can be fine-tuned with several "black magic" options.
All of them take double values, which are multiplied with internal initial settings,
so all defaults are equal to 1.
-scale enlarges the ideal edge length. -balance changes the balance between the
edge contraction and node repulsion forces. -inertion and -viscosity affects how the nodes
are moved, and can be used to restrain oscillations. -z-factor changes the relative influence
of the objective function on the embedding. -eps controls how far a point may move, to be
considered standing still.
Convert the combinatorial description of a surface
to the form suitable for visualization tools.
The rows of the vertex-facet incidence and the facet neighborhood matrices are rearranged
in the facet boundary counterclockwise traversal order, if seen from the outside of the polytope.
In dual mode, the notions of facets and vertices are interchanged.