constants - Man Page

Mathematical and numerical constants

Synopsis

package require Tcl  ?8.3?

package require math::constants  ?1.0.2?

::math::constants::constants args

::math::constants::print-constants args

Description

This package defines some common mathematical and numerical constants. By using the package you get consistent values for numbers like pi and ln(10).

It defines two commands:

The motivation for this package is that quite often, with (mathematical) computations, you need a good approximation to, say, the ratio of degrees to radians. You can, of course, define this like:

    variable radtodeg [expr {180.0/(4.0*atan(1.0))}]

and use the variable radtodeg whenever you need the conversion.

This has two drawbacks:

Here is the way you can do it with the math::constants package:

    package require math::constants
    ::math::constants::constants radtodeg degtorad

which creates two variables, radtodeg and (its reciprocal) degtorad in the calling namespace.

Constants that have been defined (their values are mostly taken from mathematical tables with more precision than usually can be handled) include:

The full set of named constants is listed in section Constants.

Procedures

The package defines the following public procedures:

::math::constants::constants args

Import the constants whose names are given as arguments

::math::constants::print-constants args

Print the constants whose names are given as arguments on the screen (name, value and description) or, if no arguments are given, print all defined constants. This is mainly a convenience procedure.

Constants

pi

Ratio of circle circumference to diameter

e

Base for natural logarithm

ln10

Natural logarithm of 10

phi

Golden ratio

gamma

Euler's constant

sqrt2

Square root of 2

thirdrt2

One-third power of 2

sqrt3

Square root of 3

radtodeg

Conversion from radians to degrees

degtorad

Conversion from degrees to radians

onethird

One third (0.3333....)

twothirds

Two thirds (0.6666....)

onesixth

One sixth (0.1666....)

huge

(Approximately) largest number

tiny

(Approximately) smallest number not equal zero

eps

Smallest number such that 1+eps != 1

Bugs, Ideas, Feedback

This document, and the package it describes, will undoubtedly contain bugs and other problems. Please report such in the category math :: constants 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

constants, degrees, e, math, pi, radians

Category

Mathematics

Info

1.0.2 tcllib Tcl Math Library