A rigidly-folding tetrahedron (with a small slit)

This notebook was created by Thomas Hull as supporting material for the paper “Rigid flattening of polyhedra with slits” by Zachary Abel, Robert Connelly, Erik D. Demaine, Martin L. Demaine, Thomas C. Hull, Anna Lubiw, and Tomohiro Tachi.

What appears below is a model for the rigid collapsing of a regular tetrahedron where a small cut has been made on one of the tetrahedron faces. We also employ some reverse-fold “sinks” with irregular angles along the cut to fascilitate the rigid collapsing.

The crease pattern on the tetrahedron, in its entirety, can be seen in the below picture:

(The back faces of this tetrahedron have no creases on them.)  In this image the tetrahedron is slightly folded so that the slit has opened slightly, in order for it to be seen.

Functions for the Mathematica model

Execute this cell. (Click on the cell’s handle with the little arrow pointing down and press SHIFT+RETURN.) It contains all the functions for the model. Some of them are BIG and YUCKY, so look inside at your own risk!

First the nuts-and-bolts functions (rotations, magnitude, finding angles between two vectors, dropping the last entry from homogeneous coordinates, and reflecting about the xy-plane.  Note that our matrices are in homogeneous coordinates.

RZ[t_]:={{Cos[t],-Sin[t],0,0},{Sin[t],Cos[t],0,0},{0,0,1,0},{0,0,0,1}}
RX[t_]:={{1,0,0,0},{0,Cos[t],-Sin[t],0},{0,Sin[t],Cos[t],0},{0,0,0,1}}
RY[t_]:={{Cos[t],0,-Sin[t],0},{0,1,0,0},{Sin[t],0,Cos[t],0},{0,0,0,1}}
Mag[v_]:=Sqrt[v.v]
Ang[u_,v_]:=ArcCos[(u.v)/(Mag[u]*Mag[v])]
Q[v_]:=Drop[v,-1]
Ref[v_]:=(({{1, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, -1, 0}, {0, 0, 0, 1}})).v

Then we have some folding angle computations for the main (non-sink) parts of the tetrahedron:

phi2[t_]:=-ArcCos[(1/3) (-2+Cos[t])]
phi1[t_]:=Simplify[Ang[{(1/2) (Sqrt[3]) ((Cos[((phi2[t])/2)])^2),(1/2) (Sqrt[3]) Sin[phi2[t]]},{-(1/2) (Sqrt[3]) ((Cos[(t/2)])^2),((Sin[t])/2)}]]
vphi1[t_]:=-2 ArcTan[2 Tan[(t/2)]]

The points x0 - x10 are points on the “bottom half” of the tetrahedron; the top half will just be a reflection about the xy-plane.  Most of them will move in accordance with the folding angle.
t = the folding angle along the x0 -- x1 line.
x0 = the origin, the midpoint of one edge of the tetrahedron.
x1 = one corner of the tetrahedron in the xy-plane.  
x0 and x1 are fixed under the folding.
x2[t] = the other tetrahedron corner in the xy-plane.
b[t] = the bottom corner of the tetrahedron.
x3[t] = the center of the face whose vertices are b[t], x2[t] and Ref[b[t]].  (So x3[t] is also in the xy-plane.
x4[s,t] = the non-fixed endpoint of the slit we make in the tetrahedron.  The slit goes from x4[s,t] to x0 and is perpendicular to the edge of the tetrahedron.  Thus x4[s,t] is also in the xy-plane.
s = the angle at b[t] that subtends the slit.
x5[s,t] = the incenter of the triangle with corners b[t], x4[s,t], and x0.
Computing the location of x5[s,t] as the tetrahedron folds is complicated.  This is because one needs to perform kinematics around the degree-6 point b[t] to locate x5[s,t].  This is why some auxiliary functions were created (axcoord, q2a, q1aat, and q1a).
x6[s,t] - x10[s,t] are the sink points.  They need some auxiliary functions too, including s4p[s] whose formula is truly horrendous!

x0={0,0,0,1};
x1={-Sqrt[3]/2,0,0,1};
b[t_]:=RX[t/2].{0,0,-1/2,1}
x2[t_]:=RX[t/2].(({{1, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, 1, -1/2}, {0, 0, 0, 1}})).RY[-30°].RX[-phi1[t]].RY[30°].(({{1, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, 1, 1/2}, {0, 0, 0, 1}})).{-Sqrt[3]/2,0,-1,1}
x3[t_]:=RX[t/2].(({{1, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, 1, -1/2}, {0, 0, 0, 1}})).RY[-30°].RX[-phi1[t]].RY[30°].RY[30°].RX[-phi1[t]].RY[-30°].(({{1, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, 1, 1/2}, {0, 0, 0, 1}})).{-1/(2Sqrt[3]),0,-1,1}
x4[s_,t_]:=RX[t/2].(({{1, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, 1, -1/2}, {0, 0, 0, 1}})).RY[-30°].RX[-phi1[t]].RY[30°].RY[30°].RX[-phi1[t]].RY[-30°].RY[60°].RX[-vphi1[t]].RY[-60°].(({{1, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, 1, 1/2}, {0, 0, 0, 1}})).{-Tan[s]/2,0,-1,1}
axcoord[s_,p1_,vp_]:=(1/64) (-16 Cos[p1-s]-6 Cos[2 p1-s]+12 Cos[s]-16 Cos[p1+s]-6 Cos[2 p1+s]-3 Cos[2 p1-s-vp]-10 Cos[s-vp]-6 Cos[30 °-2 p1+s-vp]-4 Cos[30 °-p1+s-vp]+4 Cos[30 °+p1+s-vp]-3 Cos[2 p1+s-vp]+6 Cos[30 °+2 p1+s-vp]-3 Cos[2 p1-s+vp]-10 Cos[s+vp]+6 Cos[30 °-2 p1+s+vp]+4 Cos[30 °-p1+s+vp]-4 Cos[30 °+p1+s+vp]-3 Cos[2 p1+s+vp]-6 Cos[30 °+2 p1+s+vp]+12 Sin[30 °+s]-6 Sin[30 °-2 p1+s]-16 Sin[30 °-p1+s]-16 Sin[30 °+p1+s]-6 Sin[30 °+2 p1+s]+12 Sin[30 °-s-vp]-6 Sin[30 °-2 p1-s-vp]+4 Sin[p1-s-vp]+6 Sin[2 p1-s-vp]-6 Sin[30 °+2 p1-s-vp]+10 Sin[30 °+s-vp]+3 Sin[30 °-2 p1+s-vp]-4 Sin[p1+s-vp]-6 Sin[2 p1+s-vp]+3 Sin[30 °+2 p1+s-vp]+12 Sin[30 °-s+vp]-6 Sin[30 °-2 p1-s+vp]-4 Sin[p1-s+vp]-6 Sin[2 p1-s+vp]-6 Sin[30 °+2 p1-s+vp]+10 Sin[30 °+s+vp]+3 Sin[30 °-2 p1+s+vp]+4 Sin[p1+s+vp]+6 Sin[2 p1+s+vp]+3 Sin[30 °+2 p1+s+vp])
q2a[s_,t_]:=-ArcCos[((-1+2 axcoord[s,phi1[t],vphi1[t]]-Cos[s])/(-1+Cos[s]))]
q1aat[s_,t_,p1_,vp_,q2_]:=ArcTan[((Cos[(q2/2)])^2) Sin[s],-Sin[q2] Sin[(s/2)]]-
ArcTan[(1/64) (-12 Cos[30 °+s]+6 Cos[30 °-2 p1+s]+16 Cos[30 °-p1+s]+16 Cos[30 °+p1+s]+6 Cos[30 °+2 p1+s]+12 Cos[30 °-s-vp]-6 Cos[30 °-2 p1-s-vp]+4 Cos[p1-s-vp]+6 Cos[2 p1-s-vp]-6 Cos[30 °+2 p1-s-vp]-10 Cos[30 °+s-vp]-3 Cos[30 °-2 p1+s-vp]+4 Cos[p1+s-vp]+6 Cos[2 p1+s-vp]-3 Cos[30 °+2 p1+s-vp]+12 Cos[30 °-s+vp]-6 Cos[30 °-2 p1-s+vp]-4 Cos[p1-s+vp]-6 Cos[2 p1-s+vp]-6 Cos[30 °+2 p1-s+vp]-10 Cos[30 °+s+vp]-3 Cos[30 °-2 p1+s+vp]-4 Cos[p1+s+vp]-6 Cos[2 p1+s+vp]-3 Cos[30 °+2 p1+s+vp]+16 Sin[p1-s]+6 Sin[2 p1-s]+12 Sin[s]-16 Sin[p1+s]-6 Sin[2 p1+s]+3 Sin[2 p1-s-vp]-10 Sin[s-vp]-6 Sin[30 °-2 p1+s-vp]-4 Sin[30 °-p1+s-vp]+4 Sin[30 °+p1+s-vp]-3 Sin[2 p1+s-vp]+6 Sin[30 °+2 p1+s-vp]+3 Sin[2 p1-s+vp]-10 Sin[s+vp]+6 Sin[30 °-2 p1+s+vp]+4 Sin[30 °-p1+s+vp]-4 Sin[30 °+p1+s+vp]-3 Sin[2 p1+s+vp]-6 Sin[30 °+2 p1+s+vp]),(1/32) (10 Cos[30 °-vp]+3 Cos[30 °-2 p1-vp]+3 Cos[30 °+2 p1-vp]-10 Cos[30 °+vp]-3 Cos[30 °-2 p1+vp]-3 Cos[30 °+2 p1+vp]-6 Sin[30 °-2 p1-vp]-4 Sin[30 °-p1-vp]+4 Sin[30 °+p1-vp]-6 Sin[2 p1-vp]+6 Sin[30 °+2 p1-vp]-12 Sin[vp]-6 Sin[30 °-2 p1+vp]-4 Sin[30 °-p1+vp]+4 Sin[30 °+p1+vp]+6 Sin[2 p1+vp]+6 Sin[30 °+2 p1+vp])]
q1at[s_,t_]:=q1aat[s,t,phi1[t],vphi1[t],q2a[s,t]]
x5[s_,t_]:=RX[t/2].(({{1, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, 1, -1/2}, {0, 0, 0, 1}})).RY[-30°].RX[-phi1[t]].RY[30°].RY[30°].RX[-phi1[t]].RY[-30°].RY[60°].RX[-vphi1[t]].RY[-60°].RY[90°-s].RX[q1at[s,t]].RY[-(90°-s)].(({{1, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, 1, 1/2}, {0, 0, 0, 1}})).{-((Tan[s])/(2 (1+Sec[s]+Tan[s]))),0,-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s]))),1}
x6[s_,t_]:=RX[t/2].(({{1, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, 1, -1/2}, {0, 0, 0, 1}})).RY[-30°].RX[-phi1[t]].RY[30°].RY[30°].RX[-phi1[t]].RY[-30°].RY[60°].RX[-vphi1[t]].RY[-60°].RY[90°-s].RX[q1at[s,t]].RY[-(90°-s)].RY[90°-s/2].RX[q2a[s,t]].RY[-(90°-s/2)].(({{1, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, 1, 1/2}, {0, 0, 0, 1}})).{0,0,-1,1}
(* Now the functions for the (unfolded) sink points.
Here si[s] are the pleat angles that are dependent on the angle s that subtends the slit and sip[s] are the points there the pleat lines meet. *)
xyT[v_]:={v[[1]],v[[3]]}
in[s_]:={-((Tan[s])/(2 (1+Sec[s]+Tan[s]))),0,-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s]))),1}
s1p[s_]:=Module[{d=((Tan[s])/((Sqrt[3]) (1+Sec[s]+Tan[s])))},
{Cos[150°]*d,0,Sin[150°]*d,1}+{0,0,-1,0}]
s1[s_]:=Ang[Q[in[s]]-{-Tan[s]/2,0,-1},Q[s1p[s]]-{-Tan[s]/2,0,-1}]
s2p[s_]:=Module[{d=((Sqrt[2]) (3 Cos[15 °-(s/2)-s1[s]]-(Sqrt[3]) Sin[15 °-(s/2)-s1[s]]) Tan[s])/(3 ((1+(Sqrt[3])) Cos[15 °-(s/2)-s1[s]]-(-1+(Sqrt[3])) Sin[15 °-(s/2)-s1[s]]) (1+Sec[s]+Tan[s]))},
{Cos[165°]*d,0,Sin[165°]*d,1}+{0,0,-1,0}]
s2[s_]:=Ang[Q[s2p[s]]-{-Tan[s]/2,0,-1},Q[s1p[s]]-{-Tan[s]/2,0,-1}]
s3p[s_]:=Module[{d=(Sec[25 °-s2[s]] ((1+(Sqrt[3])) Cos[15 °-s2[s]]-(-1+(Sqrt[3])) Sin[15 °-s2[s]]) (-3 Cos[15 °-(s/2)-ArcCos[(((Sqrt[((Sec[s])^2) ((Sin[(s/2)])^2)]) ((Sqrt[3]) ((Cos[s])^2)+3 (((1+Sin[s]))^2)))/((Sqrt[6]) (1+Sin[s]) (Sqrt[(((((Cos[s])^2)+3 (((1+Sin[s]))^2)) ((Tan[s])^2))/(((1+Cos[s]+Sin[s]))^2))])))]]+(Sqrt[3]) Sin[15 °-(s/2)-ArcCos[(((Sqrt[((Sec[s])^2) ((Sin[(s/2)])^2)]) ((Sqrt[3]) ((Cos[s])^2)+3 (((1+Sin[s]))^2)))/((Sqrt[6]) (1+Sin[s]) (Sqrt[(((((Cos[s])^2)+3 (((1+Sin[s]))^2)) ((Tan[s])^2))/(((1+Cos[s]+Sin[s]))^2))])))]]) (-1+Tan[(s/2)]) Tan[s])/(12 ((1+(Sqrt[3])) Cos[15 °-(s/2)-ArcCos[(((Sqrt[((Sec[s])^2) ((Sin[(s/2)])^2)]) ((Sqrt[3]) ((Cos[s])^2)+3 (((1+Sin[s]))^2)))/((Sqrt[6]) (1+Sin[s]) (Sqrt[(((((Cos[s])^2)+3 (((1+Sin[s]))^2)) ((Tan[s])^2))/(((1+Cos[s]+Sin[s]))^2))])))]]-(-1+(Sqrt[3])) Sin[15 °-(s/2)-ArcCos[(((Sqrt[((Sec[s])^2) ((Sin[(s/2)])^2)]) ((Sqrt[3]) ((Cos[s])^2)+3 (((1+Sin[s]))^2)))/((Sqrt[6]) (1+Sin[s]) (Sqrt[(((((Cos[s])^2)+3 (((1+Sin[s]))^2)) ((Tan[s])^2))/(((1+Cos[s]+Sin[s]))^2))])))]]))},
{Cos[170°]*d,0,Sin[170°]*d,1}+{0,0,-1,0}]
s3[s_]:=Ang[Q[s2p[s]]-{-Tan[s]/2,0,-1},Q[s3p[s]]-{-Tan[s]/2,0,-1}]

