CITE THIS NOTEBOOK: Penrose pattern and rhombic enneacontahedron by Sándor Kabai, Wolfram Community, SEP 29 2022
Rhombic triacontahedra (RT) can be arranged within "square root two" rhombuses, which are placed on the faces of rhombic enneacontahedron (RE). The projection of the image corresponds to Penrose tiling.
In[]:=
Manipulate[​​fi=GoldenRatio;​​alf=ArcTan[fi];​​bet=ArcTan[1/fi];​​bet1=ArcTan[1/fi^2];​​u=Sin[alf]+Cos[alf];​​gam=ArcTan[Sqrt[2]];​​xt=Cos[gam];​​yt=Sin[gam];​​t=xt/Tan[2Pi/10];​​tilt=ArcCos[t/yt];​​rt=PolyhedronData["RhombicTriacontahedron","Faces"];​​rtn=Rotate[rt,Pi,{0,0,1}];​​rtf=Rotate[Rotate[rt,bet,{0,1,0}],Pi/2,{0,0,1}];​​a1=Table[Translate[rtf,iu{1,1,1}],{i,n-1}];​​a3=Table[Translate[{rtf,a1},i{-u,u,u}],{i,n-1}];​​a5=Rotate[a3,Pi,{0,0,1}];​​b1=Translate[{a3,a5},{0,0,(-2nu-2u)}];​​b2=Rotate[b1,Pi,{1,0,0}];​​c1={b1,b2};​​c2=Rotate[Rotate[c1,Pi/2+0.001,{0,0,1}],Pi/2,{1,0,0}];​​c3=Rotate[Rotate[c2,Pi/2+0.001,{0,0,1}],Pi/2,{1,0,0}];​​sp=Sphere[];​​v1=Table[{Rotate[Rotate[{a3},-bet,{1,0,0}],i2Pi/5,{0,0,1}]},{i,5}];​​v2=Rotate[Rotate[v1,Pi,{1,0,0}],-Pi/2+0.001,{0,0,1}];​​Graphics3D[{rtn,v2},BoxedFalse,SphericalRegionTrue,ImageSize400,ViewPoint{0,0,100}],​​{{n,4,"frequency"},1,7,1,RadioButton},​​TrackedSymbolsn]
Out[]=
​
frequency
1
2
3
4
5
6
7
In[]:=
Graphics3D[{Glow[White],rtn,v2},BoxedFalse,SphericalRegionTrue,ViewPoint{0,0,100},ImageSize500]
Out[]=
n=3;​​fi=GoldenRatio;​​alf=ArcTan[fi];​​bet=ArcTan[1/fi];​​bet1=ArcTan[1/fi^2];u=Sin[alf]+Cos[alf];​​gam=ArcTan[Sqrt[2]];​​xt=Cos[gam];​​yt=Sin[gam];​​t=xt/Tan[2Pi/10];​​tilt=ArcCos[t/yt];​​rtn=Rotate[rt,Pi,{0,0,1}];​​rtf=Rotate[Rotate[rt,bet,{0,1,0}],Pi/2,{0,0,1}];​​a1=Table[Translate[rtf,iu{1,1,1}],{i,n-1}];​​a3=Table[Translate[{rtf,a1},i{-u,u,u}],{i,n-1}];​​a5=Rotate[a3,Pi,{0,0,1}];​​b1=Translate[{a3,a5},{0,0,(-2nu-2u)}];​​b2=Rotate[b1,Pi,{1,0,0}];​​c1={b1,b2};​​c2=Rotate[Rotate[c1,Pi/2+0.001,{0,0,1}],Pi/2,{1,0,0}];​​c3=Rotate[Rotate[c2,Pi/2+0.001,{0,0,1}],Pi/2,{1,0,0}];​​sp=Sphere[];​​v1=Table[{Rotate[Rotate[{a3},-bet,{1,0,0}],i2Pi/5,{0,0,1}]},{i,5}];​​v2=Rotate[Rotate[v1,Pi,{1,0,0}],-Pi/2+0.001,{0,0,1}];​​m=fi^2Sin[alf];​​p=Cos[alf]/Sin[2Pi/10];​​d1=Cos[alf]/Tan[2Pi/10];​​vv=N[2d1+p];​​d=(n-1)vvCos[bet1];​​h=2dSin[tilt];​​el1=md+h;​​v3=Translate[{v2,Red,rtn},{0,0,el1}];​​v4=Table[{Hue[0.4^2i],Rotate[Rotate[Rotate[v3,Pi,{0,0,1}],2bet,{0,1,0}],i2Pi/5,{0,0,1}]},{i,5}];​​v5=Rotate[{v3,v4},Pi,{0,1,0}];​​rev={v3,v4,v5};​​Graphics3D[{Glow[White],v3,v4},BoxedFalse,SphericalRegionTrue,ViewPoint{0,0,100},ImageSize400]​​
Out[]=
Cube edge 2 rty
Two RTs are connected with obGR as a common part
Distance between opposite three-fold vertices of RT equals to the diagonal of cube