Duality of Polyhedra
This worksheet describes the polyhedron duality routine of the geom3d package. For visibility, the plots and table below were generated with the worksheet set to a wide size.
In order to access the routines in the geom3d package by their short names, the with command has been used.
restart;withgeom3d:
An Introductory Demonstration
GreatRhombiicosidodecahedront9,point⁡o,0,0,0,1.:dualitydt9,t9,sphere⁡m9,o,MidRadius⁡t9:drawt9⁡color=maroon,dt9⁡color=gold,cutout=78,lightmodel=light4,title=dual of great rhombiicosidodecahedron,orientation=0,32
The Concept of Duality
The edges and vertices of a polyhedron constitute a special case of a graph in which a set of N0 points, or nodes, is joined in pairs by N1 segments or branches. Therefore, the essential property of a polyhedron is that its faces together form a single unbounded surface. The edges are merely curves drawn on the surface that come together in sets of three or more at the vertices.
In other words, a polyhedron with N2 faces, N1 edges, and N0 vertices may be regarded as a map, that is, as the partition of an unbounded surface into N2 polygonal regions by means of N1 simple curves joining pairs of N0 points.
From a given map, we may derive a second, called the dual map, on the same surface. This second map has N2 vertices, one in the interior of each face of the given map; N1 edges, one crossing each edge of the given map; and N0 faces, one surrounding each vertex of the given map. Corresponding to a p-gonal face of the given map, the dual map will have a vertex where p edges (and p faces) come together.
Duality is a symmetric relation: A map is the dual of its dual. A map is said to be regular, of type {p,q}, when there are p vertices and p edges for each face, and q edges and q faces at each vertex, that are arranged symmetrically in a sense that can be made precise. Therefore, a regular polyhedron is a special case of a regular map. For each map of type {p,q} is a dual map of type {q,p}.
Consider the regular polyhedron {p,q}, with its N0 vertices, N1 edges, and N2 faces. If we replace each edge by a perpendicular line touching the mid-sphere at the same point, we obtain the N1 edges of the reciprocal polyhedron {q,p}, which has N2 vertices and N0 faces. This process is in fact reciprocation with respect to the mid-sphere: the vertices and face-planes of {p,q} are the poles and the polars, respectively, of the face-planes and vertices of {q,p}.
Reciprocation with respect to another concentric sphere would yield a larger or smaller {q,p}.
This process of reciprocation can evidently be applied to any figure that has a recognizable "center". It agrees with the topological duality that we defined for maps. The 13 Archimedean solids are therefore included in this case; that is, for each Archimedean solid there exists a reciprocal polyhedron with respect to a concentric sphere.
Specifying Dual Polyhedra in geom3d
In Maple, one can define a duality of a regular polyhedron or of an Archimedean solid by using the command duality(dualp,p,s) where dualp is the name of the reciprocal polyhedron of the given polyhedron p with respect to the sphere s which is concentric with p (that is, s and p have the same center).
The following series of Maple commands show how to define and display the reciprocal polyhedron of a given regular polyhedron.
pointo,0,0,0:r≔1.:
tetrahedronp1,o,r:dualitydp1,p1,sphere⁡s1,o,InRadius⁡p1:draw⁡p1⁡color=red,p1⁡color=green,cutout=78,lightmodel=light4,title=dual of tetrahedron w.r.t. its in-sphere
hexahedronp3,o,r:dualitydp3,p3,sphere⁡s3,o,MidRadius⁡p3:draw⁡p3⁡color=red,dp3⁡color=green,cutout=78,lightmodel=light4,title=dual of hexahedron w.r.t. its mid-sphere
icosahedronp4,o,r:dualitydp4,p4,sphere⁡s4,o,MidRadius⁡p4:draw⁡p4⁡color=red,dp4⁡color=green,cutout=78,lightmodel=light4,title=dual of icosahedron w.r.t. its mid-sphere
GreatDodecahedronp7,o,r:dualitydp7,p7,sphere⁡s7,o,MidRadius⁡p7:draw⁡p7⁡color=red,dp7⁡color=green,cutout=78,lightmodel=light4,orientation=0,32,title=dual of great dodecahedron w.r.t. its mid-sphere
GreatIcosahedronp9,o,r:dualitydp9,p9,sphere⁡s9,o,MidRadius⁡p9:draw⁡p9⁡color=red,dp9⁡color=green,cutout=78,lightmodel=light4,orientation=0,32,title=dual of great icosahedron w.r.t. its mid-sphere
Duals of the Archimedean Solids in geom3d
A given regular polyhedron is closed under duality--the duality of a regular polyhedron is also a regular polyhedron.
This is not the case for the Archimedean solids, though. The following table shows the polyhedron type of the duals of the Archimedean solids:
Archimedean Solids
Maple's Schlafli
Reciprocal Polyhedron
TruncatedTetrahedron
_t([3,3])
TriakisTetrahedron
dual(_t([3,3]))
TruncatedOctahedron
_t([3,4])
TetrakisHexahedron
dual(_t([3,4]))
TruncatedHexahedron
_t(4,3])
TriakisOctahedron
dual(_t(4,3]))
Truncated Icosahedron
_t([3,5])
PentakisDodecahedron
dual(_t([3,5]))
TruncatedDodecahedron
_t([5,3])
TriakisIcosahedron
dual(_t([5,3]))
cuboctahedron
[[3],[4]]
RhombicDodecahedron
dual([[3],[4]])
icosidodecahedron
[[3],[5]]
RhombicTriacontahedron
dual([[3],[5]])
SmallRhombicuboctahedron
_r([[3],[4]])
TrapezoidaIcositetrahedron
dual(_r([[3],[4]]))
SmallRhombiicosidodecahedron
_r([[3],[5]])
TrapezoidalHexecontahedron
dual(_r([[3],[5]]))
GreatRhombicuboctahedron
_t([[3],[4]])
HexakisOctahedron
dual(_t([[3],[4]]))
GreatRhombiicosidodecahedron
_t([[3],[5]])
HexakisIcosahedron
dual(_t([[3],[5]]))
SnubCube
_s([[3],[4]])
PentagonalIcositetrahedron
dual(_s([[3],[4]]))
SnubDodecahedron
_s([[3],[5]])
PentagonalHexacontahedron
dual(_s([[3],[5]]))
To access information relating to the reciprocal of an Archimedean solid gon, use the following function calls:
center(gon); returns the center of the mid-sphere of gon. faces(gon); returns the faces of gon, with each face is represented as a list of coordinates of its vertices. form(gon); returns the form of gon (TriakisTetrahedron3d, ...). radius(gon); returns the mid-radius of gon. schlafli(gon); returns the Schlafli symbol of gon. vertices(gon); returns the coordinates of vertices of gon.
For example:
TruncatedTetrahedront1,point⁡o,0,0,0,1;dualitydt1,t1,sphere⁡s1,o,1;coordinatescenter⁡dt1;form⁡dt1;radiusdt1;verticesdt1
t1
dt1
0,0,0
TriakisTetrahedron3d
1
115,115,115,−115,−115,115,−115,115,−115,115,−115,−115,−113,−113,−113,−113,113,113,113,−113,113,113,113,−113
The following figure shows the 13 reciprocals of the Archimedean solids:
pointo1,−4,−1,0:r1≔1.:TruncatedHexahedrond1,o1,r1:dualityt1,d1,sphere⁡s1,o1,MidRadius⁡d1
pointo2,0,−1,0:r2≔1.:TruncatedTetrahedrond2,o2,r2:dualityt2,d2,sphere⁡s2,o2,MidRadius⁡d2
t2
pointo3,4,−1,0:r3≔1.:cuboctahedrond3,o3,r3:dualityt3,d3,sphere⁡s3,o3,MidRadius⁡d3
t3
pointo4,−9,6,0:r4≔1.500000000:SmallRhombicuboctahedrond4,o4,r4:dualityt4,d4,sphere⁡s4,o4,MidRadius⁡d4
t4
pointo5,−72,5,0:r5≔2.500000000:GreatRhombicuboctahedrond5,o5,r5:dualityt5,d5,sphere⁡s5,o5,MidRadius⁡d5
t5
pointo6,72,5,0:r6≔2.500000000:TruncatedDodecahedrond6,o6,r6:dualityt6,d6,sphere⁡s6,o6,MidRadius⁡d6
t6
pointo7,9,6,0:r7≔1.500000000:TruncatedOctahedrond7,o7,r7:dualityt7,d7,sphere⁡s7,o7,MidRadius⁡d7
t7
pointo8,−9,16,0:r8≔1.500000000:SnubCubed8,o8,r8:duality⁡t8,d8,spheres8,o8,MidRadiusd8
t8
pointo9,−72,14,0:r9≔2.500000000:TruncatedIcosahedrond9,o9,r9:dualityt9,d9,sphere⁡s9,o9,MidRadius⁡d9
t9
pointo10,72,14,0:r10≔2.500000000:SnubDodecahedrond10,o10,r10:dualityt10,d10,sphere⁡s10,o10,MidRadius⁡d10
t10
pointo11,9,16,0:r11≔1.500000000:icosidodecahedrond11,o11,r11:dualityt11,d11,sphere⁡s11,o11,MidRadius⁡d11
t11
pointo12,−92,24,0:r12≔3.500000000:GreatRhombiicosidodecahedrond12,o12,r12:dualityt12,d12,sphere⁡s12,o12,MidRadius⁡d12
t12
pointo13,92,24,0:r13≔3.:SmallRhombiicosidodecahedrond13,o13,r13:dualityt13,d13,sphere⁡s13,o13,MidRadius⁡d13
t13
draw⁡seq⁡t‖i,i=1..13,color=plum,orientation=−117,45,title=Reciprocal polyhedra of the Archimedean Solids,style=patch,lightmodel=light4
Return to Index for Example Worksheets
Download Help Document