TDesign:
Filter:
Classes (extension) | Math

TDesign : SphericalDesign : Object
ExtensionExtension

A subclass of SphericalDesign, encapsulating a set of points which represent a spherical design, allowing for searching, basic transformations and visualization of the design.

Description

Spherical t-designs
A finite subset X on S^(n−1) is called a spherical t-design on S^(n−1), if for any polynomial f(x) = f(x1, x2, . . . , xn) of degree at most t, the value of the integral of f(x) on S^(n−1) (divided by the volume of S^(n−1)) is just the average value of f(x) on the finite set X. As is obvious from the definition, a spherical t-design is better if t is larger, and usually a spherical t-design X is better if the cardinality |X| is smaller.1

This is a subclass of SphericalDesign, used to load a design of a specific number of points and fundamental parameter t.

NOTE: The coordinate system follows that of Spherical and Polar. The +X axis points forward, +Y points left, +Z points upward.
Attribution:
McLaren's Improved Snub Cube and Other New Spherical Designs in Three Dimensions, R. H. Hardin and N. J. A. Sloane, Discrete and Computational Geometry, 15 (1996), pp. 429-441.

The T-Designs found here are from the work of Hardin and Sloane. These and other designs can be downloaded directly from their site: http://neilsloane.com/sphdesigns/

If you use any of these designs, please acknowledge this source.

Class Methods

TDesign.new(numPoints, t, dim: 3)

Arguments:

numPoints

The number of points you'd like in your design. If multiple matches in the design library are found, the t argument must be specified to disambiguate, otherwise an error will be thrown.

t

The desired t parameter. Can be nil but the method will throw an error if multiple design matches are found for numPoints. (Some valid designs include the same number of points but different values of t.)

dim

The t-design's dimensions. Only dimension 3 is supported.

Ambisonic Toolkit

TDesign.newHoa(numChans, optimize: 'energy', order)

From extension in /Library/Application Support/SuperCollider/downloaded-quarks/atk-sc3/Classes/extTDesign.sc

Return a t-design sutiable for ambisonic encoding or decoding.

Arguments:

numChans

The number of input or output channels, i.e., the number of t-design points.

If nil, the number of channels/points will be determined by the order and optimize arguments.

optimize

Optimize criteria:

\energyTotal energy
\spreadEEnergy spread
NOTE: Optimizing for energy spread, \spreadE, returns a t-design sampled so that energy is smoothed evenely across the sphere, and uses a t-design with more points than \energy.
order

Ambisonic order.

Inherited class methods

Instance Methods

.t

Return the design's t parameter.

Inherited instance methods

EXAMPLES

See SphericalDesign: examples.

[1] - Bannai, E., Bannai, E. A survey on spherical designs and algebraic combinatorics on spheres. European Journal of Combinatorics, Volume 30, Issue 6, August 2009, Pages 1392-1425.