Provided by: tcllib_1.15-dfsg-2_all bug

NAME

       math::constants - Mathematical and numerical constants

SYNOPSIS

       package require Tcl  ?8.3?

       package require math::constants  ?1.0.1?

       ::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:

       •      One for importing the constants

       •      One for reporting which constants are defined and what values they actually have.

       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:

       •      You need to remember the proper formula or value and that is error-prone.

       •      Especially  with  the  use  of  mathematical  functions  like  atan you assume that they have been
              accurately implemented. This is seldom or never the case and for each platform you can get  subtle
              differences.

       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:

       •      basic constants like pi, e, gamma (Euler's constant)

       •      derived values like ln(10) and sqrt(2)

       •      purely numerical values such as 1/3 that are included  for  convenience  and  for  the  fact  that
              certain seemingly trivial computations like:
              set value [expr {3.0*$onethird}]

              give exactly the value you expect (if IEEE arithmetic is available).

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.

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    SF    Trackers
       [http://sourceforge.net/tracker/?group_id=12883].   Please also report any ideas for enhancements you may
       have for either package and/or documentation.

KEYWORDS

       constants, degrees, e, math, pi, radians

CATEGORY

       Mathematics

COPYRIGHT

       Copyright (c) 2004 Arjen Markus <arjenmarkus@users.sourceforge.net>