# figurate - Man Page

Evaluate figurate numbers

## Synopsis

`package require `

**Tcl 8.6**

`package require `

**math::figurate 1.0**

**::math::figurate::sum_sequence** *n*

**::math::figurate::sum_squares** *n*

**::math::figurate::sum_cubes** *n*

**::math::figurate::sum_4th_power** *n*

**::math::figurate::sum_5th_power** *n*

**::math::figurate::sum_6th_power** *n*

**::math::figurate::sum_7th_power** *n*

**::math::figurate::sum_8th_power** *n*

**::math::figurate::sum_9th_power** *n*

**::math::figurate::sum_10th_power** *n*

**::math::figurate::sum_sequence_odd** *n*

**::math::figurate::sum_squares_odd** *n*

**::math::figurate::sum_cubes_odd** *n*

**::math::figurate::sum_4th_power_odd** *n*

**::math::figurate::sum_5th_power_odd** *n*

**::math::figurate::sum_6th_power_odd** *n*

**::math::figurate::sum_7th_power_odd** *n*

**::math::figurate::sum_8th_power_odd** *n*

**::math::figurate::sum_9th_power_odd** *n*

**::math::figurate::sum_10th_power_odd** *n*

**::math::figurate::oblong** *n*

**::math::figurate::pronic** *n*

**::math::figurate::triangular** *n*

**::math::figurate::square** *n*

**::math::figurate::cubic** *n*

**::math::figurate::biquadratic** *n*

**::math::figurate::centeredTriangular** *n*

**::math::figurate::centeredSquare** *n*

**::math::figurate::centeredPentagonal** *n*

**::math::figurate::centeredHexagonal** *n*

**::math::figurate::centeredCube** *n*

**::math::figurate::decagonal** *n*

**::math::figurate::heptagonal** *n*

**::math::figurate::hexagonal** *n*

**::math::figurate::octagonal** *n*

**::math::figurate::octahedral** *n*

**::math::figurate::pentagonal** *n*

**::math::figurate::squarePyramidral** *n*

**::math::figurate::tetrahedral** *n*

**::math::figurate::pentatope** *n*

## Description

Sums of numbers that follow a particular pattern are called figurate numbers. A simple example is the sum of integers 1, 2, ... up to n. You can arrange 1, 1+2=3, 1+2+3=6, ... objects in a triangle, hence the name triangular numbers:

* * * * * * * * * * ...

The **math::figurate** package consists of a collection of procedures to evaluate a wide variety of figurate numbers. While all formulae are straightforward, the details are sometimes puzzling. *Note:* The procedures consider arguments lower than zero as to mean "no objects to be counted" and therefore return 0.

## Procedures

The procedures can be arranged in a few categories: sums of integers raised to a particular power, sums of odd integers and general figurate numbers, for instance the pentagonal numbers.

**::math::figurate::sum_sequence***n*Return the sum of integers 1, 2, ..., n.

- int
*n* Highest integer in the sum

- int
**::math::figurate::sum_squares***n*Return the sum of squares 1**2, 2**2, ..., n**2.

- int
*n* Highest base integer in the sum

- int
**::math::figurate::sum_cubes***n*Return the sum of cubes 1**3, 2**3, ..., n**3.

- int
*n* Highest base integer in the sum

- int
**::math::figurate::sum_4th_power***n*Return the sum of 4th powers 1**4, 2**4, ..., n**4.

- int
*n* Highest base integer in the sum

- int
**::math::figurate::sum_5th_power***n*Return the sum of 5th powers 1**5, 2**5, ..., n**5.

- int
*n* Highest base integer in the sum

- int
**::math::figurate::sum_6th_power***n*Return the sum of 6th powers 1**6, 2**6, ..., n**6.

- int
*n* Highest base integer in the sum

- int
**::math::figurate::sum_7th_power***n*Return the sum of 7th powers 1**7, 2**7, ..., n**7.

- int
*n* Highest base integer in the sum

- int
**::math::figurate::sum_8th_power***n*Return the sum of 8th powers 1**8, 2**8, ..., n**8.

- int
*n* Highest base integer in the sum

- int
**::math::figurate::sum_9th_power***n*Return the sum of 9th powers 1**9, 2**9, ..., n**9.

- int
*n* Highest base integer in the sum

- int
**::math::figurate::sum_10th_power***n*Return the sum of 10th powers 1**10, 2**10, ..., n**10.

- int
*n* Highest base integer in the sum

- int
**::math::figurate::sum_sequence_odd***n*Return the sum of odd integers 1, 3, ..., 2n-1

- int
*n* Highest integer in the sum

- int
**::math::figurate::sum_squares_odd***n*Return the sum of odd squares 1**2, 3**2, ..., (2n-1)**2.

- int
*n* Highest base integer in the sum