s4p[s] has a really big, ugly formula:

s4p[s_]:=Module[{d=(Sec[20 °-(s/2)-s1[s]-s3[s]] Sec[25 °-ArcCos[(((-1+(Sqrt[3])) (3 Cos[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]-(Sqrt[3]) Sin[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]) ((Tan[s])^2))/(12 (Sqrt[3]) ((1+(Sqrt[3])) Cos[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]-(-1+(Sqrt[3])) Sin[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]) (((1+Sec[s]+Tan[s]))^2))+(((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))) (((Tan[s])/2)-((1+(Sqrt[3])) (3 Cos[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]-(Sqrt[3]) Sin[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]) Tan[s])/(6 ((1+(Sqrt[3])) Cos[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]-(-1+(Sqrt[3])) Sin[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]) (1+Sec[s]+Tan[s]))))/((Sqrt[(((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)]) √(((((-1+(Sqrt[3])))^2) (((3 Cos[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]-(Sqrt[3]) Sin[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]))^2) ((Tan[s])^2))/(36 ((((1+(Sqrt[3])) Cos[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]-(-1+(Sqrt[3])) Sin[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]))^2) (((1+Sec[s]+Tan[s]))^2))+(((((Tan[s])/2)-((1+(Sqrt[3])) (3 Cos[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]-(Sqrt[3]) Sin[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]) Tan[s])/(6 ((1+(Sqrt[3])) Cos[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]-(-1+(Sqrt[3])) Sin[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]) (1+Sec[s]+Tan[s]))))^2)))]] Sin[10 °] (-3 Cos[15 °-(s/2)-ArcCos[(((Sqrt[((Sec[s])^2) ((Sin[(s/2)])^2)]) ((Sqrt[3]) ((Cos[s])^2)+3 (((1+Sin[s]))^2)))/((Sqrt[6]) (1+Sin[s]) (Sqrt[(((((Cos[s])^2)+3 (((1+Sin[s]))^2)) ((Tan[s])^2))/(((1+Cos[s]+Sin[s]))^2))])))]]+(Sqrt[3]) Sin[15 °-(s/2)-ArcCos[(((Sqrt[((Sec[s])^2) ((Sin[(s/2)])^2)]) ((Sqrt[3]) ((Cos[s])^2)+3 (((1+Sin[s]))^2)))/((Sqrt[6]) (1+Sin[s]) (Sqrt[(((((Cos[s])^2)+3 (((1+Sin[s]))^2)) ((Tan[s])^2))/(((1+Cos[s]+Sin[s]))^2))])))]]) ((1+(Sqrt[3])) Cos[15 °-ArcCos[(((-1+(Sqrt[3])) (3 Cos[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]-(Sqrt[3]) Sin[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]) ((Tan[s])^2))/(12 (Sqrt[3]) ((1+(Sqrt[3])) Cos[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]-(-1+(Sqrt[3])) Sin[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]) (((1+Sec[s]+Tan[s]))^2))+(((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))) (((Tan[s])/2)-((1+(Sqrt[3])) (3 Cos[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]-(Sqrt[3]) Sin[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]) Tan[s])/(6 ((1+(Sqrt[3])) Cos[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]-(-1+(Sqrt[3])) Sin[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √(((((-1+(Sqrt[3])))^2) (((3 Cos[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]-(Sqrt[3]) Sin[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]))^2) ((Tan[s])^2))/(36 ((((1+(Sqrt[3])) Cos[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]-(-1+(Sqrt[3])) Sin[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]))^2) (((1+Sec[s]+Tan[s]))^2))+(((((Tan[s])/2)-((1+(Sqrt[3])) (3 Cos[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]-(Sqrt[3]) Sin[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]) Tan[s])/(6 ((1+(Sqrt[3])) Cos[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]-(-1+(Sqrt[3])) Sin[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]) (1+Sec[s]+Tan[s]))))^2)))]]-(-1+(Sqrt[3])) Sin[15 °-ArcCos[(((-1+(Sqrt[3])) (3 Cos[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]-(Sqrt[3]) Sin[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]) ((Tan[s])^2))/(12 (Sqrt[3]) ((1+(Sqrt[3])) Cos[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]-(-1+(Sqrt[3])) Sin[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]) (((1+Sec[s]+Tan[s]))^2))+(((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))) (((Tan[s])/2)-((1+(Sqrt[3])) (3 Cos[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]-(Sqrt[3]) Sin[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]) Tan[s])/(6 ((1+(Sqrt[3])) Cos[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]-(-1+(Sqrt[3])) Sin[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √(((((-1+(Sqrt[3])))^2) (((3 Cos[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]-(Sqrt[3]) Sin[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]))^2) ((Tan[s])^2))/(36 ((((1+(Sqrt[3])) Cos[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]-(-1+(Sqrt[3])) Sin[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]))^2) (((1+Sec[s]+Tan[s]))^2))+(((((Tan[s])/2)-((1+(Sqrt[3])) (3 Cos[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]-(Sqrt[3]) Sin[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]) Tan[s])/(6 ((1+(Sqrt[3])) Cos[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]-(-1+(Sqrt[3])) Sin[15 °-(s/2)-ArcCos[((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+((Tan[s] (1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))/(2 (Sqrt[3]) (1+Sec[s]+Tan[s]))))/(√((((Tan[s])^2)/(12 (((1+Sec[s]+Tan[s]))^2)))+(((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)) √((((((Tan[s])/2)-((Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)+(((1-((2+2 Sec[s]+Tan[s])/(2 (1+Sec[s]+Tan[s])))))^2)))]]) (1+Sec[s]+Tan[s]))))^2)))]]) (-1+Tan[(s/2)]) Tan[s])/(12 (Cos[15 °-(s/2)-ArcCos[(((Sqrt[((Sec[s])^2) ((Sin[(s/2)])^2)]) ((Sqrt[3]) ((Cos[s])^2)+3 (((1+Sin[s]))^2)))/((Sqrt[6]) (1+Sin[s]) (Sqrt[(((((Cos[s])^2)+3 (((1+Sin[s]))^2)) ((Tan[s])^2))/(((1+Cos[s]+Sin[s]))^2))])))]]+(Sqrt[3]) Cos[15 °-(s/2)-ArcCos[(((Sqrt[((Sec[s])^2) ((Sin[(s/2)])^2)]) ((Sqrt[3]) ((Cos[s])^2)+3 (((1+Sin[s]))^2)))/((Sqrt[6]) (1+Sin[s]) (Sqrt[(((((Cos[s])^2)+3 (((1+Sin[s]))^2)) ((Tan[s])^2))/(((1+Cos[s]+Sin[s]))^2))])))]]+Sin[15 °-(s/2)-ArcCos[(((Sqrt[((Sec[s])^2) ((Sin[(s/2)])^2)]) ((Sqrt[3]) ((Cos[s])^2)+3 (((1+Sin[s]))^2)))/((Sqrt[6]) (1+Sin[s]) (Sqrt[(((((Cos[s])^2)+3 (((1+Sin[s]))^2)) ((Tan[s])^2))/(((1+Cos[s]+Sin[s]))^2))])))]]-(Sqrt[3]) Sin[15 °-(s/2)-ArcCos[(((Sqrt[((Sec[s])^2) ((Sin[(s/2)])^2)]) ((Sqrt[3]) ((Cos[s])^2)+3 (((1+Sin[s]))^2)))/((Sqrt[6]) (1+Sin[s]) (Sqrt[(((((Cos[s])^2)+3 (((1+Sin[s]))^2)) ((Tan[s])^2))/(((1+Cos[s]+Sin[s]))^2))])))]]))},
{Cos[-(70°+s/2+s1[s]+s3[s])]*d,0,Sin[-(70°+s/2+s1[s]+s3[s])]*d,0}+s3p[s]]

Now the functions to rotate the sink flaps into place.

nD4V[A_,B_,t_]:=ArcCos[((Cos[B] Cos[t] Sin[A]+Cos[A] Sin[B]) (Cos[B] Sin[A]+Cos[A] Cos[t] Sin[B])-Sin[A] Sin[B] ((Sin[t])^2))/(√(((((Cos[B] Cos[t] Sin[A]+Cos[A] Sin[B]))^2)+((Sin[A])^2) ((Sin[t])^2)) ((((Cos[B] Sin[A]+Cos[A] Cos[t] Sin[B]))^2)+((Sin[B])^2) ((Sin[t])^2))))]
x7[s_,t_]:=RX[t/2].(({{1, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, 1, -1/2}, {0, 0, 0, 1}})).RY[-30°].RX[-phi1[t]].RY[30°].RY[30°].RX[-phi1[t]].RY[-30°].RY[60°].RX[-vphi1[t]].RY[-60°].RY[90°-s].RX[q1at[s,t]].RY[-(90°-s)].(({{1, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, 1, 1/2}, {0, 0, 0, 1}})).(({{1, 0, 0, -Tan[s]/2}, {0, 1, 0, 0}, {0, 0, 1, -1}, {0, 0, 0, 1}})).RY[(Pi/2-(Pi/4+s/2))].RX[-nD4V[Pi/4,Pi/4+s/2,q2a[s,t]]].RY[-(Pi/2-(Pi/4+s/2))].(({{1, 0, 0, Tan[s]/2}, {0, 1, 0, 0}, {0, 0, 1, 1}, {0, 0, 0, 1}})).s1p[s]
x8[s_,t_]:=RX[t/2].(({{1, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, 1, -1/2}, {0, 0, 0, 1}})).RY[-30°].RX[-phi1[t]].RY[30°].RY[30°].RX[-phi1[t]].RY[-30°].RY[60°].RX[-vphi1[t]].RY[-60°].RY[90°-s].RX[q1at[s,t]].RY[-(90°-s)].(({{1, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, 1, 1/2}, {0, 0, 0, 1}})).(({{1, 0, 0, -Tan[s]/2}, {0, 1, 0, 0}, {0, 0, 1, -1}, {0, 0, 0, 1}})).RY[(Pi/2-(Pi/4+s/2))].RX[-nD4V[Pi/4,Pi/4+s/2,q2a[s,t]]].RY[-(Pi/2-(Pi/4+s/2))].RY[(Pi/2-(Pi/4+s/2+s1[s]))].RX[nD4V[Pi/3,Pi/4+s/2+s1[s],q2a[s,t]]].RY[-(Pi/2-(Pi/4+s/2+s1[s]))].(({{1, 0, 0, Tan[s]/2}, {0, 1, 0, 0}, {0, 0, 1, 1}, {0, 0, 0, 1}})).s2p[s]
x9[s_,t_]:=RX[t/2].(({{1, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, 1, -1/2}, {0, 0, 0, 1}})).RY[-30°].RX[-phi1[t]].RY[30°].RY[30°].RX[-phi1[t]].RY[-30°].RY[60°].RX[-vphi1[t]].RY[-60°].RY[90°-s].RX[q1at[s,t]].RY[-(90°-s)].(({{1, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, 1, 1/2}, {0, 0, 0, 1}})).(({{1, 0, 0, -Tan[s]/2}, {0, 1, 0, 0}, {0, 0, 1, -1}, {0, 0, 0, 1}})).RY[(Pi/2-(Pi/4+s/2))].RX[-nD4V[Pi/4,Pi/4+s/2,q2a[s,t]]].RY[-(Pi/2-(Pi/4+s/2))].RY[(Pi/2-(Pi/4+s/2+s1[s]))].RX[nD4V[Pi/3,Pi/4+s/2+s1[s],q2a[s,t]]].RY[-(Pi/2-(Pi/4+s/2+s1[s]))].RY[(Pi/2-(Pi/4+s/2+s1[s]+s2[s]))].RX[-nD4V[Pi/3+s/2+s1[s],Pi/3+s2[s],q2a[s,t]]].RY[-(Pi/2-(Pi/4+s/2+s1[s]+s2[s]))].(({{1, 0, 0, Tan[s]/2}, {0, 1, 0, 0}, {0, 0, 1, 1}, {0, 0, 0, 1}})).s3p[s]
x10[s_,t_]:=RX[t/2].(({{1, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, 1, -1/2}, {0, 0, 0, 1}})).RY[-30°].RX[-phi1[t]].RY[30°].RY[30°].RX[-phi1[t]].RY[-30°].RY[60°].RX[-vphi1[t]].RY[-60°].RY[90°-s].RX[q1at[s,t]].RY[-(90°-s)].(({{1, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, 1, 1/2}, {0, 0, 0, 1}})).(({{1, 0, 0, -Tan[s]/2}, {0, 1, 0, 0}, {0, 0, 1, -1}, {0, 0, 0, 1}})).RY[(Pi/2-(Pi/4+s/2))].RX[-nD4V[Pi/4,Pi/4+s/2,q2a[s,t]]].RY[-(Pi/2-(Pi/4+s/2))].RY[(Pi/2-(Pi/4+s/2+s1[s]))].RX[nD4V[Pi/3,Pi/4+s/2+s1[s],q2a[s,t]]].RY[-(Pi/2-(Pi/4+s/2+s1[s]))].RY[(Pi/2-(Pi/4+s/2+s1[s]+s2[s]))].RX[-nD4V[Pi/3+s/2+s1[s],Pi/3+s2[s],q2a[s,t]]].RY[-(Pi/2-(Pi/4+s/2+s1[s]+s2[s]))].RY[(Pi/2-(Pi/4+s/2+s1[s]+s2[s]+s3[s]))].RX[nD4V[Pi/3+s/2+s1[s]+s3[s],13Pi/36+s2[s],q2a[s,t]]].RY[-(Pi/2-(Pi/4+s/2+s1[s]+s2[s]+s3[s]))].(({{1, 0, 0, Tan[s]/2}, {0, 1, 0, 0}, {0, 0, 1, 1}, {0, 0, 0, 1}})).s4p[s]

Once the above cell group is executed, the below Manipulate should work.

Manipulate[
Graphics3D[{
Polygon[{Q[x0],Q[x1],Q[b[t]]}],
Polygon[{Q[b[t]],Q[x1],Q[x2[t]]}],
Polygon[{Q[b[t]],Q[x2[t]],Q[x3[t]]}],
Polygon[{Q[b[t]],Q[x3[t]],Q[x4[s,t]]}],
Polygon[{Q[b[t]],Q[x4[s,t]],Q[x5[s,t]]}],
Polygon[{Q[b[t]],Q[x5[s,t]],Q[x6[s,t]]}],
Polygon[{Q[x4[s,t]],Q[x5[s,t]],Q[x7[s,t]]}],
Polygon[{Q[x0],Q[x5[s,t]],Q[x7[s,t]]}],
Polygon[{Q[x4[s,t]],Q[x7[s,t]],Q[x8[s,t]]}],
Polygon[{Q[x0],Q[x7[s,t]],Q[x8[s,t]]}],
Polygon[{Q[x4[s,t]],Q[x8[s,t]],Q[x9[s,t]]}],
Polygon[{Q[x0],Q[x8[s,t]],Q[x9[s,t]]}],
Polygon[{Q[x4[s,t]],Q[x9[s,t]],Q[x10[s,t]]}],
Polygon[{Q[x0],Q[x9[s,t]],Q[x10[s,t]]}],
Polygon[{Q[x0],Q[x1],Q[Ref[b[t]]]}],
Polygon[{Q[Ref[b[t]]],Q[x1],Q[Ref[x2[t]]]}],
Polygon[{Q[Ref[b[t]]],Q[Ref[x2[t]]],Q[Ref[x3[t]]]}],
Polygon[{Q[Ref[b[t]]],Q[Ref[x3[t]]],Q[Ref[x4[s,t]]]}],
Polygon[{Q[Ref[b[t]]],Q[Ref[x4[s,t]]],Q[Ref[x5[s,t]]]}],
Polygon[{Q[Ref[b[t]]],Q[Ref[x5[s,t]]],Q[Ref[x6[s,t]]]}],
Polygon[{Q[x4[s,t]],Q[Ref[x5[s,t]]],Q[Ref[x7[s,t]]]}],
Polygon[{Q[x0],Q[Ref[x5[s,t]]],Q[Ref[x7[s,t]]]}],
Polygon[{Q[x4[s,t]],Q[Ref[x7[s,t]]],Q[Ref[x8[s,t]]]}],
Polygon[{Q[x0],Q[Ref[x7[s,t]]],Q[Ref[x8[s,t]]]}],
Polygon[{Q[x4[s,t]],Q[Ref[x8[s,t]]],Q[Ref[x9[s,t]]]}],
Polygon[{Q[x0],Q[Ref[x8[s,t]]],Q[Ref[x9[s,t]]]}],
Polygon[{Q[x4[s,t]],Q[Ref[x9[s,t]]],Q[Ref[x10[s,t]]]}],
Polygon[{Q[x0],Q[Ref[x9[s,t]]],Q[Ref[x10[s,t]]]}]
},Boxed->False,PlotRange->{{-1,1},{-1,1},{-1,1}}],
{{s,.1},0,.3},{t,0.000001,Pi-.00001}]

Rotate the tetrahedron to get better views of it and press the Command key (on a Mac) while mousing to zoom-in. Press Shift and mouse to move the image left-right and up-down.

Also notice that having a slit angle of less than approx. 0.0919 will cause errors. That is because such an angle corresponds to the minimum-possible slit length, which is about 0.0461201 (when a side length of the tetrahedron is 1).