Triakis Tetrahedral Graph

Author

Eric W. Weisstein
July 25, 2024

This notebook downloaded from http://mathworld.wolfram.com/notebooks/GraphTheory/TriakisTetrahedralGraph.nb.

For more information, see Eric's MathWorld entry http://mathworld.wolfram.com/TriakisTetrahedralGraph.html.

©2024 Wolfram Research, Inc. except for portions noted otherwise

Embeddings

Names

GraphData["TriakisTetrahedralGraph","StandardName"]

GraphData["TriakisTetrahedralGraph","StandardNames"]

Primary

GraphData["TriakisTetrahedralGraph"]//StyleGraphs[#,ImageSize->Small]&

Construction as square of {"Sunlet", 4}

GraphData[{"Sunlet",4},"Graph","All"]

gs=GraphPower[#,2]&/@GraphData[{"Sunlet",4},"Graph","All"]

RecognizeGraph/@gs

Select[gs,!DegenerateGraphEmbeddingQ[#]&]

All

GraphData["TriakisTetrahedralGraph","Graph","All"]//StyleGraphs

Default embedding

GraphPlot@GraphData["TriakisTetrahedralGraph","Edges"]

v={};
g=Graph[Range[Length[v]],UndirectedEdge@@@{},VertexCoordinates->v,VertexLabels->Automatic]

RecognizeGraph[g]

Embedding types

GraphDataEmbeddings[GraphData["TriakisTetrahedralGraph","EdgeList"]]

Degenerate

GraphData["TriakisTetrahedralGraph","Graph","Degenerate"]//StyleGraphs

Circular

GraphData["TriakisTetrahedralGraph","Graph","Circular"]//StyleGraphs

Circular construction

GraphData["TriakisTetrahedralGraph","Hamiltonian"]

GraphData["TriakisTetrahedralGraph","HamiltonianCycleCount"]

Length[hc=FindHamiltonianCycle[GraphData["TriakisTetrahedralGraph"],All][[All,All,1]]]

circ=CircularEmbeddingFromHamiltonianCycle[GraphData["TriakisTetrahedralGraph"],#]&/@hc

Length[bilat=DeleteDuplicatesBy[
DeleteMissing[BilaterallyRotatedGraph/@circ],
CircularCanonicalGraphEmbedding]]//Timing

gs=bilat

Planar

GraphData["TriakisTetrahedralGraph","Planar"]

GraphData["TriakisTetrahedralGraph","Graph","Planar"]//StyleGraphs

Tutte embeddings

faces=ReverseSort@SymmetricallyDistinctFaces[GraphData["TriakisTetrahedralGraph"]]

Tally[ReverseSort[Length/@faces]]

IGLayoutTutte[GraphData["TriakisTetrahedralGraph"],"OuterFace"->#]&/@faces

gs=Annotate[#,{VertexLabels->None,ImageSize->Tiny}]&/@{}

RecognizeGraph/@gs

Tutte embedding construction 3

GraphPlot[RotateGraph[,-2Pi/3]]

v=Join[{{-1,0},{1,0},{0,Sqrt[3]},{0,1/4},{-1/4,1/2},{0,1/2},{1/4,1/2},{0,1}}];
g=Graph[Range[Length[v]],UndirectedEdge@@@{e[1,2,3,1,4,2,7,6,5,1,8,2],e[4,6,8,3],e[5,8,7],e[1,6,2]},VertexCoordinates->v,VertexLabels->Automatic]

RecognizeGraph[g]

Circulant

GraphData["TriakisTetrahedralGraph","Circulant"]

GraphData["TriakisTetrahedralGraph","Graph","Circulant"]//StyleGraphs

Halin

GraphData["TriakisTetrahedralGraph","Halin"]

GraphData["TriakisTetrahedralGraph","Graph","Halin"]//StyleGraphs

LCF

GraphData["TriakisTetrahedralGraph","LCF"]

GraphData["TriakisTetrahedralGraph","LCFSignature"]

GraphData["TriakisTetrahedralGraph","Graph","LCF"]//StyleGraphs

UnitDistance

GraphData["TriakisTetrahedralGraph","UnitDistance"]

UnitDistanceGraphQ[GraphData["TriakisTetrahedralGraph"],Debug->True]//Timing

GraphData["TriakisTetrahedralGraph","Graph","UnitDistance"]//StyleGraphs

Matchstick

GraphData["TriakisTetrahedralGraph","Matchstick"]

GraphData["TriakisTetrahedralGraph","Graph","Matchstick"]//StyleGraphs

3D default

Graph3D[GraphData["TriakisTetrahedralGraph","Edges"]]

3D All

GraphData["TriakisTetrahedralGraph","Graph",{"3D","All"}]

3D UnitDistance

GraphData["TriakisTetrahedralGraph","Graph",{"3D","UnitDistance"}]

3D Polyhedron

GraphData["TriakisTetrahedralGraph","Polyhedral"]

GraphData["TriakisTetrahedralGraph","Graph",{"3D","Polyhedron"}]

Graphics3D[{FaceForm[Green,Red],GraphData["TriakisTetrahedralGraph","Polyhedron"]}]

3D Canonical

GraphData["TriakisTetrahedralGraph","Graph",{"3D","Canonical"}]

Graphics3D[{Opacity[.5],Red,GraphData["TriakisTetrahedralGraph","Polyhedron","Canonical"],Yellow,Sphere[]}]

3D Canonical construction

Graphics3D[{FaceForm[Green,Red],poly=GraphPolyhedron[GraphData["TriakisTetrahedralGraph"],1]}]

(can=FindCanonicalPolyhedron[poly,WorkingPrecision->50,MaxIterations->50000,PrecisionGoal->20,"ProgressInterval"->1000,"TangentFactor"->1/10,"PlanarFactor"->1/10,Debug->True])//Timing

SimplePolyhedronQ[can]

If[%===False,Quit[]]

Graphics3D[{Opacity[.5],Red,can,Yellow,Sphere[]}]

(lens=Mean/@Split[Sort[PolyhedronEdgeLengths[can]],Abs[#1-#2]<1.*^-10&])//N

v=PolyhedronCoordinates[can];

colors=With[{n=Length[lens]},Table[Hue[i/n],{i,0,n-1}]]

Graphics3D[{Thick,Sequence@@Nearest[Thread[lens->colors],EuclideanDistance@@v[[#]]],Line[v[[#]]]}&/@PolyhedronEdges[can],Boxed->False]

g=PolyhedronGraph[can]

Perspective projections

Manipulate[PolyhedronProjectionGraph[PolyhedronData["TriakisTetrahedron","Polyhedron"],{a,b,c}],{a,-1,1},{b,-1,1},{c,-1,1}]

{-(1/(Sqrt[3])),1,((2 (Sqrt[(2/3)]))/5),-ArcCot[(9/(Sqrt[2]))]}

g=PolyhedronProjectionGraph[PolyhedronData["TriakisTetrahedron","Polyhedron"],{-(1/(Sqrt[3])),1,((2 (Sqrt[(2/3)]))/5),-ArcCot[(9/(Sqrt[2]))]},VertexLabels->"Name"]

v=GraphEmbedding[g];

ArcTan@@(v[[3]]-v[[7]])//FullSimplify

g=PolyhedronProjectionGraph[PolyhedronData["TriakisTetrahedron","Polyhedron"],{-.55,1,.325},VertexLabels->"Name"]

g=PolyhedronProjectionGraph[PolyhedronData["TriakisTetrahedron","Polyhedron"],{x,1,y},VertexLabels->"Name"]

v=GraphEmbedding[g];

FullSimplify[v[[2]]==v[[6]],x<0&&y>0]

Solve[%,{x,y}]//FullSimplify

{(1/(8 (Sqrt[2]))), ((Sqrt[(3/2)])/8), 1}

g=PolyhedronProjectionGraph[PolyhedronData["TriakisTetrahedron","Polyhedron"],{(1/(8 (Sqrt[2]))),((Sqrt[(3/2)])/8),1,ArcTan[((4 (Sqrt[(2/11)]))/3)]},VertexLabels->"Name"]

v=GraphEmbedding[g];

ArcTan@@(v[[3]]-v[[6]])//FullSimplify

g=PolyhedronProjectionGraph[PolyhedronData["TriakisTetrahedron","Polyhedron"],{x,y,1},VertexLabels->"Name"]

v=GraphEmbedding[g];

FullSimplify[CollinearPoints[v[[#]]]&/@{{4,2,1},{3,4,6}},x>0&&y>0]

Solve[%,{x,y}]//FullSimplify

{(1/(4 (Sqrt[2]))),((Sqrt[(3/2)])/4),1,ArcTan[((2 (Sqrt[(2/3)]))/3)]}

g=PolyhedronProjectionGraph[PolyhedronData["TriakisTetrahedron","Polyhedron"],{(1/(4 (Sqrt[2]))),((Sqrt[(3/2)])/4),1,ArcTan[((2 (Sqrt[(2/3)]))/3)]},VertexLabels->"Name"]

v=GraphEmbedding[g];

ArcTan@@(v[[3]]-v[[6]])//FullSimplify

g=PolyhedronProjectionGraph[PolyhedronData["TriakisTetrahedron","Polyhedron"],{.2,.35,1},VertexLabels->"Name"]

g=PolyhedronProjectionGraph[PolyhedronData["TriakisTetrahedron","Polyhedron"],{x,y,1},VertexLabels->"Name"]

v=GraphEmbedding[g];

FullSimplify[CollinearPoints[v[[#]]]&/@{{4,2,1},{1,5,8}},x>0&&y>0]

Solve[%,{x,y}]

{(Sqrt[2]),0,1}

g=PolyhedronProjectionGraph[PolyhedronData["TriakisTetrahedron","Polyhedron"],{(Sqrt[2]),0,1},VertexLabels->"Name"]

{1, 0, 0}

g=PolyhedronProjectionGraph[PolyhedronData["TriakisTetrahedron","Polyhedron"],{1,z,z},VertexLabels->"Name"]

v=GraphEmbedding[g];

Limit[v,z->0,Direction->"FromAbove"]

g1=SetProperty[g,VertexCoordinates->%]

v=GraphEmbedding[g1];

ArcTan@@(v[[6]]-v[[7]])//FullSimplify

FullSimplify[RotationMatrix[π/4].#&/@v]

SetProperty[g1,VertexCoordinates->%]

{0, 1, 0, π-ArcTan[(Sqrt[2])]}

g=PolyhedronProjectionGraph[PolyhedronData["TriakisTetrahedron","Polyhedron"],{0,1,0,π-ArcTan[(Sqrt[2])]},VertexLabels->"Name"]

v=GraphEmbedding[g]

ArcTan@@(v[[3]]-v[[1]])//FullSimplify

{0, 0, 1,π/6}}

g=PolyhedronProjectionGraph[PolyhedronData["TriakisTetrahedron","Polyhedron"],{0,0,1,π/6},VertexLabels->"Name"]

v=GraphEmbedding[g];

ArcTan@@(v[[6]]-v[[3]])//FullSimplify

Sterographic projections

PolyhedronData[poly]

Degenerate

GraphPlot[SkeletonGraph[PolyhedronData[poly,"Faces"]//Normal,#],Method->None]&/@{1.9,2.7,3,3.5,5,6}

rs=RecognizeGraph/@(gs=ToCombinatoricaGraph/@{})

ToCommonEdges[#,rs[[1]]]&/@gs

Manipulate[GraphPlot[SkeletonGraph[PolyhedronData[poly,"Faces"]//Normal,r],Method->None],{r,.1,10}]

Properties

Classes

GraphData[g,"Classes"]

Matrices

GraphicsRow[GraphMatrixPlot[GraphData["TruncatedTetrahedralGraph"]]]

Properties

GraphData[g,"Missing"]

GraphData[g,{"V","M"}]

TableForm[GraphDataTable[g,x],TableDepth->2]//TraditionalForm

GraphData

GraphClasses

GraphClassString[g]