- int
**::math::figurate::sum_cubes_odd***n*Return the sum of odd cubes 1**3, 3**3, ..., (2n-1)**3.

- int
*n* Highest base integer in the sum

- int
**::math::figurate::sum_4th_power_odd***n*Return the sum of odd 4th powers 1**4, 2**4, ..., (2n-1)**4.

- int
*n* Highest base integer in the sum

- int
**::math::figurate::sum_5th_power_odd***n*Return the sum of odd 5th powers 1**5, 2**5, ..., (2n-1)**5.

- int
*n* Highest base integer in the sum

- int
**::math::figurate::sum_6th_power_odd***n*Return the sum of odd 6th powers 1**6, 2**6, ..., (2n-1)**6.

- int
*n* Highest base integer in the sum

- int
**::math::figurate::sum_7th_power_odd***n*Return the sum of odd 7th powers 1**7, 2**7, ..., (2n-1)**7.

- int
*n* Highest base integer in the sum

- int
**::math::figurate::sum_8th_power_odd***n*Return the sum of odd 8th powers 1**8, 2**8, ..., (2n-1)**8.

- int
*n* Highest base integer in the sum

- int
**::math::figurate::sum_9th_power_odd***n*Return the sum of odd 9th powers 1**9, 2**9, ..., (2n-1)**9.

- int
*n* Highest base integer in the sum

- int
**::math::figurate::sum_10th_power_odd***n*Return the sum of odd 10th powers 1**10, 2**10, ..., (2n-1)**10.

- int
*n* Highest base integer in the sum

- int
**::math::figurate::oblong***n*Return the nth oblong number (twice the nth triangular number)

- int
*n* Required index

- int
**::math::figurate::pronic***n*Return the nth pronic number (synonym for oblong)

- int
*n* Required index

- int
**::math::figurate::triangular***n*Return the nth triangular number

- int
*n* Required index

- int
**::math::figurate::square***n*Return the nth square number

- int
*n* Required index

- int
**::math::figurate::cubic***n*Return the nth cubic number

- int
*n* Required index

- int
**::math::figurate::biquadratic***n*Return the nth biquaratic number (i.e. n**4)

- int
*n* Required index

- int
**::math::figurate::centeredTriangular***n*Return the nth centered triangular number (items arranged in concentric squares)

- int
*n* Required index

- int
**::math::figurate::centeredSquare***n*Return the nth centered square number (items arranged in concentric squares)

- int
*n* Required index

- int
**::math::figurate::centeredPentagonal***n*Return the nth centered pentagonal number (items arranged in concentric pentagons)

- int
*n* Required index

- int
**::math::figurate::centeredHexagonal***n*Return the nth centered hexagonal number (items arranged in concentric hexagons)

- int
*n* Required index

- int
**::math::figurate::centeredCube***n*Return the nth centered cube number (items arranged in concentric cubes)

- int
*n* Required index

- int
**::math::figurate::decagonal***n*Return the nth decagonal number (items arranged in decagons with one common vertex)

- int
*n* Required index

- int
**::math::figurate::heptagonal***n*Return the nth heptagonal number (items arranged in heptagons with one common vertex)

- int
*n* Required index

- int
**::math::figurate::hexagonal***n*Return the nth hexagonal number (items arranged in hexagons with one common vertex)

- int
*n* Required index

- int
**::math::figurate::octagonal***n*Return the nth octagonal number (items arranged in octagons with one common vertex)

- int
*n* Required index

- int
**::math::figurate::octahedral***n*Return the nth octahedral number (items arranged in octahedrons with a common centre)

- int
*n* Required index

- int
**::math::figurate::pentagonal***n*Return the nth pentagonal number (items arranged in pentagons with one common vertex)

- int
*n* Required index

- int
**::math::figurate::squarePyramidral***n*Return the nth square pyramidral number (items arranged in a square pyramid)

- int
*n* Required index

- int
**::math::figurate::tetrahedral***n*Return the nth tetrahedral number (items arranged in a triangular pyramid)

- int
*n* Required index

- int
**::math::figurate::pentatope***n*Return the nth pentatope number (items arranged in the four-dimensional analogue of a triangular pyramid)

- int
*n* Required index

- int

## Bugs, Ideas, Feedback

This document, and the package it describes, will undoubtedly contain bugs and other problems. Please report such in the category *math :: figurate* of the *Tcllib Trackers* [http://core.tcl.tk/tcllib/reportlist]. Please also report any ideas for enhancements you may have for either package and/or documentation.

When proposing code changes, please provide *unified diffs*, i.e the output of **diff -u**.

Note further that *attachments* are strongly preferred over inlined patches. Attachments can be made by going to the **Edit** form of the ticket immediately after its creation, and then using the left-most button in the secondary navigation bar.

## Keywords

figurate numbers, mathematics

## Category

Mathematics