Mercurial > cpython-lru_cache-weakref
annotate Doc/lib/libmath.tex @ 25838:8540887bcec6 2.2
Backport of 2.183:
Fix memory leak in add_subclass() found by NealN with valgrind.
| author | Guido van Rossum <guido@python.org> |
|---|---|
| date | Fri, 18 Oct 2002 13:42:21 +0000 |
| parents | e23d5b2e228c |
| children | 98f5bfb19c86 62403b93f470 |
| rev | line source |
|---|---|
| 8918 | 1 \section{\module{math} --- |
| 10646 | 2 Mathematical functions} |
| 3 | |
|
8716
760dcf197048
Adjusted to use the new module synopsis support macros.
Fred Drake <fdrake@acm.org>
parents:
7877
diff
changeset
|
4 \declaremodule{builtin}{math} |
|
760dcf197048
Adjusted to use the new module synopsis support macros.
Fred Drake <fdrake@acm.org>
parents:
7877
diff
changeset
|
5 \modulesynopsis{Mathematical functions (\function{sin()} etc.).} |
|
760dcf197048
Adjusted to use the new module synopsis support macros.
Fred Drake <fdrake@acm.org>
parents:
7877
diff
changeset
|
6 |
| 10646 | 7 This module is always available. It provides access to the |
|
12223
e82e82b3b9ad
Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents:
10646
diff
changeset
|
8 mathematical functions defined by the C standard. |
|
e82e82b3b9ad
Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents:
10646
diff
changeset
|
9 |
|
e82e82b3b9ad
Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents:
10646
diff
changeset
|
10 These functions cannot be used with complex numbers; use the functions |
|
e82e82b3b9ad
Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents:
10646
diff
changeset
|
11 of the same name from the \refmodule{cmath} module if you require |
|
e82e82b3b9ad
Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents:
10646
diff
changeset
|
12 support for complex numbers. The distinction between functions which |
|
e82e82b3b9ad
Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents:
10646
diff
changeset
|
13 support complex numbers and those which don't is made since most users |
|
e82e82b3b9ad
Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents:
10646
diff
changeset
|
14 do not want to learn quite as much mathematics as required to |
|
e82e82b3b9ad
Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents:
10646
diff
changeset
|
15 understand complex numbers. Receiving an exception instead of a |
|
e82e82b3b9ad
Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents:
10646
diff
changeset
|
16 complex result allows earlier detection of the unexpected complex |
|
e82e82b3b9ad
Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents:
10646
diff
changeset
|
17 number used as a parameter, so that the programmer can determine how |
|
e82e82b3b9ad
Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents:
10646
diff
changeset
|
18 and why it was generated in the first place. |
|
e82e82b3b9ad
Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents:
10646
diff
changeset
|
19 |
|
e82e82b3b9ad
Merged changes from the 1.5.2p2 release.
Fred Drake <fdrake@acm.org>
parents:
10646
diff
changeset
|
20 The following functions provided by this module: |
| 6363 | 21 |
|
1471
2ec96140a36b
Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
22 \begin{funcdesc}{acos}{x} |
| 6363 | 23 Return the arc cosine of \var{x}. |
| 24 \end{funcdesc} | |
| 25 | |
| 26 \begin{funcdesc}{asin}{x} | |
| 27 Return the arc sine of \var{x}. | |
| 28 \end{funcdesc} | |
| 29 | |
| 30 \begin{funcdesc}{atan}{x} | |
| 31 Return the arc tangent of \var{x}. | |
| 32 \end{funcdesc} | |
| 33 | |
|
9607
8483953a9248
Rename the parameters of atan2(), based on comments from Guido & Peter
Fred Drake <fdrake@acm.org>
parents:
8918
diff
changeset
|
34 \begin{funcdesc}{atan2}{y, x} |
|
8483953a9248
Rename the parameters of atan2(), based on comments from Guido & Peter
Fred Drake <fdrake@acm.org>
parents:
8918
diff
changeset
|
35 Return \code{atan(\var{y} / \var{x})}. |
| 6363 | 36 \end{funcdesc} |
| 37 | |
| 38 \begin{funcdesc}{ceil}{x} | |
|
15602
e23d5b2e228c
Do not talk about "real" numbers; talk about "floats" or "floating point
Fred Drake <fdrake@acm.org>
parents:
14616
diff
changeset
|
39 Return the ceiling of \var{x} as a float. |
| 6363 | 40 \end{funcdesc} |
| 41 | |
| 42 \begin{funcdesc}{cos}{x} | |
| 43 Return the cosine of \var{x}. | |
| 44 \end{funcdesc} | |
| 45 | |
| 46 \begin{funcdesc}{cosh}{x} | |
| 47 Return the hyperbolic cosine of \var{x}. | |
| 48 \end{funcdesc} | |
| 49 | |
| 50 \begin{funcdesc}{exp}{x} | |
|
6647
a7ea74a27993
Get rid of math mode in some places.
Guido van Rossum <guido@python.org>
parents:
6485
diff
changeset
|
51 Return \code{e**\var{x}}. |
| 6363 | 52 \end{funcdesc} |
| 53 | |
| 54 \begin{funcdesc}{fabs}{x} | |
|
15602
e23d5b2e228c
Do not talk about "real" numbers; talk about "floats" or "floating point
Fred Drake <fdrake@acm.org>
parents:
14616
diff
changeset
|
55 Return the absolute value of the floating point number \var{x}. |
| 6363 | 56 \end{funcdesc} |
| 57 | |
| 58 \begin{funcdesc}{floor}{x} | |
|
15602
e23d5b2e228c
Do not talk about "real" numbers; talk about "floats" or "floating point
Fred Drake <fdrake@acm.org>
parents:
14616
diff
changeset
|
59 Return the floor of \var{x} as a float. |
|
1471
2ec96140a36b
Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
60 \end{funcdesc} |
| 6363 | 61 |
| 62 \begin{funcdesc}{fmod}{x, y} | |
|
14616
284508c653c7
Fixed legit gripe from c.l.py that math.fmod docs aren't confusing enough.
Tim Peters <tim.peters@gmail.com>
parents:
13912
diff
changeset
|
63 Return \code{fmod(\var{x}, \var{y})}, as defined by the platform C library. |
|
284508c653c7
Fixed legit gripe from c.l.py that math.fmod docs aren't confusing enough.
Tim Peters <tim.peters@gmail.com>
parents:
13912
diff
changeset
|
64 Note that the Python expression \code{\var{x} \%\ \var{y}} may not return |
|
284508c653c7
Fixed legit gripe from c.l.py that math.fmod docs aren't confusing enough.
Tim Peters <tim.peters@gmail.com>
parents:
13912
diff
changeset
|
65 the same result. |
| 6363 | 66 \end{funcdesc} |
| 67 | |
| 68 \begin{funcdesc}{frexp}{x} | |
|
13314
03aa26819ac2
Tim-blessed documentation for math.frexp().
Fred Drake <fdrake@acm.org>
parents:
12714
diff
changeset
|
69 % Blessed by Tim. |
|
03aa26819ac2
Tim-blessed documentation for math.frexp().
Fred Drake <fdrake@acm.org>
parents:
12714
diff
changeset
|
70 Return the mantissa and exponent of \var{x} as the pair |
|
03aa26819ac2
Tim-blessed documentation for math.frexp().
Fred Drake <fdrake@acm.org>
parents:
12714
diff
changeset
|
71 \code{(\var{m}, \var{e})}. \var{m} is a float and \var{e} is an |
|
03aa26819ac2
Tim-blessed documentation for math.frexp().
Fred Drake <fdrake@acm.org>
parents:
12714
diff
changeset
|
72 integer such that \code{\var{x} == \var{m} * 2**\var{e}}. |
|
03aa26819ac2
Tim-blessed documentation for math.frexp().
Fred Drake <fdrake@acm.org>
parents:
12714
diff
changeset
|
73 If \var{x} is zero, returns \code{(0.0, 0)}, otherwise |
|
03aa26819ac2
Tim-blessed documentation for math.frexp().
Fred Drake <fdrake@acm.org>
parents:
12714
diff
changeset
|
74 \code{0.5 <= abs(\var{m}) < 1}. |
| 6363 | 75 \end{funcdesc} |
| 76 | |
| 77 \begin{funcdesc}{hypot}{x, y} | |
|
7048
3eca5f37501a
Typographical nits: Always set parameter names in \var{} in the running text.
Fred Drake <fdrake@acm.org>
parents:
6647
diff
changeset
|
78 Return the Euclidean distance, \code{sqrt(\var{x}*\var{x} + \var{y}*\var{y})}. |
| 6363 | 79 \end{funcdesc} |
| 80 | |
| 81 \begin{funcdesc}{ldexp}{x, i} | |
|
6647
a7ea74a27993
Get rid of math mode in some places.
Guido van Rossum <guido@python.org>
parents:
6485
diff
changeset
|
82 Return \code{\var{x} * (2**\var{i})}. |
| 6363 | 83 \end{funcdesc} |
| 84 | |
|
7157
a6fa9f3cad13
Added descriptions for log() and log10().
Fred Drake <fdrake@acm.org>
parents:
7048
diff
changeset
|
85 \begin{funcdesc}{log}{x} |
|
a6fa9f3cad13
Added descriptions for log() and log10().
Fred Drake <fdrake@acm.org>
parents:
7048
diff
changeset
|
86 Return the natural logarithm of \var{x}. |
|
a6fa9f3cad13
Added descriptions for log() and log10().
Fred Drake <fdrake@acm.org>
parents:
7048
diff
changeset
|
87 \end{funcdesc} |
|
a6fa9f3cad13
Added descriptions for log() and log10().
Fred Drake <fdrake@acm.org>
parents:
7048
diff
changeset
|
88 |
|
a6fa9f3cad13
Added descriptions for log() and log10().
Fred Drake <fdrake@acm.org>
parents:
7048
diff
changeset
|
89 \begin{funcdesc}{log10}{x} |
|
a6fa9f3cad13
Added descriptions for log() and log10().
Fred Drake <fdrake@acm.org>
parents:
7048
diff
changeset
|
90 Return the base-10 logarithm of \var{x}. |
|
a6fa9f3cad13
Added descriptions for log() and log10().
Fred Drake <fdrake@acm.org>
parents:
7048
diff
changeset
|
91 \end{funcdesc} |
|
a6fa9f3cad13
Added descriptions for log() and log10().
Fred Drake <fdrake@acm.org>
parents:
7048
diff
changeset
|
92 |
| 6363 | 93 \begin{funcdesc}{modf}{x} |
| 94 Return the fractional and integer parts of \var{x}. Both results | |
|
15602
e23d5b2e228c
Do not talk about "real" numbers; talk about "floats" or "floating point
Fred Drake <fdrake@acm.org>
parents:
14616
diff
changeset
|
95 carry the sign of \var{x}. The integer part is returned as a float. |
| 6363 | 96 \end{funcdesc} |
| 97 | |
| 98 \begin{funcdesc}{pow}{x, y} | |
|
6647
a7ea74a27993
Get rid of math mode in some places.
Guido van Rossum <guido@python.org>
parents:
6485
diff
changeset
|
99 Return \code{\var{x}**\var{y}}. |
| 6363 | 100 \end{funcdesc} |
| 101 | |
| 102 \begin{funcdesc}{sin}{x} | |
| 103 Return the sine of \var{x}. | |
| 104 \end{funcdesc} | |
| 105 | |
| 106 \begin{funcdesc}{sinh}{x} | |
| 107 Return the hyperbolic sine of \var{x}. | |
| 108 \end{funcdesc} | |
| 109 | |
| 110 \begin{funcdesc}{sqrt}{x} | |
| 111 Return the square root of \var{x}. | |
| 112 \end{funcdesc} | |
| 113 | |
| 114 \begin{funcdesc}{tan}{x} | |
| 115 Return the tangent of \var{x}. | |
| 116 \end{funcdesc} | |
| 117 | |
| 118 \begin{funcdesc}{tanh}{x} | |
| 119 Return the hyperbolic tangent of \var{x}. | |
| 120 \end{funcdesc} | |
|
1471
2ec96140a36b
Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
121 |
|
7157
a6fa9f3cad13
Added descriptions for log() and log10().
Fred Drake <fdrake@acm.org>
parents:
7048
diff
changeset
|
122 Note that \function{frexp()} and \function{modf()} have a different |
| 10646 | 123 call/return pattern than their C equivalents: they take a single |
|
7157
a6fa9f3cad13
Added descriptions for log() and log10().
Fred Drake <fdrake@acm.org>
parents:
7048
diff
changeset
|
124 argument and return a pair of values, rather than returning their |
|
a6fa9f3cad13
Added descriptions for log() and log10().
Fred Drake <fdrake@acm.org>
parents:
7048
diff
changeset
|
125 second return value through an `output parameter' (there is no such |
|
a6fa9f3cad13
Added descriptions for log() and log10().
Fred Drake <fdrake@acm.org>
parents:
7048
diff
changeset
|
126 thing in Python). |
|
1471
2ec96140a36b
Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
127 |
|
2ec96140a36b
Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
128 The module also defines two mathematical constants: |
| 6363 | 129 |
|
1471
2ec96140a36b
Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
130 \begin{datadesc}{pi} |
| 6363 | 131 The mathematical constant \emph{pi}. |
|
1471
2ec96140a36b
Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
132 \end{datadesc} |
| 5818 | 133 |
| 6363 | 134 \begin{datadesc}{e} |
| 135 The mathematical constant \emph{e}. | |
| 136 \end{datadesc} | |
| 137 | |
|
6485
2f258162aae2
Restore the \seealso formatting that got lost when I updated the math
Fred Drake <fdrake@acm.org>
parents:
6363
diff
changeset
|
138 \begin{seealso} |
|
2f258162aae2
Restore the \seealso formatting that got lost when I updated the math
Fred Drake <fdrake@acm.org>
parents:
6363
diff
changeset
|
139 \seemodule{cmath}{Complex number versions of many of these functions.} |
|
2f258162aae2
Restore the \seealso formatting that got lost when I updated the math
Fred Drake <fdrake@acm.org>
parents:
6363
diff
changeset
|
140 \end{seealso} |
