]> git.proxmox.com Git - ceph.git/blame - ceph/src/boost/libs/math/doc/tr1/tr1_ref.qbk
bump version to 12.2.2-pve1
[ceph.git] / ceph / src / boost / libs / math / doc / tr1 / tr1_ref.qbk
CommitLineData
7c673cae
FG
1[section:tr1_ref TR1 C Functions Quick Reference]
2
3
4[h4 Supported TR1 Functions]
5
6 namespace boost{ namespace math{ namespace tr1{ extern "C"{
7
8 // [5.2.1.1] associated Laguerre polynomials:
9 double assoc_laguerre(unsigned n, unsigned m, double x);
10 float assoc_laguerref(unsigned n, unsigned m, float x);
11 long double assoc_laguerrel(unsigned n, unsigned m, long double x);
12
13 // [5.2.1.2] associated Legendre functions:
14 double assoc_legendre(unsigned l, unsigned m, double x);
15 float assoc_legendref(unsigned l, unsigned m, float x);
16 long double assoc_legendrel(unsigned l, unsigned m, long double x);
17
18 // [5.2.1.3] beta function:
19 double beta(double x, double y);
20 float betaf(float x, float y);
21 long double betal(long double x, long double y);
22
23 // [5.2.1.4] (complete) elliptic integral of the first kind:
24 double comp_ellint_1(double k);
25 float comp_ellint_1f(float k);
26 long double comp_ellint_1l(long double k);
27
28 // [5.2.1.5] (complete) elliptic integral of the second kind:
29 double comp_ellint_2(double k);
30 float comp_ellint_2f(float k);
31 long double comp_ellint_2l(long double k);
32
33 // [5.2.1.6] (complete) elliptic integral of the third kind:
34 double comp_ellint_3(double k, double nu);
35 float comp_ellint_3f(float k, float nu);
36 long double comp_ellint_3l(long double k, long double nu);
37
38 // [5.2.1.8] regular modified cylindrical Bessel functions:
39 double cyl_bessel_i(double nu, double x);
40 float cyl_bessel_if(float nu, float x);
41 long double cyl_bessel_il(long double nu, long double x);
42
43 // [5.2.1.9] cylindrical Bessel functions (of the first kind):
44 double cyl_bessel_j(double nu, double x);
45 float cyl_bessel_jf(float nu, float x);
46 long double cyl_bessel_jl(long double nu, long double x);
47
48 // [5.2.1.10] irregular modified cylindrical Bessel functions:
49 double cyl_bessel_k(double nu, double x);
50 float cyl_bessel_kf(float nu, float x);
51 long double cyl_bessel_kl(long double nu, long double x);
52
53 // [5.2.1.11] cylindrical Neumann functions;
54 // cylindrical Bessel functions (of the second kind):
55 double cyl_neumann(double nu, double x);
56 float cyl_neumannf(float nu, float x);
57 long double cyl_neumannl(long double nu, long double x);
58
59 // [5.2.1.12] (incomplete) elliptic integral of the first kind:
60 double ellint_1(double k, double phi);
61 float ellint_1f(float k, float phi);
62 long double ellint_1l(long double k, long double phi);
63
64 // [5.2.1.13] (incomplete) elliptic integral of the second kind:
65 double ellint_2(double k, double phi);
66 float ellint_2f(float k, float phi);
67 long double ellint_2l(long double k, long double phi);
68
69 // [5.2.1.14] (incomplete) elliptic integral of the third kind:
70 double ellint_3(double k, double nu, double phi);
71 float ellint_3f(float k, float nu, float phi);
72 long double ellint_3l(long double k, long double nu, long double phi);
73
74 // [5.2.1.15] exponential integral:
75 double expint(double x);
76 float expintf(float x);
77 long double expintl(long double x);
78
79 // [5.2.1.16] Hermite polynomials:
80 double hermite(unsigned n, double x);
81 float hermitef(unsigned n, float x);
82 long double hermitel(unsigned n, long double x);
83
84 // [5.2.1.18] Laguerre polynomials:
85 double laguerre(unsigned n, double x);
86 float laguerref(unsigned n, float x);
87 long double laguerrel(unsigned n, long double x);
88
89 // [5.2.1.19] Legendre polynomials:
90 double legendre(unsigned l, double x);
91 float legendref(unsigned l, float x);
92 long double legendrel(unsigned l, long double x);
93
94 // [5.2.1.20] Riemann zeta function:
95 double riemann_zeta(double);
96 float riemann_zetaf(float);
97 long double riemann_zetal(long double);
98
99 // [5.2.1.21] spherical Bessel functions (of the first kind):
100 double sph_bessel(unsigned n, double x);
101 float sph_besself(unsigned n, float x);
102 long double sph_bessell(unsigned n, long double x);
103
104 // [5.2.1.22] spherical associated Legendre functions:
105 double sph_legendre(unsigned l, unsigned m, double theta);
106 float sph_legendref(unsigned l, unsigned m, float theta);
107 long double sph_legendrel(unsigned l, unsigned m, long double theta);
108
109 // [5.2.1.23] spherical Neumann functions;
110 // spherical Bessel functions (of the second kind):
111 double sph_neumann(unsigned n, double x);
112 float sph_neumannf(unsigned n, float x);
113 long double sph_neumannl(unsigned n, long double x);
114
115 }}}} // namespaces
116
117In addition sufficient additional overloads of the `double` versions of the
118above functions are provided, so that calling the function with any mixture
119of `float`, `double`, `long double`, or /integer/ arguments is supported, with the
120return type determined by the __arg_promotion_rules.
121
122For example:
123
124 expintf(2.0f); // float version, returns float.
125 expint(2.0f); // also calls the float version and returns float.
126 expint(2.0); // double version, returns double.
127 expintl(2.0L); // long double version, returns a long double.
128 expint(2.0L); // also calls the long double version.
129 expint(2); // integer argument is treated as a double, returns double.
130
131[h4 Quick Reference]
132
133 // [5.2.1.1] associated Laguerre polynomials:
134 double assoc_laguerre(unsigned n, unsigned m, double x);
135 float assoc_laguerref(unsigned n, unsigned m, float x);
136 long double assoc_laguerrel(unsigned n, unsigned m, long double x);
137
138The assoc_laguerre functions return:
139
140[equation laguerre_1]
141
142See also __laguerre for the full template (header only) version of this function.
143
144 // [5.2.1.2] associated Legendre functions:
145 double assoc_legendre(unsigned l, unsigned m, double x);
146 float assoc_legendref(unsigned l, unsigned m, float x);
147 long double assoc_legendrel(unsigned l, unsigned m, long double x);
148
149The assoc_legendre functions return:
150
151[equation legendre_1b]
152
153See also __legendre for the full template (header only) version of this function.
154
155 // [5.2.1.3] beta function:
156 double beta(double x, double y);
157 float betaf(float x, float y);
158 long double betal(long double x, long double y);
159
160Returns the beta function of /x/ and /y/:
161
162[equation beta1]
163
164See also __beta for the full template (header only) version of this function.
165
166 // [5.2.1.4] (complete) elliptic integral of the first kind:
167 double comp_ellint_1(double k);
168 float comp_ellint_1f(float k);
169 long double comp_ellint_1l(long double k);
170
171Returns the complete elliptic integral of the first kind of /k/:
172
173[equation ellint6]
174
175See also __ellint_1 for the full template (header only) version of this function.
176
177 // [5.2.1.5] (complete) elliptic integral of the second kind:
178 double comp_ellint_2(double k);
179 float comp_ellint_2f(float k);
180 long double comp_ellint_2l(long double k);
181
182Returns the complete elliptic integral of the second kind of /k/:
183
184[equation ellint7]
185
186See also __ellint_2 for the full template (header only) version of this function.
187
188 // [5.2.1.6] (complete) elliptic integral of the third kind:
189 double comp_ellint_3(double k, double nu);
190 float comp_ellint_3f(float k, float nu);
191 long double comp_ellint_3l(long double k, long double nu);
192
193Returns the complete elliptic integral of the third kind of /k/ and /nu/:
194
195[equation ellint8]
196
197See also __ellint_3 for the full template (header only) version of this function.
198
199 // [5.2.1.8] regular modified cylindrical Bessel functions:
200 double cyl_bessel_i(double nu, double x);
201 float cyl_bessel_if(float nu, float x);
202 long double cyl_bessel_il(long double nu, long double x);
203
204Returns the modified bessel function of the first kind of /nu/ and /x/:
205
206[equation mbessel2]
207
208See also __cyl_bessel_i for the full template (header only) version of this function.
209
210 // [5.2.1.9] cylindrical Bessel functions (of the first kind):
211 double cyl_bessel_j(double nu, double x);
212 float cyl_bessel_jf(float nu, float x);
213 long double cyl_bessel_jl(long double nu, long double x);
214
215Returns the bessel function of the first kind of /nu/ and /x/:
216
217[equation bessel2]
218
219See also __cyl_bessel_j for the full template (header only) version of this function.
220
221 // [5.2.1.10] irregular modified cylindrical Bessel functions:
222 double cyl_bessel_k(double nu, double x);
223 float cyl_bessel_kf(float nu, float x);
224 long double cyl_bessel_kl(long double nu, long double x);
225
226Returns the modified bessel function of the second kind of /nu/ and /x/:
227
228[equation mbessel3]
229
230See also __cyl_bessel_k for the full template (header only) version of this function.
231
232 // [5.2.1.11] cylindrical Neumann functions;
233 // cylindrical Bessel functions (of the second kind):
234 double cyl_neumann(double nu, double x);
235 float cyl_neumannf(float nu, float x);
236 long double cyl_neumannl(long double nu, long double x);
237
238Returns the bessel function of the second kind (Neumann function) of /nu/ and /x/:
239
240[equation bessel3]
241
242See also __cyl_neumann for the full template (header only) version of this function.
243
244 // [5.2.1.12] (incomplete) elliptic integral of the first kind:
245 double ellint_1(double k, double phi);
246 float ellint_1f(float k, float phi);
247 long double ellint_1l(long double k, long double phi);
248
249Returns the incomplete elliptic integral of the first kind of /k/ and /phi/:
250
251[equation ellint2]
252
253See also __ellint_1 for the full template (header only) version of this function.
254
255 // [5.2.1.13] (incomplete) elliptic integral of the second kind:
256 double ellint_2(double k, double phi);
257 float ellint_2f(float k, float phi);
258 long double ellint_2l(long double k, long double phi);
259
260Returns the incomplete elliptic integral of the second kind of /k/ and /phi/:
261
262[equation ellint3]
263
264See also __ellint_2 for the full template (header only) version of this function.
265
266 // [5.2.1.14] (incomplete) elliptic integral of the third kind:
267 double ellint_3(double k, double nu, double phi);
268 float ellint_3f(float k, float nu, float phi);
269 long double ellint_3l(long double k, long double nu, long double phi);
270
271Returns the incomplete elliptic integral of the third kind of /k/, /nu/ and /phi/:
272
273[equation ellint4]
274
275See also __ellint_3 for the full template (header only) version of this function.
276
277 // [5.2.1.15] exponential integral:
278 double expint(double x);
279 float expintf(float x);
280 long double expintl(long double x);
281
282Returns the exponential integral Ei of /x/:
283
284[equation expint_i_1]
285
286See also __expint for the full template (header only) version of this function.
287
288 // [5.2.1.16] Hermite polynomials:
289 double hermite(unsigned n, double x);
290 float hermitef(unsigned n, float x);
291 long double hermitel(unsigned n, long double x);
292
293Returns the n'th Hermite polynomial of /x/:
294
295[equation hermite_0]
296
297See also __hermite for the full template (header only) version of this function.
298
299 // [5.2.1.18] Laguerre polynomials:
300 double laguerre(unsigned n, double x);
301 float laguerref(unsigned n, float x);
302 long double laguerrel(unsigned n, long double x);
303
304Returns the n'th Laguerre polynomial of /x/:
305
306[equation laguerre_0]
307
308See also __laguerre for the full template (header only) version of this function.
309
310 // [5.2.1.19] Legendre polynomials:
311 double legendre(unsigned l, double x);
312 float legendref(unsigned l, float x);
313 long double legendrel(unsigned l, long double x);
314
315Returns the l'th Legendre polynomial of /x/:
316
317[equation legendre_0]
318
319See also __legendre for the full template (header only) version of this function.
320
321 // [5.2.1.20] Riemann zeta function:
322 double riemann_zeta(double);
323 float riemann_zetaf(float);
324 long double riemann_zetal(long double);
325
326Returns the Riemann Zeta function of /x/:
327
328[equation zeta1]
329
330See also __zeta for the full template (header only) version of this function.
331
332 // [5.2.1.21] spherical Bessel functions (of the first kind):
333 double sph_bessel(unsigned n, double x);
334 float sph_besself(unsigned n, float x);
335 long double sph_bessell(unsigned n, long double x);
336
337Returns the spherical Bessel function of the first kind of /x/ j[sub n](x):
338
339[equation sbessel2]
340
341See also __sph_bessel for the full template (header only) version of this function.
342
343 // [5.2.1.22] spherical associated Legendre functions:
344 double sph_legendre(unsigned l, unsigned m, double theta);
345 float sph_legendref(unsigned l, unsigned m, float theta);
346 long double sph_legendrel(unsigned l, unsigned m, long double theta);
347
348Returns the spherical associated Legendre function of /l/, /m/ and /theta/:
349
350[equation spherical_3]
351
352See also __spherical_harmonic for the full template (header only) version of this function.
353
354 // [5.2.1.23] spherical Neumann functions;
355 // spherical Bessel functions (of the second kind):
356 double sph_neumann(unsigned n, double x);
357 float sph_neumannf(unsigned n, float x);
358 long double sph_neumannl(unsigned n, long double x);
359
360Returns the spherical Neumann function of /x/ y[sub n](x):
361
362[equation sbessel2]
363
364See also __sph_bessel for the full template (header only) version of this function.
365
366
367
368[h4 Currently Unsupported TR1 Functions]
369
370 // [5.2.1.7] confluent hypergeometric functions:
371 double conf_hyperg(double a, double c, double x);
372 float conf_hypergf(float a, float c, float x);
373 long double conf_hypergl(long double a, long double c, long double x);
374
375 // [5.2.1.17] hypergeometric functions:
376 double hyperg(double a, double b, double c, double x);
377 float hypergf(float a, float b, float c, float x);
378 long double hypergl(long double a, long double b, long double c,
379 long double x);
380
381[note These two functions are not implemented as they are not believed
382to be numerically stable.]
383
384
385[endsect]
386
387[/
388 Copyright 2008, 2009 John Maddock and Paul A. Bristow.
389 Distributed under the Boost Software License, Version 1.0.
390 (See accompanying file LICENSE_1_0.txt or copy at
391 http://www.boost.org/LICENSE_1_0.txt).
392]
393