Triangular Cupola

Author

Eric W. Weisstein
September 9, 2023

This notebook downloaded from http://mathworld.wolfram.com/notebooks/Polyhedra/TriangularCupola.nb.

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

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

Solid

PolyhedronData["TriangularCupola","Orientations"]

Show[PolyhedronData[{"TriangularCupola",#}],Boxed->False]&/@PolyhedronData["TriangularCupola","Orientations"]

Net

PolyhedronData["TriangularCupola","Net"]

PolyhedronData["TriangularCupola","Net","Colored"]

NetPrintout[PolyhedronData["TriangularCupola","Polyhedron"],"SmallTriakisOctahedron.pdf"]

Properties

Initialization

<<MathWorld`Polyhedra`

p=PolyhedronData[pname="TriangularCupola","Polyhedron"]

vol=PolyhedronData[pname,"Volume"]

Centroid

PolyhedronData[pname,"Centroid"]

RegionCentroid[p]//FullSimplify

PolyhedronCentroid[p]

Circumsphere

PolyhedronData[pname,"Circumsphere"]

Circumsphere[p]

MyCircumsphere[p]

Graphics3D[{{Opacity[.2],Yellow,MyCircumsphere[p]},p},Boxed->False]

DihedralAngles

PolyhedronData[pname,"DihedralAngles"]//Tally

DihedralAngles[p]//FullSimplify//Tally

EdgeLengths

PolyhedronData[pname,"EdgeLengths"]

PolyhedronData[pname,"Lines"]/.Line[l_]:>EuclideanDistance@@l//FullSimplify//Union

Faces

GeneralizedDiameter

PolyhedronData[pname,"GeneralizedDiameter"]

GeneralizedDiameter[p]//FullSimplify

Insphere

PolyhedronData[pname,"Insphere"]

Insphere[p]

MyInsphere[p]

InertiaTensor

PolyhedronData[pname,"InertiaTensor"]

((MomentOfInertia[p,{0,0,0}])/(Volume[p]))//RootReduce//Timing

PolyhedronInertiaTensor[p]//Timing

MeanCylindricalRadius

PolyhedronData[pname,"MeanCylindricalRadius"]

N[%]

Integrate over polyhedron

((NIntegrate[(Sqrt[(x^2)+(y^2)]),{x,y,z}∈p])/vol)

(rxy=((Integrate[(Sqrt[(x^2)+(y^2)]),{x,y,z}∈p])/vol))//Timing

CAD

cad=CylindricalDecomposition[PolyhedronData[pname,"RegionFunction"][x,y,z],{x,y,z},"Function"]

((NIntegrate[(Sqrt[(x^2)+(y^2)])Boole[cad],{x,y,z}∈FullRegion[3]])/vol)

(rxy=((Integrate[(Sqrt[(x^2)+(y^2)])Boole[cad],{x,y,z}∈FullRegion[3]])/vol))//Timing

ResourceFunction["LogSimplify"][rxy]//FullSimplify

CAD over  1/2

reg=FullSimplify[PolyhedronData[pname,"RegionFunction"][x,y,z]&&y>0]

cad=CylindricalDecomposition[reg,{x,y,z},"Function"]

2((NIntegrate[(Sqrt[(x^2)+(y^2)])Boole[cad],{x,y,z}∈FullRegion[3]])/vol)

(rxy=2((Integrate[(Sqrt[(x^2)+(y^2)])Boole[cad],{x,y,z}∈FullRegion[3]])/vol))//Timing

rxysimp1=ResourceFunction["LogSimplify"][rxy]//FullSimplify

N[%]

Divergence theorem [bad integral(s)]

(rxy=MeanCylindricalRadius[p,"Simplification"->FullSimplify,Debug->True])//Timing

N[rxy]

ResourceFunction["LogSimplify"][rxy]//FullSimplify

By hand

{{xmin,xmax},{ymin,ymax},{zmin,zmax}}=MinMax/@Transpose[PolyhedronCoordinates[p]]

ineq=PolyhedronData[pname,"RegionFunction"][x,y,z]

(i1=Integrate[Boole[ineq](Sqrt[(x^2)+(y^2)]),{z,zmin,zmax}])//Timing

NIntegrate[(i1/vol),{x,xmin,xmax},{y,ymin,ymax}]

(i2=Integrate[(i1/vol),{x,xmin,xmax},{y,ymin,ymax}])//Timing

N[i2]

FullSimplify[i2]

Table[{n,(2-(Sqrt[3]))^n//Expand},{n,5}]

Table[{n,((Sqrt[3])-1)^n//Expand},{n,5}]

Log[2-(Sqrt[3]),#]&/@{7-4 (Sqrt[3])}//FullSimplify

Log[2+(Sqrt[3]),#]&/@{26+15 (Sqrt[3]),262087+151316 (Sqrt[3])}//FullSimplify

N[expr=(1/46080)(384 (27+(Sqrt[3]))+(3856+693 (Sqrt[3])) Log[27]-2 216 Log[2-(Sqrt[3])]+(363-864 (Sqrt[3])) Log[2-(Sqrt[3])]-(125+5022 (Sqrt[3])) Log[2+(Sqrt[3])]+6 (32-549 (Sqrt[3])) Log[-3+2 (Sqrt[3])]+3 64 Log[2+(Sqrt[3])]-10 4 Log[2+(Sqrt[3])])]

FullSimplify[expr]

N[expr]

MeanSquareCylindricalRadius

PolyhedronData[pname,"MeanSquareCylindricalRadius"]

((NIntegrate[(x^2)+(y^2),{x,y,z}∈p])/vol)

(i=((Integrate[(x^2)+(y^2),{x,y,z}∈p])/vol)//FullSimplify)//Timing

N[i]

MeanSphericalRadius

PolyhedronData[pname,"MeanSphericalRadius"]

Integrate over polyhedron

((NIntegrate[(Sqrt[(x^2)+(y^2)+(z^2)]),{x,y,z}∈p])/vol)

(i=((Integrate[(Sqrt[(x^2)+(y^2)+(z^2)]),{x,y,z}∈p])/vol)//FullSimplify)//Timing

CAD over  1/2 [unevaluated]

reg=FullSimplify[PolyhedronData[pname,"RegionFunction"][x,y,z]&&y>0]

cad=CylindricalDecomposition[reg,{x,y,z},"Function"]

2((NIntegrate[(Sqrt[(x^2)+(y^2)+(z^2)])Boole[cad],{x,y,z}∈FullRegion[3]])/vol)

(rxy=2((Integrate[(Sqrt[(x^2)+(y^2)+(z^2)])Boole[cad],{x,y,z}∈FullRegion[3]])/vol))//Timing

MeanSquareSphericalRadius

PolyhedronData[pname,"MeanSquareSphericalRadius"]

((NIntegrate[(x^2)+(y^2)+(z^2),{x,y,z}∈p])/vol)

(i=((Integrate[(x^2)+(y^2)+(z^2),{x,y,z}∈p])/vol)//FullSimplify)//Timing

N[i]

Midsphere

PolyhedronData[pname,"Midsphere"]

Midsphere[p]

SurfaceArea

PolyhedronData[pname,"SurfaceArea"]

SurfaceArea[p]//FullSimplify

Total[Area/@PolyhedronData[pname,"Polygons"]]//FullSimplify

VertexSubsetHulls

PolyhedronData[pname,"VertexSubsetHulls"]

Platonic

(h=VertexSubsetHulls[p,"Platonic","Skip"->{}])//Timing

Volume

PolyhedronData[pname,"Volume"]

Volume[p]//FullSimplify

PolyhedronVolume[p,Method->"GaussLaw"]//FullSimplify

Perspective projections

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

XXX

PolyhedronProjectionGraph[PolyhedronData["DuererSolid","Polyhedron"],]