Mongolian Tent Graph

Author

Eric W. Weisstein
June 8, 2022

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

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

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

Graphic

GraphicsGrid[Table[Show[StyleGraphs@MongolianTentGraph[m,n],PlotLabel->Subscript[Style["M",Italic],Sequence@@{m,n}],LabelStyle->Directive[18,FontFamily->"Times",FontColor->Black]],{n,3,7,2},{m,2,4}],Dividers->All]

Table

TextGrid[Table[{{m,n},RecognizeGraph[MongolianTentGraph[m,n]]},{n,3,9,2},{m,2,5}],Dividers->All]

UnitDistance

DeleteCases[{#,GraphData[#,"UnitDistance"]}&/@GraphData["MongolianTent"],{_,True}]

Embeddings

{"MongolianTent", {2, 3}} == {"Gear", 3}

GraphData[{"MongolianTent",{2,3}},"StandardName"]

{"MongolianTent", {2, 5}}

GraphData[{"MongolianTent",{2,5}},"StandardName"]

All

GraphData[{"MongolianTent",{2,5}},"Graph","All"]//StyleGraphs

Halin

GraphData[{"MongolianTent",{2,5}},"Graph","Halin"]//StyleGraphs

LCF

GraphData[{"MongolianTent",{2,5}},"LCFSignature"]

GraphData[{"MongolianTent",{2,5}},"Graph","LCF"]//StyleGraphs

UnitDistance

GraphData[{"MongolianTent",{2,5}},"UnitDistance"]

UnitDistanceGraphQ[GraphData[{"MongolianTent",{2,5}}],Debug->True]//Timing

GraphData[{"MongolianTent",{2,5}},"Graph","UnitDistance"]//StyleGraphs

Select[%,!FreeQ[GraphEmbedding[#],_?InexactNumberQ]&]

Select[UnitDistanceEmbeddingRefine/@Complement@@(GraphData[{"MongolianTent",{2,5}},"Graph",#]&/@{"All","UnitDistance"}),UnitDistanceGraphEmbeddingQ]

FindUnitDistanceEmbedding[GraphData[{"MongolianTent",{2,5}}],MaxIterations->5000,"ReturnWithMessage"->True]//Timing

UnitDistance FindSubgraphUnitDistanceEmbedding

{{"MongolianTent",{2,5}},l=FindSubgraphUnitDistanceEmbedding[GraphData[{"MongolianTent",{2,5}}],TimeConstraint->300,"Results"->All]//Timing}

gs=UniqueEmbeddings[l]

gs={,,,,,,,,};

Matchstick

GraphData[{"MongolianTent",{2,5}},"Graph","Matchstick"]//StyleGraphs

MinimalCrossing

GraphData[{"MongolianTent",{2,5}},{"RCN","CN"}]

GraphData[{"MongolianTent",{2,5}},"Graph","MinimalCrossing"]//StyleGraphs

Default embedding

GraphPlot@GraphData[{"MongolianTent",{2,5}},"Edges"]

e[l__]:=Sequence@@Partition[{l},2,1]
s=1+Sqrt[3]/2;
v=Join[Tuples[{-1,0,1},2],{{-s,0},{s,0}}];
g=Graph[Range[Length[v]],UndirectedEdge@@@{e[1,4,7,8,9,6,3,2,1,10,3],e[9,11,7],e[6,5,4],e[2,5,8]},VertexCoordinates->v,VertexLabels->Automatic]

RecognizeGraph[g]

GridGraph construction

g=GridGraph1[{2,2,3},GraphLayout->"UnitDistanceEmbedding",VertexLabels->"Name"]//Quiet

g2=IndexGraph@VertexDelete[g,8]

RecognizeGraph[g2]

UnitDistanceGraphEmbeddingQ[g2]

MinimalCrossing construction

GraphPlot@RotateGraph[MinimalCrossingGraph[GraphData[{"MongolianTent",{2,5}}],"CrossingNumber"->-1]]

e[l__]:=Sequence@@Partition[{l},2,1]
v=CirclePoints[{Csc[Pi/8]/2,Pi/2},8];
v=Join[v,{{0,v[[5,2]]-2(v[[2,2]]-v[[1,2]])},{0,0},{0,v[[1,2]]+2(v[[2,2]]-v[[1,2]])}}];
g=Graph[Range[Length[v]],UndirectedEdge@@@{e[1,2,3,4,5,6,7,8,1],e[2,11,8],e[4,9,6],e[3,10,7],e[9,10,11]},VertexCoordinates->v,VertexLabels->Automatic]

RecognizeGraph[g]

RectilinearCrossingCount[g]

3D default

Graph3D[GraphData[{"MongolianTent",{2,5}},"Edges"]]

3D All

GraphData[{"MongolianTent",{2,5}},"Graph",{"3D","All"}]

3D UnitDistance

GraphData[{"MongolianTent",{2,5}},"Graph",{"3D","UnitDistance"}]

3D Polyhedron

PolyhedralGraphQ[GraphData[{"MongolianTent",{2,5}}]]

GraphData[{"MongolianTent",{2,5}},"Graph",{"3D","Polyhedron"}]

{"MongolianTent", {2, 7}}

GraphData[{"MongolianTent",{2,7}},"StandardName"]

All

GraphData[{"MongolianTent",{2,7}},"Graph","All"]//StyleGraphs

Halin

GraphData[{"MongolianTent",{2,7}},"Graph","Halin"]//StyleGraphs

LCF

GraphData[{"MongolianTent",{2,7}},"LCFSignature"]

GraphData[{"MongolianTent",{2,7}},"Graph","LCF"]//StyleGraphs

UnitDistance

GraphData[{"MongolianTent",{2,7}},"UnitDistance"]

UnitDistanceGraphQ[GraphData[{"MongolianTent",{2,7}}],Debug->True]//Timing

GraphData[{"MongolianTent",{2,7}},"Graph","UnitDistance"]//StyleGraphs

Select[%,!FreeQ[GraphEmbedding[#],_?InexactNumberQ]&]

Select[UnitDistanceEmbeddingRefine/@Complement@@(GraphData[{"MongolianTent",{2,7}},"Graph",#]&/@{"All","UnitDistance"}),UnitDistanceGraphEmbeddingQ]

FindUnitDistanceEmbedding[GraphData[{"MongolianTent",{2,7}}],MaxIterations->5000,"ReturnWithMessage"->True]//Timing

UnitDistance FindSubgraphUnitDistanceEmbedding

{{"MongolianTent",{2,7}},TimeConstrained[FindSubgraphUnitDistanceEmbedding[GraphData[{"MongolianTent",{2,7}}],"Results"->All,TimeConstraint->300,Debug->Full],86400]//Timing}

gs=UniqueEmbeddings[l]

gs={,,,,,,,,,,,,,,,};

UnitDistance construction

GraphData[{"MongolianTent",{2,7}},"Graphics"]

Manipulate[
{x,y}=Through[{Cos,Sin}[q1]];
{a,b}={x,y}+Through[{Cos,Sin}[q2]];
g=Graph[Range[15],UndirectedEdge@@@{{1,2},{1,4},{1,5},{2,6},{2,7},{2,3},{3,8},{3,9},{4,6},{4,10},{5,10},{6,11},{6,12},{7,12},{7,14},{7,9},{8,15},{9,15},{10,11},{11,13},{12,13},{13,14},{14,15}},VertexCoordinates->{{-1,2y+1},{0,2y+1},{1,2y+1},{-a,b+1},{-1,2y},{-x,y+1},{x,y+1},{1,2y},{a,b+1},{-a,b},{-x,y},{0,1},{0,0},{x,y},{a,b}},VertexLabels->"Name"],
{{q1,.5},0,π},{{q2,.5},0,2π}]

π/4.

g=Module[{x,y,z,q1=π/4,q2=0},
{x,y}=Through[{Cos,Sin}[q1]];
{a,b}={x,y}+Through[{Cos,Sin}[q2]];Graph[Range[15],UndirectedEdge@@@{{1,2},{1,4},{1,5},{2,6},{2,7},{2,3},{3,8},{3,9},{4,6},{4,10},{5,10},{6,11},{6,12},{7,12},{7,14},{7,9},{8,15},{9,15},{10,11},{11,13},{12,13},{13,14},{14,15}},VertexCoordinates->{{-1,2y+1},{0,2y+1},{1,2y+1},{-a,b+1},{-1,2y},{-x,y+1},{x,y+1},{1,2y},{a,b+1},{-a,b},{-x,y},{0,1},{0,0},{x,y},{a,b}}]]

RecognizeGraph@g

UnitDistanceGraphEmbeddingQ@g

DegenerateEmbeddingQ@g

gs={g}

Matchstick

GraphData[{"MongolianTent",{2,7}},"Graph","Matchstick"]//StyleGraphs

MinimalCrossing

GraphData[{"MongolianTent",{2,7}},{"RCN","CN"}]

GraphData[{"MongolianTent",{2,7}},"Graph","MinimalCrossing"]//StyleGraphs

Default embedding

GraphPlot@GraphData[{"MongolianTent",{2,7}},"Edges"]

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

RecognizeGraph[g]

MinimalCrossing construction

GraphPlot@RotateGraph[MinimalCrossingGraph[GraphData[{"MongolianTent",{2,7}}],"CrossingNumber"->-1]]

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

RecognizeGraph[g]

RectilinearCrossingCount[g]

3D default

Graph3D[GraphData[{"MongolianTent",{2,7}},"Edges"]]

3D All

GraphData[{"MongolianTent",{2,7}},"Graph",{"3D","All"}]

3D UnitDistance

GraphData[{"MongolianTent",{2,7}},"Graph",{"3D","UnitDistance"}]

3D Polyhedron

GraphData[{"MongolianTent",{2,7}},"Graph",{"3D","Polyhedron"}]

{"MongolianTent", {2, 9}}

GraphData[{"MongolianTent", {2, 9}},"StandardName"]

All

GraphData[{"MongolianTent", {2, 9}},"Graph","All"]//StyleGraphs

Halin

GraphData[{"MongolianTent", {2, 9}},"Graph","Halin"]//StyleGraphs

LCF

GraphData[{"MongolianTent", {2, 9}},"LCFSignature"]

GraphData[{"MongolianTent", {2, 9}},"Graph","LCF"]//StyleGraphs

UnitDistance

GraphData[{"MongolianTent", {2, 9}},"UnitDistance"]

UnitDistanceGraphQ[GraphData[{"MongolianTent", {2, 9}}],Debug->True]//Timing

GraphData[{"MongolianTent", {2, 9}},"Graph","UnitDistance"]//StyleGraphs

Select[%,!FreeQ[GraphEmbedding[#],_?InexactNumberQ]&]

Select[UnitDistanceEmbeddingRefine/@Complement@@(GraphData[{"MongolianTent", {2, 9}},"Graph",#]&/@{"All","UnitDistance"}),UnitDistanceGraphEmbeddingQ]

FindUnitDistanceEmbedding[GraphData[{"MongolianTent", {2, 9}}],MaxIterations->5000,"ReturnWithMessage"->True]//Timing

UnitDistance FindSubgraphUnitDistanceEmbedding

{{"MongolianTent", {2, 9}},l=FindSubgraphUnitDistanceEmbedding[GraphData[{"MongolianTent", {2, 9}}],TimeConstraint->300,"Results"->All]//Timing}

gs=UniqueEmbeddings[l]

gs={,,,,,,,,};

UnitDistance construction attempt

Show[GraphData[{"MongolianTent",{2,9}},"Graphics"],PlotRange->10]

UnitDistanceEmbeddingRefine[GraphicsToGraph[]]

UnitDistanceGraphEmbeddingQ[%]

Matchstick

GraphData[{"MongolianTent", {2, 9}},"Graph","Matchstick"]//StyleGraphs

MinimalCrossing

GraphData[{"MongolianTent", {2, 9}},{"RCN","CN"}]

GraphData[{"MongolianTent", {2, 9}},"Graph","MinimalCrossing"]//StyleGraphs

Default embedding

GraphPlot@GraphData[{"MongolianTent", {2, 9}},"Edges"]

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

RecognizeGraph[g]

MinimalCrossing construction

GraphPlot@RotateGraph[MinimalCrossingGraph[GraphData[{"MongolianTent", {2, 9}}],"CrossingNumber"->-1]]

RotateGraph[GraphicsToGraph@,{6,4}]

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

RecognizeGraph[g]

RectilinearCrossingCount[g]

3D default

Graph3D[GraphData[{"MongolianTent", {2, 9}},"Edges"]]

3D All

GraphData[{"MongolianTent", {2, 9}},"Graph",{"3D","All"}]

3D UnitDistance

GraphData[{"MongolianTent", {2, 9}},"Graph",{"3D","UnitDistance"}]

3D Polyhedron

GraphData[{"MongolianTent", {2, 9}},"Graph",{"3D","Polyhedron"}]

{"MongolianTent", {3, 3}}

GraphData[{"MongolianTent",{3,3}},"StandardName"]

All

GraphData[{"MongolianTent",{3,3}},"Graph","All"]//StyleGraphs

Halin

GraphData[{"MongolianTent",{3,3}},"Graph","Halin"]//StyleGraphs

LCF

GraphData[{"MongolianTent",{3,3}},"LCFSignature"]

GraphData[{"MongolianTent",{3,3}},"Graph","LCF"]//StyleGraphs

UnitDistance

GraphData[{"MongolianTent",{3,3}},"UnitDistance"]

UnitDistanceGraphQ[GraphData[{"MongolianTent",{3,3}}],Debug->True]//Timing

GraphData[{"MongolianTent",{3,3}},"Graph","UnitDistance"]//StyleGraphs

Select[%,!FreeQ[GraphEmbedding[#],_?InexactNumberQ]&]

Select[UnitDistanceEmbeddingRefine/@Complement@@(GraphData[{"MongolianTent",{3,3}},"Graph",#]&/@{"All","UnitDistance"}),UnitDistanceGraphEmbeddingQ]

FindUnitDistanceEmbedding[GraphData[{"MongolianTent",{3,3}}],MaxIterations->5000,"ReturnWithMessage"->True]//Timing

UnitDistance FindSubgraphUnitDistanceEmbedding

{{"MongolianTent",{3,3}},l=FindSubgraphUnitDistanceEmbedding[GraphData[{"MongolianTent",{3,3}}],TimeConstraint->300,"Results"->All]//Timing}

gs=UniqueEmbeddings[l]

gs={,,,,,,,,,};

Matchstick

GraphData[{"MongolianTent",{3,3}},"Graph","Matchstick"]//StyleGraphs

MinimalCrossing

GraphData[{"MongolianTent",{3,3}},{"RCN","CN"}]

GraphData[{"MongolianTent",{3,3}},"Graph","MinimalCrossing"]//StyleGraphs

Default embedding

GraphPlot@GraphData[{"MongolianTent",{3,3}},"Edges"]

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

RecognizeGraph[g]

GridGraphConstruction

g0=GridGraph1[{2,2,3},GraphLayout->"UnitDistanceEmbedding",VertexLabels->"Name"]//Quiet

g1=VertexDelete[g0,Range[7,11,4]]

r=RecognizeGraph[g1]

g=IndexGraph[g1]

g2=VertexDelete[g0,Range[2,6,4]]

g=IndexGraph[g2]

r=RecognizeGraph[g]

MinimalCrossing construction

GraphPlot@RotateGraph[MinimalCrossingGraph[GraphData[{"MongolianTent",{3,3}}],"CrossingNumber"->-1],{6,4}]

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

RecognizeGraph[g]

RectilinearCrossingCount[g]

3D default

Graph3D[GraphData[{"MongolianTent",{3,3}},"Edges"]]

3D All

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

3D UnitDistance

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

3D Polyhedron

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

{"MongolianTent", {3, 5}}

GraphData[{"MongolianTent",{3,5}},"StandardName"]

All

GraphData[{"MongolianTent",{3,5}},"Graph","All"]//StyleGraphs

Halin

GraphData[{"MongolianTent",{3,5}},"Graph","Halin"]//StyleGraphs

LCF

GraphData[{"MongolianTent",{3,5}},"LCFSignature"]

GraphData[{"MongolianTent",{3,5}},"Graph","LCF"]//StyleGraphs

UnitDistance

GraphData[{"MongolianTent",{3,5}},"UnitDistance"]

UnitDistanceGraphQ[GraphData[{"MongolianTent",{3,5}}],Debug->True]//Timing

GraphData[{"MongolianTent",{3,5}},"Graph","UnitDistance"]//StyleGraphs

Select[%,!FreeQ[GraphEmbedding[#],_?InexactNumberQ]&]

Select[UnitDistanceEmbeddingRefine/@Complement@@(GraphData[{"MongolianTent",{3,5}},"Graph",#]&/@{"All","UnitDistance"}),UnitDistanceGraphEmbeddingQ]

FindUnitDistanceEmbedding[GraphData[{"MongolianTent",{3,5}}],MaxIterations->5000,"ReturnWithMessage"->True]//Timing

UnitDistance FindSubgraphUnitDistanceEmbedding

{{"MongolianTent",{3,5}},l=FindSubgraphUnitDistanceEmbedding[GraphData[{"MongolianTent",{3,5}}],TimeConstraint->300,"Results"->All]//Timing}

gs=UniqueEmbeddings[l]

gs={,,,,,,,,,,};

UnitDistance construction

GraphData[{"MongolianTent",{3,5}},"Graphics"]

e={};
s=Sqrt[2]/2;

v={{0,0},{0,-1},{0,-2},{s,s},{0,2s},{-s,s},{-s,s-1},{-s,s-2},{s,s-1},{s,s-2},{1,2s},{1,2s-1},{1,2s-2},{s+1,s},{s+1,s-1},{s+1,s-2}};

e=Select[Subsets[Range[16],{2}],EuclideanDistance@@v[[#]]==1.&]

g=Graph[Range[16],UndirectedEdge@@@e,VertexCoordinates->v,VertexLabels->"Name"]

RecognizeGraph@g

UnitDistanceGraphEmbeddingQ@g

e={};
s=Sqrt[2]/2;

v={{0,0},{0,-1},{0,-2},{s,s},{0,2s},{-s,s},{-s,s-1},{-s,s-2},{s,s-1},{s,s-2},{1,2s},{1,2s-1},{1,2s-2},{s+1,s},{s+1,s-1},{s+1,s-2},{2,2s},{s+2,s},{s+2,s-1},{s+2,s-2}};

e=Select[Subsets[Range[20],{2}],EuclideanDistance@@v[[#]]==1.&]

g=Graph[Range[20],UndirectedEdge@@@e,VertexCoordinates->v,VertexLabels->"Name"]

Matchstick

GraphData[{"MongolianTent",{3,5}},"Graph","Matchstick"]//StyleGraphs

MinimalCrossing

GraphData[{"MongolianTent",{3,5}},{"RCN","CN"}]

GraphData[{"MongolianTent",{3,5}},"Graph","MinimalCrossing"]//StyleGraphs

Default embedding

GraphPlot@GraphData[{"MongolianTent",{3,5}},"Edges"]

v=Delete[Flatten[Outer[List,{-2,-1,0,1,2},{0,1,2,3},2],1],List/@{2,18,5,13}];
g=Graph[Range[Length[v]],UndirectedEdge@@@{e[1,7,14,15,16,13,10,6,3,2,1,4,8,11,14],e[2,5,9,12,15],e[6,5,4],e[13,12,11],e[10,9,8,7]},VertexCoordinates->v,VertexLabels->Automatic]

RecognizeGraph[g]

GridGraph construction

GraphData[{"MongolianTent",{2,5}},"Graph","UnitDistance"]

g0=GridGraph1[{2,2,5},GraphLayout->"UnitDistance",VertexLabels->"Name"]

g=VertexDelete[g0,Range[6,14,4]]

{VertexCount[g],EdgeCount[g]}

GraphData[{"MongolianTent",{3,5}},{"V","E"}]

GraphData[{"MongolianTent",{3,5}},"V"]

RecognizeGraph@%

MinimalCrossing construction

GraphPlot@RotateGraph[MinimalCrossingGraph[GraphData[{"MongolianTent",{3,5}}],"CrossingNumber"->-1],{2,4}]

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

RecognizeGraph[g]

RectilinearCrossingCount[g]

3D default

Graph3D[GraphData[{"MongolianTent",{3,5}},"Edges"]]

3D All

GraphData[{"MongolianTent",{3,5}},"Graph",{"3D","All"}]

3D UnitDistance

GraphData[{"MongolianTent",{3,5}},"Graph",{"3D","UnitDistance"}]

3D Polyhedron

GraphData[{"MongolianTent",{3,5}},"Graph",{"3D","Polyhedron"}]

{"MongolianTent", {3, 7}}

GraphData[{"MongolianTent",{3,7}},"StandardName"]

All

GraphData[{"MongolianTent",{3,7}},"Graph","All"]//StyleGraphs

Halin

GraphData[{"MongolianTent",{3,7}},"Graph","Halin"]//StyleGraphs

LCF

GraphData[{"MongolianTent",{3,7}},"LCFSignature"]

GraphData[{"MongolianTent",{3,7}},"Graph","LCF"]//StyleGraphs

UnitDistance

GraphData[{"MongolianTent",{3,7}},"UnitDistance"]

UnitDistanceGraphQ[GraphData[{"MongolianTent",{3,7}}],Debug->True]//Timing

GraphData[{"MongolianTent",{3,7}},"Graph","UnitDistance"]//StyleGraphs

Select[%,!FreeQ[GraphEmbedding[#],_?InexactNumberQ]&]

Select[UnitDistanceEmbeddingRefine/@Complement@@(GraphData[{"MongolianTent",{3,7}},"Graph",#]&/@{"All","UnitDistance"}),UnitDistanceGraphEmbeddingQ]

FindUnitDistanceEmbedding[GraphData[{"MongolianTent",{3,7}}],MaxIterations->5000,"ReturnWithMessage"->True]//Timing

UnitDistance FindSubgraphUnitDistanceEmbedding

{{"MongolianTent",{3,7}},l=FindSubgraphUnitDistanceEmbedding[GraphData[{"MongolianTent",{3,7}}],TimeConstraint->300,"Results"->All]//Timing}

gs=UniqueEmbeddings[l]

gs={,,,,,,,,,,,,,,,,};

Matchstick

GraphData[{"MongolianTent",{3,7}},"Graph","Matchstick"]//StyleGraphs

MinimalCrossing

GraphData[{"MongolianTent",{3,7}},{"RCN","CN"}]

GraphData[{"MongolianTent",{3,7}},"Graph","MinimalCrossing"]//StyleGraphs

Default embedding

GraphPlot@GraphData[{"MongolianTent",{3,7}},"Edges"]

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

RecognizeGraph[g]

MinimalCrossing construction

GraphPlot@RotateGraph[MinimalCrossingGraph[GraphData[{"MongolianTent",{3,7}}],"CrossingNumber"->-1]]

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

RecognizeGraph[g]

RectilinearCrossingCount[g]

3D default

Graph3D[GraphData[{"MongolianTent",{3,7}},"Edges"]]

3D All

GraphData[{"MongolianTent",{3,7}},"Graph",{"3D","All"}]

3D UnitDistance

GraphData[{"MongolianTent",{3,7}},"Graph",{"3D","UnitDistance"}]

3D Polyhedron

GraphData[{"MongolianTent",{3,7}},"Graph",{"3D","Polyhedron"}]

{"MongolianTent", {3, 9}}

GraphData[{"MongolianTent",{3,9}},"StandardName"]

All

GraphData[{"MongolianTent",{3,9}},"Graph","All"]//StyleGraphs

Halin

GraphData[{"MongolianTent",{3,9}},"Graph","Halin"]//StyleGraphs

LCF

GraphData[{"MongolianTent",{3,9}},"LCFSignature"]

GraphData[{"MongolianTent",{3,9}},"Graph","LCF"]//StyleGraphs

UnitDistance

GraphData[{"MongolianTent",{3,9}},"UnitDistance"]

UnitDistanceGraphQ[GraphData[{"MongolianTent",{3,9}}],Debug->True]//Timing

GraphData[{"MongolianTent",{3,9}},"Graph","UnitDistance"]//StyleGraphs

Select[%,!FreeQ[GraphEmbedding[#],_?InexactNumberQ]&]

Select[UnitDistanceEmbeddingRefine/@Complement@@(GraphData[{"MongolianTent",{3,9}},"Graph",#]&/@{"All","UnitDistance"}),UnitDistanceGraphEmbeddingQ]

FindUnitDistanceEmbedding[GraphData[{"MongolianTent",{3,9}}],MaxIterations->5000,"ReturnWithMessage"->True]//Timing

UnitDistance FindSubgraphUnitDistanceEmbedding

{{"MongolianTent",{3,9}},l=FindSubgraphUnitDistanceEmbedding[GraphData[{"MongolianTent",{3,9}}],TimeConstraint->300,"Results"->All]//Timing}

gs=UniqueEmbeddings[l]

gs={,,,,,,,,,,,};

Matchstick

GraphData[{"MongolianTent",{3,9}},"Graph","Matchstick"]//StyleGraphs

MinimalCrossing

GraphData[{"MongolianTent",{3,9}},{"RCN","CN"}]

GraphData[{"MongolianTent",{3,9}},"Graph","MinimalCrossing"]//StyleGraphs

Default embedding

GraphPlot@GraphData[{"MongolianTent",{3,9}},"Edges"]

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

RecognizeGraph[g]

MinimalCrossing construction

GraphPlot@RotateGraph[MinimalCrossingGraph[GraphData[{"MongolianTent",{3,9}}],"CrossingNumber"->-1]]

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

RecognizeGraph[g]

RectilinearCrossingCount[g]

3D default

Graph3D[GraphData[{"MongolianTent",{3,9}},"Edges"]]

3D All

GraphData[{"MongolianTent",{3,9}},"Graph",{"3D","All"}]

3D UnitDistance

GraphData[{"MongolianTent",{3,9}},"Graph",{"3D","UnitDistance"}]

3D Polyhedron

GraphData[{"MongolianTent",{3,9}},"Graph",{"3D","Polyhedron"}]

{"MongolianTent", {4, 3}}

GraphData[{"MongolianTent",{4,3}},"StandardName"]

All

GraphData[{"MongolianTent",{4,3}},"Graph","All"]//StyleGraphs

Halin

GraphData[{"MongolianTent",{4,3}},"Graph","Halin"]//StyleGraphs

LCF

GraphData[{"MongolianTent",{4,3}},"LCFSignature"]

GraphData[{"MongolianTent",{4,3}},"Graph","LCF"]//StyleGraphs

UnitDistance

GraphData[{"MongolianTent",{4,3}},"UnitDistance"]

UnitDistanceGraphQ[GraphData[{"MongolianTent",{4,3}}],Debug->True]//Timing

GraphData[{"MongolianTent",{4,3}},"Graph","UnitDistance"]//StyleGraphs

Select[%,!FreeQ[GraphEmbedding[#],_?InexactNumberQ]&]

Select[UnitDistanceEmbeddingRefine/@Complement@@(GraphData[{"MongolianTent",{4,3}},"Graph",#]&/@{"All","UnitDistance"}),UnitDistanceGraphEmbeddingQ]

FindUnitDistanceEmbedding[GraphData[{"MongolianTent",{4,3}}],MaxIterations->5000,"ReturnWithMessage"->True]//Timing

UnitDistance FindSubgraphUnitDistanceEmbedding

{{"MongolianTent",{4,3}},l=FindSubgraphUnitDistanceEmbedding[GraphData[{"MongolianTent",{4,3}}],TimeConstraint->300,"Results"->All]//Timing}

{{"MongolianTent",{4,3}},l=FindSubgraphUnitDistanceEmbedding[GraphData[{"MongolianTent",{4,3}}],TimeConstraint->300,"Results"->All]//Timing}

gs=UniqueEmbeddings[l]

gs={,,,,,,,,,,,,,,,,,,,,,,,,};

Matchstick

GraphData[{"MongolianTent",{4,3}},"Graph","Matchstick"]//StyleGraphs

MinimalCrossing

GraphData[{"MongolianTent",{4,3}},{"RCN","CN"}]

GraphData[{"MongolianTent",{4,3}},"Graph","MinimalCrossing"]//StyleGraphs

Default embedding

GraphPlot@GraphData[{"MongolianTent",{4,3}},"Edges"]

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

RecognizeGraph[g]

GridGraph construction

g0=GridGraph1[{2,2,4},GraphLayout->"UnitDistanceEmbedding",VertexLabels->"Name"]//Quiet

g1=VertexDelete[g0,Range[7,15,4]]

r=RecognizeGraph[g1]

g=IndexGraph[g1]

g2=VertexDelete[g0,Range[2,10,4]]

r=RecognizeGraph[g2]

g=IndexGraph[g2]

MinimalCrossing construction

GraphPlot@RotateGraph[MinimalCrossingGraph[GraphData[{"MongolianTent",{4,3}}],"CrossingNumber"->-1],{9,7}]

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

RecognizeGraph[g]

RectilinearCrossingCount[g]

3D default

Graph3D[GraphData[{"MongolianTent",{4,3}},"Edges"]]

3D All

GraphData[{"MongolianTent",{4,3}},"Graph",{"3D","All"}]

3D UnitDistance

GraphData[{"MongolianTent",{4,3}},"Graph",{"3D","UnitDistance"}]

3D Polyhedron

GraphData[{"MongolianTent",{4,3}},"Graph",{"3D","Polyhedron"}]

{"MongolianTent", {4, 5}}

GraphData[{"MongolianTent",{4, 5}},"StandardName"]

All

GraphData[{"MongolianTent",{4, 5}},"Graph","All"]//StyleGraphs

Halin

GraphData[{"MongolianTent",{4, 5}},"Graph","Halin"]//StyleGraphs

LCF

GraphData[{"MongolianTent",{4, 5}},"LCFSignature"]

GraphData[{"MongolianTent",{4, 5}},"Graph","LCF"]//StyleGraphs

UnitDistance

GraphData[{"MongolianTent",{4, 5}},"UnitDistance"]

UnitDistanceGraphQ[GraphData[{"MongolianTent",{4, 5}}],Debug->True]//Timing

GraphData[{"MongolianTent",{4, 5}},"Graph","UnitDistance"]//StyleGraphs

Select[%,!FreeQ[GraphEmbedding[#],_?InexactNumberQ]&]

Select[UnitDistanceEmbeddingRefine/@Complement@@(GraphData[{"MongolianTent",{4, 5}},"Graph",#]&/@{"All","UnitDistance"}),UnitDistanceGraphEmbeddingQ]

FindUnitDistanceEmbedding[GraphData[{"MongolianTent",{4, 5}}],MaxIterations->5000,"ReturnWithMessage"->True]//Timing

UnitDistance FindSubgraphUnitDistanceEmbedding

{{"MongolianTent",{4, 5}},l=FindSubgraphUnitDistanceEmbedding[GraphData[{"MongolianTent",{4, 5}}],TimeConstraint->300,"Results"->All]//Timing}

gs=UniqueEmbeddings[l]

gs={,,,,,,,,,,,,,,};

Matchstick

GraphData[{"MongolianTent",{4, 5}},"Graph","Matchstick"]//StyleGraphs

MinimalCrossing

GraphData[{"MongolianTent",{4, 5}},{"RCN","CN"}]

GraphData[{"MongolianTent",{4, 5}},"Graph","MinimalCrossing"]//StyleGraphs

Default embedding

GraphPlot@GraphData[{"MongolianTent",{4, 5}},"Edges"]

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

RecognizeGraph[g]

MinimalCrossing construction

GraphPlot@RotateGraph[MinimalCrossingGraph[GraphData[{"MongolianTent",{4, 5}}],"CrossingNumber"->-1]]

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

RecognizeGraph[g]

RectilinearCrossingCount[g]

3D default

Graph3D[GraphData[{"MongolianTent",{4, 5}},"Edges"]]

3D All

GraphData[{"MongolianTent",{4, 5}},"Graph",{"3D","All"}]

3D UnitDistance

GraphData[{"MongolianTent",{4, 5}},"Graph",{"3D","UnitDistance"}]

3D Polyhedron

GraphData[{"MongolianTent",{4, 5}},"Graph",{"3D","Polyhedron"}]

{"MongolianTent", {4, 7}}

GraphData[{"MongolianTent",{4,7}},"StandardName"]

All

GraphData[{"MongolianTent",{4,7}},"Graph","All"]//StyleGraphs

Halin

GraphData[{"MongolianTent",{4,7}},"Graph","Halin"]//StyleGraphs

LCF

GraphData[{"MongolianTent",{4,7}},"LCFSignature"]

GraphData[{"MongolianTent",{4,7}},"Graph","LCF"]//StyleGraphs

UnitDistance

GraphData[{"MongolianTent",{4,7}},"UnitDistance"]

UnitDistanceGraphQ[GraphData[{"MongolianTent",{4,7}}],Debug->True]//Timing

GraphData[{"MongolianTent",{4,7}},"Graph","UnitDistance"]//StyleGraphs

Select[%,!FreeQ[GraphEmbedding[#],_?InexactNumberQ]&]

Select[UnitDistanceEmbeddingRefine/@Complement@@(GraphData[{"MongolianTent",{4,7}},"Graph",#]&/@{"All","UnitDistance"}),UnitDistanceGraphEmbeddingQ]

FindUnitDistanceEmbedding[GraphData[{"MongolianTent",{4,7}}],MaxIterations->5000,"ReturnWithMessage"->True]//Timing

UnitDistance FindSubgraphUnitDistanceEmbedding

{{"MongolianTent",{4,7}},l=FindSubgraphUnitDistanceEmbedding[GraphData[{"MongolianTent",{4,7}}],TimeConstraint->300,"Results"->All]//Timing}

gs=UniqueEmbeddings[l]

gs={,,,,,,,,,,,,};

Matchstick

GraphData[{"MongolianTent",{4,7}},"Graph","Matchstick"]//StyleGraphs

MinimalCrossing

GraphData[{"MongolianTent",{4,7}},{"RCN","CN"}]

GraphData[{"MongolianTent",{4,7}},"Graph","MinimalCrossing"]//StyleGraphs

Default embedding

GraphPlot@GraphData[{"MongolianTent",{4,7}},"Edges"]

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

RecognizeGraph[g]

MinimalCrossing construction

GraphPlot@RotateGraph[MinimalCrossingGraph[GraphData[{"MongolianTent",{4,7}}],"CrossingNumber"->-1]]

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

RecognizeGraph[g]

RectilinearCrossingCount[g]

3D default

Graph3D[GraphData[{"MongolianTent",{4,7}},"Edges"]]

3D All

GraphData[{"MongolianTent",{4,7}},"Graph",{"3D","All"}]

3D UnitDistance

GraphData[{"MongolianTent",{4,7}},"Graph",{"3D","UnitDistance"}]

3D Polyhedron

GraphData[{"MongolianTent",{4,7}},"Graph",{"3D","Polyhedron"}]

{"MongolianTent", {4, 9}}

GraphData[{"MongolianTent",{4,9}},"StandardName"]

All

GraphData[{"MongolianTent",{4,9}},"Graph","All"]//StyleGraphs

Halin

GraphData[{"MongolianTent",{4,9}},"Graph","Halin"]//StyleGraphs

LCF

GraphData[{"MongolianTent",{4,9}},"LCFSignature"]

GraphData[{"MongolianTent",{4,9}},"Graph","LCF"]//StyleGraphs

UnitDistance

GraphData[{"MongolianTent",{4,9}},"UnitDistance"]

UnitDistanceGraphQ[GraphData[{"MongolianTent",{4,9}}],Debug->True]//Timing

GraphData[{"MongolianTent",{4,9}},"Graph","UnitDistance"]//StyleGraphs

Select[%,!FreeQ[GraphEmbedding[#],_?InexactNumberQ]&]

Select[UnitDistanceEmbeddingRefine/@Complement@@(GraphData[{"MongolianTent",{4,9}},"Graph",#]&/@{"All","UnitDistance"}),UnitDistanceGraphEmbeddingQ]

FindUnitDistanceEmbedding[GraphData[{"MongolianTent",{4,9}}],MaxIterations->5000,"ReturnWithMessage"->True]//Timing

UnitDistance FindSubgraphUnitDistanceEmbedding

{{"MongolianTent",{4,9}},l=FindSubgraphUnitDistanceEmbedding[GraphData[{"MongolianTent",{4,9}}],TimeConstraint->300,"Results"->All]//Timing}

gs=UniqueEmbeddings[l]

gs={,,,,};

Matchstick

GraphData[{"MongolianTent",{4,9}},"Graph","Matchstick"]//StyleGraphs

MinimalCrossing

GraphData[{"MongolianTent",{4,9}},{"RCN","CN"}]

GraphData[{"MongolianTent",{4,9}},"Graph","MinimalCrossing"]//StyleGraphs

Default embedding

GraphPlot@GraphData[{"MongolianTent",{4,9}},"Edges"]

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

RecognizeGraph[g]

MinimalCrossing construction

GraphPlot@RotateGraph[MinimalCrossingGraph[GraphData[{"MongolianTent",{4,9}}],"CrossingNumber"->-1]]

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

RecognizeGraph[g]

RectilinearCrossingCount[g]

3D default

Graph3D[GraphData[{"MongolianTent",{4,9}},"Edges"]]

3D All

GraphData[{"MongolianTent",{4,9}},"Graph",{"3D","All"}]

3D UnitDistance

GraphData[{"MongolianTent",{4,9}},"Graph",{"3D","UnitDistance"}]

3D Polyhedron

GraphData[{"MongolianTent",{4,9}},"Graph",{"3D","Polyhedron"}]

{"MongolianTent", {5, 3}}

GraphData[{"MongolianTent",{5,3}},"StandardName"]

All

GraphData[{"MongolianTent",{5,3}},"Graph","All"]//StyleGraphs

Halin

GraphData[{"MongolianTent",{5,3}},"Graph","Halin"]//StyleGraphs

LCF

GraphData[{"MongolianTent",{5,3}},"LCFSignature"]

GraphData[{"MongolianTent",{5,3}},"Graph","LCF"]//StyleGraphs

UnitDistance

GraphData[{"MongolianTent",{5,3}},"UnitDistance"]

UnitDistanceGraphQ[GraphData[{"MongolianTent",{5,3}}],Debug->True]//Timing

GraphData[{"MongolianTent",{5,3}},"Graph","UnitDistance"]//StyleGraphs

Select[%,!FreeQ[GraphEmbedding[#],_?InexactNumberQ]&]

Select[UnitDistanceEmbeddingRefine/@Complement@@(GraphData[{"MongolianTent",{5,3}},"Graph",#]&/@{"All","UnitDistance"}),UnitDistanceGraphEmbeddingQ]

FindUnitDistanceEmbedding[GraphData[{"MongolianTent",{5,3}}],MaxIterations->5000,"ReturnWithMessage"->True]//Timing

UnitDistance FindSubgraphUnitDistanceEmbedding

{{"MongolianTent",{5,3}},l=FindSubgraphUnitDistanceEmbedding[GraphData[{"MongolianTent",{5,3}}],TimeConstraint->300,"Results"->All]//Timing}

gs=UniqueEmbeddings[l]

gs={,,,,,,,,,,,,,,};

Matchstick

GraphData[{"MongolianTent",{5,3}},"Graph","Matchstick"]//StyleGraphs

MinimalCrossing

GraphData[{"MongolianTent",{5,3}},{"RCN","CN"}]

GraphData[{"MongolianTent",{5,3}},"Graph","MinimalCrossing"]//StyleGraphs

Default embedding

GraphPlot@GraphData[{"MongolianTent",{5,3}},"Edges"]

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

RecognizeGraph[g]

GridGraph construction

g0=GridGraph1[{2,2,5},GraphLayout->"UnitDistanceEmbedding",VertexLabels->"Name"]//Quiet

g1=IndexGraph[VertexDelete[g0,Range[7,19,4]]]

r=RecognizeGraph[g1]

g=IndexGraph[g1]

g2=VertexDelete[g0,Range[2,14,4]]

r=RecognizeGraph[g2]

g=IndexGraph[g2]

MinimalCrossing construction

GraphPlot@RotateGraph[MinimalCrossingGraph[GraphData[{"MongolianTent",{5,3}}],"CrossingNumber"->-1],{9,7}]

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

RecognizeGraph[g]

RectilinearCrossingCount[g]

3D default

Graph3D[GraphData[{"MongolianTent",{5,3}},"Edges"]]

3D All

GraphData[{"MongolianTent",{5,3}},"Graph",{"3D","All"}]

3D UnitDistance

GraphData[{"MongolianTent",{5,3}},"Graph",{"3D","UnitDistance"}]

3D Polyhedron

GraphData[{"MongolianTent",{5,3}},"Graph",{"3D","Polyhedron"}]

{"MongolianTent", {5, 5}}

GraphData[{"MongolianTent",{5,5}},"StandardName"]

All

GraphData[{"MongolianTent",{5,5}},"Graph","All"]//StyleGraphs

Halin

GraphData[{"MongolianTent",{5,5}},"Graph","Halin"]//StyleGraphs

LCF

GraphData[{"MongolianTent",{5,5}},"LCFSignature"]

GraphData[{"MongolianTent",{5,5}},"Graph","LCF"]//StyleGraphs

UnitDistance

GraphData[{"MongolianTent",{5,5}},"UnitDistance"]

UnitDistanceGraphQ[GraphData[{"MongolianTent",{5,5}}],Debug->True]//Timing

GraphData[{"MongolianTent",{5,5}},"Graph","UnitDistance"]//StyleGraphs

Select[%,!FreeQ[GraphEmbedding[#],_?InexactNumberQ]&]

Select[UnitDistanceEmbeddingRefine/@Complement@@(GraphData[{"MongolianTent",{5,5}},"Graph",#]&/@{"All","UnitDistance"}),UnitDistanceGraphEmbeddingQ]

FindUnitDistanceEmbedding[GraphData[{"MongolianTent",{5,5}}],MaxIterations->5000,"ReturnWithMessage"->True]//Timing

UnitDistance FindSubgraphUnitDistanceEmbedding

{{"MongolianTent",{5,5}},l=FindSubgraphUnitDistanceEmbedding[GraphData[{"MongolianTent",{5,5}}],TimeConstraint->300,"Results"->All]//Timing}

gs=UniqueEmbeddings[l]

gs={,,,,,,,,,,};

Matchstick

GraphData[{"MongolianTent",{5,5}},"Graph","Matchstick"]//StyleGraphs

MinimalCrossing

GraphData[{"MongolianTent",{5,5}},{"RCN","CN"}]

GraphData[{"MongolianTent",{5,5}},"Graph","MinimalCrossing"]//StyleGraphs

Default embedding

GraphPlot@GraphData[{"MongolianTent",{5,5}},"Edges"]

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

RecognizeGraph[g]

MinimalCrossing construction

GraphPlot@RotateGraph[MinimalCrossingGraph[GraphData[{"MongolianTent",{5,5}}],"CrossingNumber"->-1]]

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

RecognizeGraph[g]

RectilinearCrossingCount[g]

3D default

Graph3D[GraphData[{"MongolianTent",{5,5}},"Edges"]]

3D All

GraphData[{"MongolianTent",{5,5}},"Graph",{"3D","All"}]

3D UnitDistance

GraphData[{"MongolianTent",{5,5}},"Graph",{"3D","UnitDistance"}]

3D Polyhedron

GraphData[{"MongolianTent",{5,5}},"Graph",{"3D","Polyhedron"}]

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

3D Canonical

GraphData[{"MongolianTent",{5,5}},"Graph",{"3D","Canonical"}]

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

3D Canonical construction

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

(can=FindCanonicalPolyhedron[poly,WorkingPrecision->100,MaxIterations->50000,PrecisionGoal->20,"ProgressInterval"->500,"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]

3D Canonical construction from PolyhedralEmbedding

g=GraphData[{"MongolianTent",{5,5}},"Graph","Planar"][[1]]

Show[g2=PolyhedralEmbedding[g,"Circular"->True,"Scale"->3],Boxed->True]//Quiet

With[
{faces=PlanarFaceList[Graph[EdgeList[g2]]],v=GraphEmbedding@g2},
Graphics3D[{Point[{0,0,0}],Opacity[.5],Sphere[],FaceForm[Green,Red],
poly=Polyhedron[1.2v,faces]}]]

(can=FindCanonicalPolyhedron[poly,WorkingPrecision->100,MaxIterations->20000,PrecisionGoal->20,"ProgressInterval"->100,"TangentFactor"->1/5,"PlanarFactor"->1/5,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]

{"MongolianTent", {5, 7}}

GraphData[{"MongolianTent",{5,7}},"StandardName"]

All

GraphData[{"MongolianTent",{5,7}},"Graph","All"]//StyleGraphs

Halin

GraphData[{"MongolianTent",{5,7}},"Graph","Halin"]//StyleGraphs

LCF

GraphData[{"MongolianTent",{5,7}},"LCFSignature"]

GraphData[{"MongolianTent",{5,7}},"Graph","LCF"]//StyleGraphs

UnitDistance

GraphData[{"MongolianTent",{5,7}},"UnitDistance"]

UnitDistanceGraphQ[GraphData[{"MongolianTent",{5,7}}],Debug->True]//Timing

GraphData[{"MongolianTent",{5,7}},"Graph","UnitDistance"]//StyleGraphs

Select[%,!FreeQ[GraphEmbedding[#],_?InexactNumberQ]&]

Select[UnitDistanceEmbeddingRefine/@Complement@@(GraphData[{"MongolianTent",{5,7}},"Graph",#]&/@{"All","UnitDistance"}),UnitDistanceGraphEmbeddingQ]

FindUnitDistanceEmbedding[GraphData[{"MongolianTent",{5,7}}],MaxIterations->5000,"ReturnWithMessage"->True]//Timing

UnitDistance FindSubgraphUnitDistanceEmbedding

{{"MongolianTent",{5,7}},l=FindSubgraphUnitDistanceEmbedding[GraphData[{"MongolianTent",{5,7}}],TimeConstraint->300,"Results"->All]//Timing}

gs=UniqueEmbeddings[l]

gs={,,,,,,,,,,,};

Matchstick

GraphData[{"MongolianTent",{5,7}},"Graph","Matchstick"]//StyleGraphs

MinimalCrossing

GraphData[{"MongolianTent",{5,7}},{"RCN","CN"}]

GraphData[{"MongolianTent",{5,7}},"Graph","MinimalCrossing"]//StyleGraphs

Default embedding

GraphPlot@GraphData[{"MongolianTent",{5,7}},"Edges"]

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

RecognizeGraph[g]

MinimalCrossing construction

GraphPlot@RotateGraph[MinimalCrossingGraph[GraphData[{"MongolianTent",{5,7}}],"CrossingNumber"->-1]]

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

RecognizeGraph[g]

RectilinearCrossingCount[g]

3D default

Graph3D[GraphData[{"MongolianTent",{5,7}},"Edges"]]

3D All

GraphData[{"MongolianTent",{5,7}},"Graph",{"3D","All"}]

3D UnitDistance

GraphData[{"MongolianTent",{5,7}},"Graph",{"3D","UnitDistance"}]

3D Polyhedron

GraphData[{"MongolianTent",{5,7}},"Graph",{"3D","Polyhedron"}]

{"MongolianTent", {5, 9}}

GraphData[{"MongolianTent",{5,9}},"StandardName"]

All

GraphData[{"MongolianTent",{5,9}},"Graph","All"]//StyleGraphs

Halin

GraphData[{"MongolianTent",{5,9}},"Graph","Halin"]//StyleGraphs

LCF

GraphData[{"MongolianTent",{5,9}},"LCFSignature"]

GraphData[{"MongolianTent",{5,9}},"Graph","LCF"]//StyleGraphs

UnitDistance

GraphData[{"MongolianTent",{5,9}},"UnitDistance"]

UnitDistanceGraphQ[GraphData[{"MongolianTent",{5,9}}],Debug->True]//Timing

GraphData[{"MongolianTent",{5,9}},"Graph","UnitDistance"]//StyleGraphs

Select[%,!FreeQ[GraphEmbedding[#],_?InexactNumberQ]&]

Select[UnitDistanceEmbeddingRefine/@Complement@@(GraphData[{"MongolianTent",{5,9}},"Graph",#]&/@{"All","UnitDistance"}),UnitDistanceGraphEmbeddingQ]

FindUnitDistanceEmbedding[GraphData[{"MongolianTent",{5,9}}],MaxIterations->5000,"ReturnWithMessage"->True]//Timing

UnitDistance FindSubgraphUnitDistanceEmbedding

{{"MongolianTent",{5,9}},l=FindSubgraphUnitDistanceEmbedding[GraphData[{"MongolianTent",{5,9}}],TimeConstraint->300,"Results"->All]//Timing}

gs=UniqueEmbeddings[l]

gs={,,};

Matchstick

GraphData[{"MongolianTent",{5,9}},"Graph","Matchstick"]//StyleGraphs

MinimalCrossing

GraphData[{"MongolianTent",{5,9}},{"RCN","CN"}]

GraphData[{"MongolianTent",{5,9}},"Graph","MinimalCrossing"]//StyleGraphs

Default embedding

GraphPlot@GraphData[{"MongolianTent",{5,9}},"Edges"]

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

RecognizeGraph[g]

MinimalCrossing construction

GraphPlot@RotateGraph[MinimalCrossingGraph[GraphData[{"MongolianTent",{5,9}}],"CrossingNumber"->-1]]

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

RecognizeGraph[g]

RectilinearCrossingCount[g]

3D default

Graph3D[GraphData[{"MongolianTent",{5,9}},"Edges"]]

3D All

GraphData[{"MongolianTent",{5,9}},"Graph",{"3D","All"}]

3D UnitDistance

GraphData[{"MongolianTent",{5,9}},"Graph",{"3D","UnitDistance"}]

3D Polyhedron

GraphData[{"MongolianTent",{5,9}},"Graph",{"3D","Polyhedron"}]

GraphData

GraphDataString

Do[Print[GraphDataString[MongolianTentGraph[m,n],
"Name"->"("<>ToString[m]<>","<>ToString[n]<>")-Mongolian tent graph",
"StandardName"->{"MongolianTent",{m,n}},
"Classes"->{"MongolianTent"},
"NotationRules"->{"MongolianTent"->{m,n}},
"Skip"->{"Perfect"},
TimeConstraint->120
]],{n,3,9,2},{m,2,5}]