Framework database¶
This is a module for providing common types of frameworks.
- pyrigi.frameworkDB.CnSymmetricFourRegular(n=8)[source]¶
Return a \(C_n\)-symmetric framework in the plane.
Definitions
- pyrigi.frameworkDB.CnSymmetricWithFixedVertex(n=8)[source]¶
Return a \(C_n\)-symmetric framework with a fixed vertex in the plane.
The value
n
must be even and at least 8.The underlying graph of the returned framework satisfies the expected symmetry-adapted Laman count for rotation but the framework is infinitesimally flexible.
Definitions
- pyrigi.frameworkDB.Complete(n, dim=2)[source]¶
Return
dim
-dimensional framework of the complete graph onn
vertices.The resulting realization depends on the dimension
dim
and on the numbern
: :rtype:Framework
If
n-1<=dim
, then the complete graph is realized on the vertices of thedim
-dimensional simplex. The complete graph is either given by the 1-skeleton of the simplex itself whendim+1==n
or else as the 1-skeleton of a facet.For
dim=1
, the complete graph is injectively realized on the 1-dimensional linear space generated by the vector[1,0,...,0]
.If
dim=2
, then the complete graph is realized as the vertices of a regular polygon.
- pyrigi.frameworkDB.CompleteBipartite(n1, n2, realization=None)[source]¶
Return a complete bipartite framework on
n1+n2
vertices in the plane.- Parameters:
- Return type:
Suggested Improvements
Implement realization in higher dimensions.
- pyrigi.frameworkDB.Cycle(n, dim=2)[source]¶
Return
dim
-dimensional framework of then
-cycle.The resulting realization depends on the dimension
dim
and on the numbern
: :rtype:Framework
If
n-1<=dim
, then the cycle is realized as the vertices of the dim-dimensional simplex.For
dim=1
, the cycle is injectively realized on the 1-dimensional linear space generated by the vector[1,0,...,0]
.If
dim=2
, then the cycle is realized as the vertices of a regular polygon.
- pyrigi.frameworkDB.Diamond()[source]¶
Return the diamond with square realization in the plane.
- Return type:
- pyrigi.frameworkDB.Dodecahedron()[source]¶
Return the regular dodecahedron in \(\RR^3\).
- Return type:
- pyrigi.frameworkDB.Frustum(n)[source]¶
Return the \(n\)-Frustum with
2n
vertices in dimension 2.Definitions
- pyrigi.frameworkDB.K33plusEdge()[source]¶
Return the complete bipartite graph on 3+3 vertices plus an edge realized in \(\RR^2\).
- Return type:
- pyrigi.frameworkDB.Octahedron(realization='regular')[source]¶
Return a framework of the octahedron in \(\RR^3\).
- Parameters:
realization (
str
) –If
"regular"
, a realization of the regular octahedron in \(\RR^3\) is returned.If
"Bricard_line"
, a flexible Bricard’s octahedron line-symmetric w.r.t. z-axis is returned.If
"Bricard_plane"
, a flexible Bricard’s octahedron plane-symmetric w.r.t. yz-plane is returned.- Return type:
- pyrigi.frameworkDB.Path(n, dim=2)[source]¶
Return
dim
-dimensional framework of the path graph onn
vertices.The resulting realization depends on the dimension
dim
andn
: :rtype:Framework
If
n-1<=dim
, then the path is realized as the vertices of the dim-dimensional simplex.For
dim=1
, the path is injectively realized on the 1-dimensional linear space generated by the vector[1,0,...,0]
.If
dim=2
, then the path is realized as the vertices of a regular polygon.
- pyrigi.frameworkDB.SecondOrderRigid()[source]¶
Return an example by Connelly.
This is an example of a (non-injective) 3-dimensional framework with a two-dimensional space of flexes and stresses. It appears in [CW96]. This framework is second-order rigid but not prestress stable.
- Return type:
- pyrigi.frameworkDB.Square()[source]¶
Return the 4-cycle with square realization in the plane.
- Return type:
- pyrigi.frameworkDB.ThreePrism(realization=None)[source]¶
Return a framework of the 3-prism graph in the plane.