CuboidalE3


Cuboidal E3: A Study in Structure

(version 1.4)



Figure 1: Overlapping Cuboids with Embedded E3

What we see here is another vZome construction by David Koski, showing an E3 embedded in two cuboids, with one edge length in common, the first cuboid (blue) the Golden Cuboid.

What are the dimensions, based on the color coding? Note that vZome has this way of repeating colors based on orientation and scale, which is why all three edges of the Golden Cuboid appear blue.

Lets start with E3 itself, the blue shaded tetrahedron module nestled inside (inscribe within) both cuboids. The darker triangle towards the bottom of the figure is 1/4 the diamond face of a Rhombic Triacontahedron. If we take the diamond center to the origin of said RT to be ø, and accept that in ratio to unit sphere Radius (R) = 1, then said tetrahedron is E3 i.e. 1/120th of the "SuperRT" or "RT3". The "SuperRT" is "phi-up" from the regular RT made of E modules. It's made from intersecting Platonic Duals: Icosahedron and Pentagonal Dodecahedron.


In [1]:
from math import sqrt as rt2
ø = (rt2(5) + 1)/2
ø_down = ø ** -1
ø_up = ø
Blue = ø_down
Orange = 1/((rt2(ø ** 2 + 1)) * ø_down)
Red = rt2(ø ** 2 + 1)

In [2]:
for item in Blue, Orange, Red:
    print(item)


0.6180339887498948
0.8506508083520401
1.902113032590307

The shop-talk around "ø up" and "ø down" involves scaling all linear dimensions of a shape, whereby volume actually increases or decreases by a factor of ø to the 3rd power. When you think "ø to the 3rd" sometimes imagine a tetrahedron of edges ø vis-a-vis a regular tetrahedron of edges 1 (D). Remember in Synergetics we may use this alternative model of 3rd powering, where our unit-tetrahedron comes from in the first place.


In [3]:
Blue = ø_down
Red = rt2(ø ** 2+1)
Orange = ø/Red

In [4]:
for item in Blue, Orange, Red:
    print(item)


0.6180339887498948
0.85065080835204
1.902113032590307

For the purposes of Synergetics, our canonical bridge to the Platonics involves making the unit edge of the tetrahedron serve as our D, the Diameter of a unit-radius sphere (D = 2R). We often call this edge length 2, using R as our unit.

The Icosahedron with edges D, for example, is our volume of ~18.51..., which Jitterbugs to become the Cuboctahedron (VE) of volume 20. The octahedron of edges D has volume 4, the cube of face diagonals D has edges 3, and the unit of volume, the regular tetrahedron of edges D, is of course volume 1.

Links to Volumes Table:

The dual of said Icosahedron, its edges made to intersect said Icosa's at 90 degrees, gives the superstructure of our SuperRT, the one fragmenting into 120 E3 modules, as depicted in Figure One.

What is the volume of the E3? In tetravolumes, we take the SuperRT volume of 15√2 (equivalently vol(CO) * S3)...


In [5]:
RT3_vol = 15 * rt2(2)
print(RT3_vol)


21.213203435596427

... and simply divide by 120.


In [6]:
E_vol = (RT3_vol * ø_down ** 3)/120 # a little more than 1/24, volume of T module
print(E_vol)


0.04173131692777365

Another expression (in Python) for the E's volume is (rt2(2)/8) * (φ ** -3).

For exercise, lets computer these expressions for E's and SuperRT's volume to a hundred places of decimal precision.


In [7]:
from decimal import Decimal, localcontext
with localcontext() as cm:
    cm.prec = 300 # 100 decimal points of precision
    Phi = (Decimal(1) + Decimal(5).sqrt())/Decimal(2)
    RT3_vol = Decimal('15') * Decimal('2').sqrt()
    check_RT = Decimal('20') * (Decimal('9')/Decimal('8')).sqrt()
    E_volume = (Decimal('2').sqrt() / Decimal('8')) * Phi ** -3  # simplified expression
    check_E = (RT3_vol * Phi ** -3) / Decimal('120')  # shrink SuperRT and explode
print("E3*120  {:80.78f}".format(RT3_vol))
print("Check:  {:80.78f}".format(check_RT))
print("E vol:   {:80.78f}".format(E_volume))
print("Check:   {:80.78f}".format(check_E))


E3*120  21.213203435596425732025330863145471178545078130654221097650196069860987176931606
Check:  21.213203435596425732025330863145471178545078130654221097650196069860987176931606
E vol:   0.041731316927773654299439512001665297072526423571415085063018172101391185214378
Check:   0.041731316927773654299439512001665297072526423571415085063018172101391185214378

How about we redo those calcs with gmpy2, why not?


In [8]:
import gmpy2

gmpy2.get_context().precision=300
Ø = (1 + gmpy2.root(5, 2))/2
vol_scale_factor = 1.5
rad_scale_factor = gmpy2.root(vol_scale_factor, 3)

S3 = gmpy2.root(9/8, 2)
SuperRT_vol = S3 * 20
Emod_RT_vol = SuperRT_vol * (1/Ø)**3
print("E3*120: {:80.78f}".format( SuperRT_vol))
print("E vol:   {:80.78f}".format( Emod_RT_vol/120 ))


E3*120: 21.213203435596425732025330863145471178545078130654221097650196069860987176931606
E vol:   0.041731316927773654299439512001665297072526423571415085063018172101391185214378

vZome by Scott Vorthman is a downloadable Java application that simulates working the ZomeTool, meaning it takes the ZomeTool hub as an object providing relevant information as to the orientation of the rods stuck into it. If you've never seen the ZomeTool hub, it's a phenomenal specimen of precision engineering.

In making connections between hubs, vZome automatically colorizes depending on a carefully defined palette. When the rod would not be possible, given hub contraints, it's left to the vZome user to specify a color.

For Further Reading: