Introduction

EleNTorus™ software computes a parametric representation of the n-dimensional sphere, cylinder, ellipsoid, and torus. It uses a recursive formula over dimensions. Also, EleNTorus computes Jacobian and Hessian matrices, containing tangents and curvatures.

N-Sphere

The parametric representation of the unit 1-sphere (circle) is

y0 = cos x0,
y1 = sin x0.

If this circle is rotated about an axis passing through the center, a sphere results. The unit 2-sphere is

y0 = cos x0,
y1 = sin x0 cos x1,
y2 = sin x0 sin x1.

Sphere

This representation is constructed from the previous by an addition formula and suffix factors. Likewise, if the 2-sphere is rotated in a new dimension, a 3-sphere results. That is, each point on the 2-sphere is carried around in a circle in the new dimension. The 3-sphere is near impossible to visualize. Nonetheless, we know all its properties. The unit 3-sphere is

y0 = cos x0,
y1 = sin x0 cos x1,
y2 = sin x0 sin x1 cos x2,
y3 = sin x0 sin x1 sin x2.

Again, this representation is constructed from the previous by an addition formula and suffix factors. It is clear that the same construction can be applied recursively, giving a n-sphere. EleNTorus software uses this formula recursion to compute a n-sphere. It also computes tangent and curvature at every point as described below.

Besides being an interesting curiosity, what is the importance of the n-sphere? Consider a point in a plane. The circle centered on this point describes the points an equal distance in all directions. Likewise, a 2-sphere describes those points in ordinary 3-space. A n-sphere plays a similar role in (n+1)-space. Also, a n-sphere has constant curvature in all directions at every point.

N-Ellipsoid

The 1-sphere (circle) formula can be generalized to the 1-ellipsoid (ellipse) with semiaxis radius ar. It is

y0 = a0 cos x0,
y1 = a1 sin x0.

The 2-ellipsoid is

y0 = a0 cos x0,
y1 = a1 sin x0 cos x1,
y2 = a2 sin x0 sin x1.

Ellipsoid

The 3-ellipsoid is

y0 = a0 cos x0,
y1 = a1 sin x0 cos x1,
y2 = a2 sin x0 sin x1 cos x2,
y3 = a3 sin x0 sin x1 sin x2.

EleNTorus software uses this formula recursion to compute a n-ellipsoid. It also computes tangent and curvature at every point as described below.

N-Torus

If 1-ellipsoid (ellipse) is rotated about an axis not passing through the center, a torus results. The offsetting distance is the torus radius bi. If the torus radius is greater than the ellipse radius, then the torus has a hole. The 1-torus is the ellipse not centered on the origin

y0 = a0 cos x0,
y1 = a1 sin x0 + b1.

The 2-torus is

y0 = a0 cos x0,
y1 = (a1 sin x0 + b1) cos x1,
y2 = (a2 sin x0 + b1) sin x1 + b2.

Torus

The 3-torus is

y0 = a0 cos x0,
y1 = (a1 sin x0 + b1) cos x1,
y2 = ((a2 sin x0 + b1) sin x1 + b2) cos x2,
y3 = ((a3 sin x0 + b1) sin x1 + b2) sin x2 + b3.

EleNTorus software uses this formula recursion to compute a n-torus. The n-torus formula includes other important manifolds as special cases. The n-ellipsoid has bi=0. The unit n-sphere has ar=1.

Tangent and Curvature

Like all parametric representations, these formulas imply directional tangents and curvatures at every point. These are derived from first and second partial derivatives yr,i and yr,ij. All these derivatives are arrayed in Jacobian and Hessian matrices. For the unit 3-sphere, the Jacobian matrix is

y0,0 = -sin x0,
y0,1 = 0,
y0,2 = 0,
y1,0 = cos x0 cos x1,
y1,1 = -sin x0 sin x1,
y1,2 = 0,
y2,0 = cos x0 sin x1 cos x2,
y2,1 = sin x0 cos x1 cos x2,
y2,2 = -sin x0 sin x1 sin x2,
y3,0 = cos x0 sin x1 sin x2,
y3,1 = sin x0 cos x1 sin x2,
y3,2 = sin x0 sin x1 cos x2.

The unit 3-sphere Hessian matrix is

y0,00 = -cos x0,
y0,01 = 0,
y0,02 = 0,
y0,10 = y0,01,
y0,11 = 0,
y0,12 = 0,
y0,20 = y0,02,
y0,21 = y0,12,
y0,22 = 0,
y1,00 = -sin x0 cos x1,
y1,01 = -cos x0 sin x1,
y1,02 = 0,
y1,10 = y1,01,
y1,11 = -sin x0 cos x1,
y1,12 = 0,
y1,20 = y1,02,
y1,21 = y1,12,
y1,22 = 0,
y2,00 = -sin x0 sin x1 cos x2,
y2,01 = cos x0 cos x1 cos x2,
y2,02 = -cos x0 sin x1 sin x2,
y2,10 = y2,01,
y2,11 = -sin x0 sin x1 cos x2,
y2,12 = -sin x0 cos x1 sin x2,
y2,20 = y2,02,
y2,21 = y2,12,
y3,22 = -sin x0 sin x1 cos x2,
y3,00 = -sin x0 sin x1 sin x2,
y3,01 = cos x0 cos x1 sin x2,
y3,02 = cos x0 sin x1 cos x2,
y3,10 = y3,01,
y3,11 = -sin x0 sin x1 sin x2,
y3,12 = sin x0 cos x1 cos x2,
y3,20 = y3,02,
y3,21 = y3,12,
y3,22 = -sin x0 sin x1 sin x2.

For the 3-torus, the Jacobian matrix is

y0,0 = -a0 sin x0,
y0,1 = 0,
y0,2 = 0,
y1,0 = a1 cos x0 cos x1,
y1,1 = -(a1 sin x0 + b1) sin x1,
y1,2 = 0,
y2,0 = a2 cos x0 sin x1 cos x2,
y2,1 = (a2 sin x0 + b1) cos x1 cos x2,
y2,2 = -((a2 sin x0 + b1) sin x1 + b2) sin x2,
y3,0 = a3 cos x0 sin x1 sin x2,
y3,1 = (a3 sin x0 + b1) cos x1 sin x2,
y3,2 = ((a3 sin x0 + b1) sin x1 + b2) cos x2.

The 3-torus Hessian matrix is

y0,00 = -a0 cos x0,
y0,01 = 0,
y0,02 = 0,
y0,10 = y0,01,
y0,11 = 0,
y0,12 = 0,
y0,20 = y0,02,
y0,21 = y0,12,
y0,22 = 0,
y1,00 = -a1 sin x0 cos x1,
y1,01 = -a1 cos x0 sin x1,
y1,02 = 0,
y1,10 = y1,01,
y1,11 = -(a1 sin x0 + b1) cos x1,
y1,12 = 0,
y1,20 = y1,02,
y1,21 = y1,12,
y1,22 = 0,
y2,00 = -a2 sin x0 sin x1 cos x2,
y2,01 = a2 cos x0 cos x1 cos x2,
y2,02 = -a2 cos x0 sin x1 sin x2,
y2,10 = y2,01,
y2,11 = -(a2 sin x0 + b1) sin x1 cos x2,
y2,12 = -(a2 sin x0 + b1) cos x1 sin x2,
y2,20 = y2,02,
y2,21 = y2,12,
y2,22 = -((a2 sin x0 + b1) sin x1 + b2) cos x2,
y3,00 = -a3 sin x0 sin x1 sin x2,
y3,01 = a3 cos x0 cos x1 sin x2,
y3,02 = a3 cos x0 sin x1 cos x2,
y3,10 = y3,01,
y3,11 = -(a3 sin x0 + b1) sin x1 sin x2,
y3,12 = (a3 sin x0 + b1) cos x1 cos x2,
y3,20 = y3,02,
y3,21 = y3,12,
y3,22 = -((a3 sin x0 + b1) sin x1 + b2) sin x2.

The Jacobian matrix has (n+1)Xn elements. The Hessian matrix has (n+1)Xn2 elements. That is 1100 elements when n=10. Although some of these are equal due to symmetry, the complexity is daunting. Fortunately, they can be evaluated in a smart way. Formula recursion described above is inherited by partial derivative formulas.

EleNTorus software performs several optimizations:

EleNTorus Software Access

EleNTorus software is implemented in the manifold.c routine in the Geodes geodesic computing package stored in the Netlib repository of scientific software.

Geodesic Computation

EleGeodesic software computes geodesics on n-dimensional manifolds, including all EleNTorus manifolds.

Geodesic on torus

Salient Assemblage Attachment

EleSalient software computes salient assemblages (recursive bumps) on n-dimensional manifolds, including all EleNTorus manifolds.

Salient Assemblage on torus