GNU Octave  4.2.1
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
lo-specfun.h
Go to the documentation of this file.
1 /*
2 
3 Copyright (C) 1996-2017 John W. Eaton
4 Copyright (C) 2010 VZLU Prague
5 
6 This file is part of Octave.
7 
8 Octave is free software; you can redistribute it and/or modify it
9 under the terms of the GNU General Public License as published by the
10 Free Software Foundation; either version 3 of the License, or (at your
11 option) any later version.
12 
13 Octave is distributed in the hope that it will be useful, but WITHOUT
14 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
15 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
16 for more details.
17 
18 You should have received a copy of the GNU General Public License
19 along with Octave; see the file COPYING. If not, see
20 <http://www.gnu.org/licenses/>.
21 
22 */
23 
24 #if ! defined (octave_lo_specfun_h)
25 #define octave_lo_specfun_h 1
26 
27 #include "octave-config.h"
28 
29 #include "oct-cmplx.h"
30 #include "Array.h"
31 
32 class Matrix;
33 class ComplexMatrix;
34 class NDArray;
35 class ComplexNDArray;
36 class RowVector;
38 class FloatMatrix;
39 class FloatComplexMatrix;
40 class FloatNDArray;
42 class FloatRowVector;
44 class Range;
45 
46 namespace octave
47 {
48  namespace math
49  {
50  extern OCTAVE_API double acosh (double x);
51  extern OCTAVE_API float acosh (float x);
52  extern OCTAVE_API Complex acosh (const Complex& x);
53  extern OCTAVE_API FloatComplex acosh (const FloatComplex& x);
54 
55  extern OCTAVE_API double asinh (double x);
56  extern OCTAVE_API float asinh (float x);
57  extern OCTAVE_API Complex asinh (const Complex& x);
58  extern OCTAVE_API FloatComplex asinh (const FloatComplex& x);
59 
60  extern OCTAVE_API double atanh (double x);
61  extern OCTAVE_API float atanh (float x);
62  extern OCTAVE_API Complex atanh (const Complex& x);
63  extern OCTAVE_API FloatComplex atanh (const FloatComplex& x);
64 
65  extern OCTAVE_API double erf (double x);
66  extern OCTAVE_API float erf (float x);
67  extern OCTAVE_API Complex erf (const Complex& x);
68  extern OCTAVE_API FloatComplex erf (const FloatComplex& x);
69 
70  extern OCTAVE_API double erfc (double x);
71  extern OCTAVE_API float erfc (float x);
72  extern OCTAVE_API Complex erfc (const Complex& x);
73  extern OCTAVE_API FloatComplex erfc (const FloatComplex& x);
74 
75  extern OCTAVE_API double expm1 (double x);
76  extern OCTAVE_API Complex expm1 (const Complex& x);
77 
78  extern OCTAVE_API float expm1 (float x);
79  extern OCTAVE_API FloatComplex expm1 (const FloatComplex& x);
80 
81  extern OCTAVE_API double log1p (double x);
82  extern OCTAVE_API Complex log1p (const Complex& x);
83 
84  extern OCTAVE_API float log1p (float x);
85  extern OCTAVE_API FloatComplex log1p (const FloatComplex& x);
86 
87  extern OCTAVE_API double cbrt (double x);
88  extern OCTAVE_API float cbrt (float x);
89 
90  extern OCTAVE_API double gamma (double x);
91  extern OCTAVE_API double lgamma (double x);
92  extern OCTAVE_API Complex rc_lgamma (double x);
93 
94  extern OCTAVE_API float gamma (float x);
95  extern OCTAVE_API float lgamma (float x);
96  extern OCTAVE_API FloatComplex rc_lgamma (float x);
97 
98  extern OCTAVE_API Complex besselj (double alpha, const Complex& x, bool scaled,
100  extern OCTAVE_API Complex bessely (double alpha, const Complex& x, bool scaled,
102  extern OCTAVE_API Complex besseli (double alpha, const Complex& x, bool scaled,
104  extern OCTAVE_API Complex besselk (double alpha, const Complex& x, bool scaled,
106  extern OCTAVE_API Complex besselh1 (double alpha, const Complex& x, bool scaled,
108  extern OCTAVE_API Complex besselh2 (double alpha, const Complex& x, bool scaled,
110 
111  extern OCTAVE_API ComplexMatrix besselj (double alpha, const ComplexMatrix& x,
112  bool scaled, Array<octave_idx_type>& ierr);
113  extern OCTAVE_API ComplexMatrix bessely (double alpha, const ComplexMatrix& x,
114  bool scaled, Array<octave_idx_type>& ierr);
115  extern OCTAVE_API ComplexMatrix besseli (double alpha, const ComplexMatrix& x,
116  bool scaled, Array<octave_idx_type>& ierr);
117  extern OCTAVE_API ComplexMatrix besselk (double alpha, const ComplexMatrix& x,
118  bool scaled, Array<octave_idx_type>& ierr);
119  extern OCTAVE_API ComplexMatrix besselh1 (double alpha, const ComplexMatrix& x,
120  bool scaled, Array<octave_idx_type>& ierr);
121  extern OCTAVE_API ComplexMatrix besselh2 (double alpha, const ComplexMatrix& x,
122  bool scaled, Array<octave_idx_type>& ierr);
123 
124  extern OCTAVE_API ComplexMatrix besselj (const Matrix& alpha, const Complex& x,
125  bool scaled, Array<octave_idx_type>& ierr);
126  extern OCTAVE_API ComplexMatrix bessely (const Matrix& alpha, const Complex& x,
127  bool scaled, Array<octave_idx_type>& ierr);
128  extern OCTAVE_API ComplexMatrix besseli (const Matrix& alpha, const Complex& x,
129  bool scaled, Array<octave_idx_type>& ierr);
130  extern OCTAVE_API ComplexMatrix besselk (const Matrix& alpha, const Complex& x,
131  bool scaled, Array<octave_idx_type>& ierr);
132  extern OCTAVE_API ComplexMatrix besselh1 (const Matrix& alpha, const Complex& x,
133  bool scaled, Array<octave_idx_type>& ierr);
134  extern OCTAVE_API ComplexMatrix besselh2 (const Matrix& alpha, const Complex& x,
135  bool scaled, Array<octave_idx_type>& ierr);
136 
137  extern OCTAVE_API ComplexMatrix besselj (const Matrix& alpha,
138  const ComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
139  extern OCTAVE_API ComplexMatrix bessely (const Matrix& alpha,
140  const ComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
141  extern OCTAVE_API ComplexMatrix besseli (const Matrix& alpha,
142  const ComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
143  extern OCTAVE_API ComplexMatrix besselk (const Matrix& alpha,
144  const ComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
145  extern OCTAVE_API ComplexMatrix besselh1 (const Matrix& alpha,
146  const ComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
147  extern OCTAVE_API ComplexMatrix besselh2 (const Matrix& alpha,
148  const ComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
149 
150  extern OCTAVE_API ComplexNDArray besselj (double alpha, const ComplexNDArray& x,
151  bool scaled, Array<octave_idx_type>& ierr);
152  extern OCTAVE_API ComplexNDArray bessely (double alpha, const ComplexNDArray& x,
153  bool scaled, Array<octave_idx_type>& ierr);
154  extern OCTAVE_API ComplexNDArray besseli (double alpha, const ComplexNDArray& x,
155  bool scaled, Array<octave_idx_type>& ierr);
156  extern OCTAVE_API ComplexNDArray besselk (double alpha, const ComplexNDArray& x,
157  bool scaled, Array<octave_idx_type>& ierr);
158  extern OCTAVE_API ComplexNDArray besselh1 (double alpha,
159  const ComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
160  extern OCTAVE_API ComplexNDArray besselh2 (double alpha,
161  const ComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
162 
163  extern OCTAVE_API ComplexNDArray besselj (const NDArray& alpha,
164  const Complex& x, bool scaled, Array<octave_idx_type>& ierr);
165  extern OCTAVE_API ComplexNDArray bessely (const NDArray& alpha,
166  const Complex& x, bool scaled, Array<octave_idx_type>& ierr);
167  extern OCTAVE_API ComplexNDArray besseli (const NDArray& alpha,
168  const Complex& x, bool scaled, Array<octave_idx_type>& ierr);
169  extern OCTAVE_API ComplexNDArray besselk (const NDArray& alpha,
170  const Complex& x, bool scaled, Array<octave_idx_type>& ierr);
171  extern OCTAVE_API ComplexNDArray besselh1 (const NDArray& alpha,
172  const Complex& x, bool scaled, Array<octave_idx_type>& ierr);
173  extern OCTAVE_API ComplexNDArray besselh2 (const NDArray& alpha,
174  const Complex& x, bool scaled, Array<octave_idx_type>& ierr);
175 
176  extern OCTAVE_API ComplexNDArray besselj (const NDArray& alpha,
177  const ComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
178  extern OCTAVE_API ComplexNDArray bessely (const NDArray& alpha,
179  const ComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
180  extern OCTAVE_API ComplexNDArray besseli (const NDArray& alpha,
181  const ComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
182  extern OCTAVE_API ComplexNDArray besselk (const NDArray& alpha,
183  const ComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
184  extern OCTAVE_API ComplexNDArray besselh1 (const NDArray& alpha,
185  const ComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
186  extern OCTAVE_API ComplexNDArray besselh2 (const NDArray& alpha,
187  const ComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
188 
189  extern OCTAVE_API ComplexMatrix besselj (const RowVector& alpha,
190  const ComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr);
191  extern OCTAVE_API ComplexMatrix bessely (const RowVector& alpha,
192  const ComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr);
193  extern OCTAVE_API ComplexMatrix besseli (const RowVector& alpha,
194  const ComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr);
195  extern OCTAVE_API ComplexMatrix besselk (const RowVector& alpha,
196  const ComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr);
197  extern OCTAVE_API ComplexMatrix besselh1 (const RowVector& alpha,
198  const ComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr);
199  extern OCTAVE_API ComplexMatrix besselh2 (const RowVector& alpha,
200  const ComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr);
201 
202  extern OCTAVE_API FloatComplex besselj (float alpha, const FloatComplex& x,
203  bool scaled, octave_idx_type& ierr);
204  extern OCTAVE_API FloatComplex bessely (float alpha, const FloatComplex& x,
205  bool scaled, octave_idx_type& ierr);
206  extern OCTAVE_API FloatComplex besseli (float alpha, const FloatComplex& x,
207  bool scaled, octave_idx_type& ierr);
208  extern OCTAVE_API FloatComplex besselk (float alpha, const FloatComplex& x,
209  bool scaled, octave_idx_type& ierr);
210  extern OCTAVE_API FloatComplex besselh1 (float alpha, const FloatComplex& x,
211  bool scaled, octave_idx_type& ierr);
212  extern OCTAVE_API FloatComplex besselh2 (float alpha, const FloatComplex& x,
213  bool scaled, octave_idx_type& ierr);
214 
215  extern OCTAVE_API FloatComplexMatrix besselj (float alpha,
216  const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
217  extern OCTAVE_API FloatComplexMatrix bessely (float alpha,
218  const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
219  extern OCTAVE_API FloatComplexMatrix besseli (float alpha,
220  const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
221  extern OCTAVE_API FloatComplexMatrix besselk (float alpha,
222  const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
223  extern OCTAVE_API FloatComplexMatrix besselh1 (float alpha,
224  const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
225  extern OCTAVE_API FloatComplexMatrix besselh2 (float alpha,
226  const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
227 
228  extern OCTAVE_API FloatComplexMatrix besselj (const FloatMatrix& alpha,
229  const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr);
230  extern OCTAVE_API FloatComplexMatrix bessely (const FloatMatrix& alpha,
231  const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr);
232  extern OCTAVE_API FloatComplexMatrix besseli (const FloatMatrix& alpha,
233  const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr);
234  extern OCTAVE_API FloatComplexMatrix besselk (const FloatMatrix& alpha,
235  const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr);
236  extern OCTAVE_API FloatComplexMatrix besselh1 (const FloatMatrix& alpha,
237  const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr);
238  extern OCTAVE_API FloatComplexMatrix besselh2 (const FloatMatrix& alpha,
239  const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr);
240 
241  extern OCTAVE_API FloatComplexMatrix besselj (const FloatMatrix& alpha,
242  const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
243  extern OCTAVE_API FloatComplexMatrix bessely (const FloatMatrix& alpha,
244  const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
245  extern OCTAVE_API FloatComplexMatrix besseli (const FloatMatrix& alpha,
246  const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
247  extern OCTAVE_API FloatComplexMatrix besselk (const FloatMatrix& alpha,
248  const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
249  extern OCTAVE_API FloatComplexMatrix besselh1 (const FloatMatrix& alpha,
250  const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
251  extern OCTAVE_API FloatComplexMatrix besselh2 (const FloatMatrix& alpha,
252  const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
253 
254  extern OCTAVE_API FloatComplexNDArray besselj (float alpha,
255  const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
256  extern OCTAVE_API FloatComplexNDArray bessely (float alpha,
257  const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
258  extern OCTAVE_API FloatComplexNDArray besseli (float alpha,
259  const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
260  extern OCTAVE_API FloatComplexNDArray besselk (float alpha,
261  const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
262  extern OCTAVE_API FloatComplexNDArray besselh1 (float alpha,
263  const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
264  extern OCTAVE_API FloatComplexNDArray besselh2 (float alpha,
265  const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
266 
267  extern OCTAVE_API FloatComplexNDArray besselj (const FloatNDArray& alpha,
268  const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr);
269  extern OCTAVE_API FloatComplexNDArray bessely (const FloatNDArray& alpha,
270  const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr);
271  extern OCTAVE_API FloatComplexNDArray besseli (const FloatNDArray& alpha,
272  const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr);
273  extern OCTAVE_API FloatComplexNDArray besselk (const FloatNDArray& alpha,
274  const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr);
275  extern OCTAVE_API FloatComplexNDArray besselh1 (const FloatNDArray& alpha,
276  const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr);
277  extern OCTAVE_API FloatComplexNDArray besselh2 (const FloatNDArray& alpha,
278  const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr);
279 
280  extern OCTAVE_API FloatComplexNDArray besselj (const FloatNDArray& alpha,
281  const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
282  extern OCTAVE_API FloatComplexNDArray bessely (const FloatNDArray& alpha,
283  const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
284  extern OCTAVE_API FloatComplexNDArray besseli (const FloatNDArray& alpha,
285  const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
286  extern OCTAVE_API FloatComplexNDArray besselk (const FloatNDArray& alpha,
287  const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
288  extern OCTAVE_API FloatComplexNDArray besselh1 (const FloatNDArray& alpha,
289  const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
290  extern OCTAVE_API FloatComplexNDArray besselh2 (const FloatNDArray& alpha,
291  const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
292 
293  extern OCTAVE_API FloatComplexMatrix besselj (const FloatRowVector& alpha,
294  const FloatComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr);
295  extern OCTAVE_API FloatComplexMatrix bessely (const FloatRowVector& alpha,
296  const FloatComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr);
297  extern OCTAVE_API FloatComplexMatrix besseli (const FloatRowVector& alpha,
298  const FloatComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr);
299  extern OCTAVE_API FloatComplexMatrix besselk (const FloatRowVector& alpha,
300  const FloatComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr);
301  extern OCTAVE_API FloatComplexMatrix besselh1 (const FloatRowVector& alpha,
302  const FloatComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr);
303  extern OCTAVE_API FloatComplexMatrix besselh2 (const FloatRowVector& alpha,
304  const FloatComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr);
305 
306  extern OCTAVE_API Complex airy (const Complex& z, bool deriv, bool scaled,
308  extern OCTAVE_API Complex biry (const Complex& z, bool deriv, bool scaled,
310 
311  extern OCTAVE_API ComplexMatrix airy (const ComplexMatrix& z, bool deriv,
312  bool scaled, Array<octave_idx_type>& ierr);
313  extern OCTAVE_API ComplexMatrix biry (const ComplexMatrix& z, bool deriv,
314  bool scaled, Array<octave_idx_type>& ierr);
315 
316  extern OCTAVE_API ComplexNDArray airy (const ComplexNDArray& z, bool deriv,
317  bool scaled, Array<octave_idx_type>& ierr);
318  extern OCTAVE_API ComplexNDArray biry (const ComplexNDArray& z, bool deriv,
319  bool scaled, Array<octave_idx_type>& ierr);
320 
321  extern OCTAVE_API FloatComplex airy (const FloatComplex& z, bool deriv,
322  bool scaled, octave_idx_type& ierr);
323  extern OCTAVE_API FloatComplex biry (const FloatComplex& z, bool deriv,
324  bool scaled, octave_idx_type& ierr);
325 
326  extern OCTAVE_API FloatComplexMatrix airy (const FloatComplexMatrix& z,
327  bool deriv, bool scaled, Array<octave_idx_type>& ierr);
328  extern OCTAVE_API FloatComplexMatrix biry (const FloatComplexMatrix& z,
329  bool deriv, bool scaled, Array<octave_idx_type>& ierr);
330 
331  extern OCTAVE_API FloatComplexNDArray airy (const FloatComplexNDArray& z,
332  bool deriv, bool scaled, Array<octave_idx_type>& ierr);
333  extern OCTAVE_API FloatComplexNDArray biry (const FloatComplexNDArray& z,
334  bool deriv, bool scaled, Array<octave_idx_type>& ierr);
335 
336  extern OCTAVE_API double betainc (double x, double a, double b);
337  extern OCTAVE_API Array<double> betainc (double x, double a,
338  const Array<double>& b);
339  extern OCTAVE_API Array<double> betainc (double x, const Array<double>& a,
340  double b);
341  extern OCTAVE_API Array<double> betainc (double x, const Array<double>& a,
342  const Array<double>& b);
343 
344  extern OCTAVE_API Array<double> betainc (const Array<double>& x, double a,
345  double b);
346  extern OCTAVE_API Array<double> betainc (const Array<double>& x, double a,
347  const Array<double>& b);
348  extern OCTAVE_API Array<double> betainc (const Array<double>& x,
349  const Array<double>& a, double b);
350  extern OCTAVE_API Array<double> betainc (const Array<double>& x,
351  const Array<double>& a, const Array<double>& b);
352 
353  extern OCTAVE_API float betainc (float x, float a, float b);
354  extern OCTAVE_API Array<float> betainc (float x, float a,
355  const Array<float>& b);
356  extern OCTAVE_API Array<float> betainc (float x, const Array<float>& a,
357  float b);
358  extern OCTAVE_API Array<float> betainc (float x, const Array<float>& a,
359  const Array<float>& b);
360 
361  extern OCTAVE_API Array<float> betainc (const Array<float>& x, float a,
362  float b);
363  extern OCTAVE_API Array<float> betainc (const Array<float>& x, float a,
364  const Array<float>& b);
365  extern OCTAVE_API Array<float> betainc (const Array<float>& x,
366  const Array<float>& a, float b);
367  extern OCTAVE_API Array<float> betainc (const Array<float>& x,
368  const Array<float>& a, const Array<float>& b);
369 
370  extern OCTAVE_API double gammainc (double x, double a, bool& err);
371  inline double gammainc (double x, double a)
372  {
373  bool err;
374  return gammainc (x, a, err);
375  }
376 
377  extern OCTAVE_API Matrix gammainc (double x, const Matrix& a);
378  extern OCTAVE_API Matrix gammainc (const Matrix& x, double a);
379  extern OCTAVE_API Matrix gammainc (const Matrix& x, const Matrix& a);
380 
381  extern OCTAVE_API NDArray gammainc (double x, const NDArray& a);
382  extern OCTAVE_API NDArray gammainc (const NDArray& x, double a);
383  extern OCTAVE_API NDArray gammainc (const NDArray& x, const NDArray& a);
384 
385  extern OCTAVE_API float gammainc (float x, float a, bool& err);
386  inline float gammainc (float x, float a)
387  {
388  bool err;
389  return gammainc (x, a, err);
390  }
391 
392  extern OCTAVE_API FloatMatrix gammainc (float x, const FloatMatrix& a);
393  extern OCTAVE_API FloatMatrix gammainc (const FloatMatrix& x, float a);
394  extern OCTAVE_API FloatMatrix gammainc (const FloatMatrix& x,
395  const FloatMatrix& a);
396 
397  extern OCTAVE_API FloatNDArray gammainc (float x, const FloatNDArray& a);
398  extern OCTAVE_API FloatNDArray gammainc (const FloatNDArray& x, float a);
399  extern OCTAVE_API FloatNDArray gammainc (const FloatNDArray& x,
400  const FloatNDArray& a);
401 
402  extern OCTAVE_API Complex rc_log1p (double x);
403  extern OCTAVE_API FloatComplex rc_log1p (float x);
404 
405  extern OCTAVE_API double erfinv (double x);
406  extern OCTAVE_API float erfinv (float x);
407 
408  extern OCTAVE_API double erfcinv (double x);
409  extern OCTAVE_API float erfcinv (float x);
410 
411  extern OCTAVE_API float erfcx (float x);
412  extern OCTAVE_API double erfcx (double x);
413  extern OCTAVE_API Complex erfcx (const Complex& x);
414  extern OCTAVE_API FloatComplex erfcx (const FloatComplex& x);
415 
416  extern OCTAVE_API float erfi (float x);
417  extern OCTAVE_API double erfi (double x);
418  extern OCTAVE_API Complex erfi (const Complex& x);
419  extern OCTAVE_API FloatComplex erfi (const FloatComplex& x);
420 
421  extern OCTAVE_API float dawson (float x);
422  extern OCTAVE_API double dawson (double x);
423  extern OCTAVE_API Complex dawson (const Complex& x);
424  extern OCTAVE_API FloatComplex dawson (const FloatComplex& x);
425 
426  extern OCTAVE_API double betaincinv (double x, double a, double b);
427  extern OCTAVE_API Array<double> betaincinv (double x, double a,
428  const Array<double>& b);
429  extern OCTAVE_API Array<double> betaincinv (double x, const Array<double>& a,
430  double b);
431  extern OCTAVE_API Array<double> betaincinv (double x, const Array<double>& a,
432  const Array<double>& b);
433 
434  extern OCTAVE_API Array<double> betaincinv (const Array<double>& x, double a,
435  double b);
436  extern OCTAVE_API Array<double> betaincinv (const Array<double>& x, double a,
437  const Array<double>& b);
438  extern OCTAVE_API Array<double> betaincinv (const Array<double>& x,
439  const Array<double>& a, double b);
440  extern OCTAVE_API Array<double> betaincinv (const Array<double>& x,
441  const Array<double>& a, const Array<double>& b);
442 
443  extern OCTAVE_API void ellipj (double u, double m, double& sn, double& cn,
444  double& dn, double& err);
445  extern OCTAVE_API void ellipj (const Complex& u, double m, Complex& sn,
446  Complex& cn, Complex& dn, double& err);
447 
448  extern OCTAVE_API double psi (double x);
449  extern OCTAVE_API float psi (float x);
450 
451  extern OCTAVE_API Complex psi (const Complex& x);
452  extern OCTAVE_API FloatComplex psi (const FloatComplex& x);
453 
454  extern OCTAVE_API double psi (octave_idx_type n, double z);
455  extern OCTAVE_API float psi (octave_idx_type n, float z);
456  }
457 }
458 
459 #if defined (OCTAVE_USE_DEPRECATED_FUNCTIONS)
460 
461 OCTAVE_DEPRECATED ("use 'octave::math::acosh' instead")
462 inline double xacosh (double x) { return octave::math::acosh (x); }
463 OCTAVE_DEPRECATED ("use 'octave::math::acosh' instead")
464 inline float xacosh (float x) { return octave::math::acosh (x); }
465 OCTAVE_DEPRECATED ("use 'octave::math::acosh' instead")
466 inline Complex xacosh (const Complex& x) { return octave::math::acosh (x); }
467 OCTAVE_DEPRECATED ("use 'octave::math::acosh' instead")
468 inline FloatComplex xacosh (const FloatComplex& x) { return octave::math::acosh (x); }
469 
470 OCTAVE_DEPRECATED ("use 'octave::math::asinh' instead")
471 inline double xasinh (double x) { return octave::math::asinh (x); }
472 OCTAVE_DEPRECATED ("use 'octave::math::asinh' instead")
473 inline float xasinh (float x) { return octave::math::asinh (x); }
474 OCTAVE_DEPRECATED ("use 'octave::math::asinh' instead")
475 inline Complex xasinh (const Complex& x) { return octave::math::asinh (x); }
476 OCTAVE_DEPRECATED ("use 'octave::math::asinh' instead")
477 inline FloatComplex xasinh (const FloatComplex& x) { return octave::math::asinh (x); }
478 
479 OCTAVE_DEPRECATED ("use 'octave::math::atanh' instead")
480 inline double xatanh (double x) { return octave::math::atanh (x); }
481 OCTAVE_DEPRECATED ("use 'octave::math::atanh' instead")
482 inline float xatanh (float x) { return octave::math::atanh (x); }
483 OCTAVE_DEPRECATED ("use 'octave::math::atanh' instead")
484 inline Complex xatanh (const Complex& x) { return octave::math::atanh (x); }
485 OCTAVE_DEPRECATED ("use 'octave::math::atanh' instead")
486 inline FloatComplex xatanh (const FloatComplex& x) { return octave::math::atanh (x); }
487 
488 OCTAVE_DEPRECATED ("use 'octave::math::erf' instead")
489 inline double xerf (double x) { return octave::math::erf (x); }
490 OCTAVE_DEPRECATED ("use 'octave::math::erf' instead")
491 inline float xerf (float x) { return octave::math::erf (x); }
492 OCTAVE_DEPRECATED ("use 'octave::math::erf' instead")
493 inline Complex xerf (const Complex& x) { return octave::math::erf (x); }
494 OCTAVE_DEPRECATED ("use 'octave::math::erf' instead")
495 inline FloatComplex xerf (const FloatComplex& x) { return octave::math::erf (x); }
496 
497 OCTAVE_DEPRECATED ("use 'octave::math::erfc' instead")
498 inline double xerfc (double x) { return octave::math::erfc (x); }
499 OCTAVE_DEPRECATED ("use 'octave::math::erfc' instead")
500 inline float xerfc (float x) { return octave::math::erfc (x); }
501 OCTAVE_DEPRECATED ("use 'octave::math::erfc' instead")
502 inline Complex xerfc (const Complex& x) { return octave::math::erfc (x); }
503 OCTAVE_DEPRECATED ("use 'octave::math::erfc' instead")
504 inline FloatComplex xerfc (const FloatComplex& x) { return octave::math::erfc (x); }
505 
506 OCTAVE_DEPRECATED ("use 'octave::math::expm1' instead")
507 inline double xexpm1 (double x) { return octave::math::expm1 (x); }
508 OCTAVE_DEPRECATED ("use 'octave::math::expm1' instead")
509 inline Complex xexpm1 (const Complex& x) { return octave::math::expm1 (x); }
510 
511 OCTAVE_DEPRECATED ("use 'octave::math::expm1' instead")
512 inline float xexpm1 (float x) { return octave::math::expm1 (x); }
513 OCTAVE_DEPRECATED ("use 'octave::math::expm1' instead")
514 inline FloatComplex xexpm1 (const FloatComplex& x) { return octave::math::expm1 (x); }
515 
516 OCTAVE_DEPRECATED ("use 'octave::math::log1p' instead")
517 inline double xlog1p (double x) { return octave::math::log1p (x); }
518 OCTAVE_DEPRECATED ("use 'octave::math::log1p' instead")
519 inline Complex xlog1p (const Complex& x) { return octave::math::log1p (x); }
520 
521 OCTAVE_DEPRECATED ("use 'octave::math::log1p' instead")
522 inline float xlog1p (float x) { return octave::math::log1p (x); }
523 OCTAVE_DEPRECATED ("use 'octave::math::log1p' instead")
524 inline FloatComplex xlog1p (const FloatComplex& x) { return octave::math::log1p (x); }
525 
526 OCTAVE_DEPRECATED ("use 'octave::math::cbrt' instead")
527 inline double xcbrt (double x) { return octave::math::cbrt (x); }
528 OCTAVE_DEPRECATED ("use 'octave::math::cbrt' instead")
529 inline float xcbrt (float x) { return octave::math::cbrt (x); }
530 
531 OCTAVE_DEPRECATED ("use 'octave::math::gamma' instead")
532 inline double xgamma (double x) { return octave::math::gamma (x); }
533 OCTAVE_DEPRECATED ("use 'octave::math::lgamma' instead")
534 inline double xlgamma (double x) { return octave::math::lgamma (x); }
535 
536 OCTAVE_DEPRECATED ("use 'octave::math::rc_lgamma' instead")
537 inline Complex rc_lgamma (double x) { return octave::math::rc_lgamma (x); }
538 
539 OCTAVE_DEPRECATED ("use 'octave::math::gamma' instead")
540 inline float xgamma (float x) { return octave::math::gamma (x); }
541 OCTAVE_DEPRECATED ("use 'octave::math::lgamma' instead")
542 inline float xlgamma (float x) { return octave::math::lgamma (x); }
543 OCTAVE_DEPRECATED ("use 'octave::math::rc_lgamma' instead")
544 inline FloatComplex rc_lgamma (float x) { return octave::math::rc_lgamma (x); }
545 
546 OCTAVE_DEPRECATED ("use 'octave::math::besselj' instead")
547 inline Complex besselj (double alpha, const Complex& x, bool scaled, octave_idx_type& ierr) { return octave::math::besselj (alpha, x, scaled, ierr); }
548 OCTAVE_DEPRECATED ("use 'octave::math::bessely' instead")
549 inline Complex bessely (double alpha, const Complex& x, bool scaled, octave_idx_type& ierr) { return octave::math::bessely (alpha, x, scaled, ierr); }
550 OCTAVE_DEPRECATED ("use 'octave::math::besseli' instead")
551 inline Complex besseli (double alpha, const Complex& x, bool scaled, octave_idx_type& ierr) { return octave::math::besseli (alpha, x, scaled, ierr); }
552 OCTAVE_DEPRECATED ("use 'octave::math::besselk' instead")
553 inline Complex besselk (double alpha, const Complex& x, bool scaled, octave_idx_type& ierr) { return octave::math::besselk (alpha, x, scaled, ierr); }
554 OCTAVE_DEPRECATED ("use 'octave::math::besselh1' instead")
555 inline Complex besselh1 (double alpha, const Complex& x, bool scaled, octave_idx_type& ierr) { return octave::math::besselh1 (alpha, x, scaled, ierr); }
556 OCTAVE_DEPRECATED ("use 'octave::math::besselh2' instead")
557 inline Complex besselh2 (double alpha, const Complex& x, bool scaled, octave_idx_type& ierr) { return octave::math::besselh2 (alpha, x, scaled, ierr); }
558 
559 OCTAVE_DEPRECATED ("use 'octave::math::besselj' instead")
560 extern OCTAVE_API ComplexMatrix besselj (double alpha, const ComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
561 OCTAVE_DEPRECATED ("use 'octave::math::bessely' instead")
562 extern OCTAVE_API ComplexMatrix bessely (double alpha, const ComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
563 OCTAVE_DEPRECATED ("use 'octave::math::besseli' instead")
564 extern OCTAVE_API ComplexMatrix besseli (double alpha, const ComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
565 OCTAVE_DEPRECATED ("use 'octave::math::besselk' instead")
566 extern OCTAVE_API ComplexMatrix besselk (double alpha, const ComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
567 OCTAVE_DEPRECATED ("use 'octave::math::besselh1' instead")
568 extern OCTAVE_API ComplexMatrix besselh1 (double alpha, const ComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
569 OCTAVE_DEPRECATED ("use 'octave::math::besselh2' instead")
570 extern OCTAVE_API ComplexMatrix besselh2 (double alpha, const ComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
571 
572 OCTAVE_DEPRECATED ("use 'octave::math::besselj' instead")
573 extern OCTAVE_API ComplexMatrix besselj (const Matrix& alpha, const Complex& x, bool scaled, Array<octave_idx_type>& ierr);
574 OCTAVE_DEPRECATED ("use 'octave::math::bessely' instead")
575 extern OCTAVE_API ComplexMatrix bessely (const Matrix& alpha, const Complex& x, bool scaled, Array<octave_idx_type>& ierr);
576 OCTAVE_DEPRECATED ("use 'octave::math::besseli' instead")
577 extern OCTAVE_API ComplexMatrix besseli (const Matrix& alpha, const Complex& x, bool scaled, Array<octave_idx_type>& ierr);
578 OCTAVE_DEPRECATED ("use 'octave::math::besselk' instead")
579 extern OCTAVE_API ComplexMatrix besselk (const Matrix& alpha, const Complex& x, bool scaled, Array<octave_idx_type>& ierr);
580 OCTAVE_DEPRECATED ("use 'octave::math::besselh1' instead")
581 extern OCTAVE_API ComplexMatrix besselh1 (const Matrix& alpha, const Complex& x, bool scaled, Array<octave_idx_type>& ierr);
582 OCTAVE_DEPRECATED ("use 'octave::math::besselh2' instead")
583 extern OCTAVE_API ComplexMatrix besselh2 (const Matrix& alpha, const Complex& x, bool scaled, Array<octave_idx_type>& ierr);
584 
585 OCTAVE_DEPRECATED ("use 'octave::math::besselj' instead")
586 extern OCTAVE_API ComplexMatrix besselj (const Matrix& alpha, const ComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
587 OCTAVE_DEPRECATED ("use 'octave::math::bessely' instead")
588 extern OCTAVE_API ComplexMatrix bessely (const Matrix& alpha, const ComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
589 OCTAVE_DEPRECATED ("use 'octave::math::besseli' instead")
590 extern OCTAVE_API ComplexMatrix besseli (const Matrix& alpha, const ComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
591 OCTAVE_DEPRECATED ("use 'octave::math::besselk' instead")
592 extern OCTAVE_API ComplexMatrix besselk (const Matrix& alpha, const ComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
593 OCTAVE_DEPRECATED ("use 'octave::math::besselh1' instead")
594 extern OCTAVE_API ComplexMatrix besselh1 (const Matrix& alpha, const ComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
595 OCTAVE_DEPRECATED ("use 'octave::math::besselh2' instead")
596 extern OCTAVE_API ComplexMatrix besselh2 (const Matrix& alpha, const ComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
597 
598 OCTAVE_DEPRECATED ("use 'octave::math::besselj' instead")
599 extern OCTAVE_API ComplexNDArray besselj (double alpha, const ComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
600 OCTAVE_DEPRECATED ("use 'octave::math::bessely' instead")
601 extern OCTAVE_API ComplexNDArray bessely (double alpha, const ComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
602 OCTAVE_DEPRECATED ("use 'octave::math::besseli' instead")
603 extern OCTAVE_API ComplexNDArray besseli (double alpha, const ComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
604 OCTAVE_DEPRECATED ("use 'octave::math::besselk' instead")
605 extern OCTAVE_API ComplexNDArray besselk (double alpha, const ComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
606 OCTAVE_DEPRECATED ("use 'octave::math::besselh1' instead")
607 extern OCTAVE_API ComplexNDArray besselh1 (double alpha, const ComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
608 OCTAVE_DEPRECATED ("use 'octave::math::besselh2' instead")
609 extern OCTAVE_API ComplexNDArray besselh2 (double alpha, const ComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
610 
611 OCTAVE_DEPRECATED ("use 'octave::math::besselj' instead")
612 extern OCTAVE_API ComplexNDArray besselj (const NDArray& alpha, const Complex& x, bool scaled, Array<octave_idx_type>& ierr);
613 OCTAVE_DEPRECATED ("use 'octave::math::bessely' instead")
614 extern OCTAVE_API ComplexNDArray bessely (const NDArray& alpha, const Complex& x, bool scaled, Array<octave_idx_type>& ierr);
615 OCTAVE_DEPRECATED ("use 'octave::math::besseli' instead")
616 extern OCTAVE_API ComplexNDArray besseli (const NDArray& alpha, const Complex& x, bool scaled, Array<octave_idx_type>& ierr);
617 OCTAVE_DEPRECATED ("use 'octave::math::besselk' instead")
618 extern OCTAVE_API ComplexNDArray besselk (const NDArray& alpha, const Complex& x, bool scaled, Array<octave_idx_type>& ierr);
619 OCTAVE_DEPRECATED ("use 'octave::math::besselh1' instead")
620 extern OCTAVE_API ComplexNDArray besselh1 (const NDArray& alpha, const Complex& x, bool scaled, Array<octave_idx_type>& ierr);
621 OCTAVE_DEPRECATED ("use 'octave::math::besselh2' instead")
622 extern OCTAVE_API ComplexNDArray besselh2 (const NDArray& alpha, const Complex& x, bool scaled, Array<octave_idx_type>& ierr);
623 
624 OCTAVE_DEPRECATED ("use 'octave::math::besselj' instead")
625 extern OCTAVE_API ComplexNDArray besselj (const NDArray& alpha, const ComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
626 OCTAVE_DEPRECATED ("use 'octave::math::bessely' instead")
627 extern OCTAVE_API ComplexNDArray bessely (const NDArray& alpha, const ComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
628 OCTAVE_DEPRECATED ("use 'octave::math::besseli' instead")
629 extern OCTAVE_API ComplexNDArray besseli (const NDArray& alpha, const ComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
630 OCTAVE_DEPRECATED ("use 'octave::math::besselk' instead")
631 extern OCTAVE_API ComplexNDArray besselk (const NDArray& alpha, const ComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
632 OCTAVE_DEPRECATED ("use 'octave::math::besselh1' instead")
633 extern OCTAVE_API ComplexNDArray besselh1 (const NDArray& alpha, const ComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
634 OCTAVE_DEPRECATED ("use 'octave::math::besselh2' instead")
635 extern OCTAVE_API ComplexNDArray besselh2 (const NDArray& alpha, const ComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
636 
637 OCTAVE_DEPRECATED ("use 'octave::math::besselj' instead")
638 extern OCTAVE_API ComplexMatrix besselj (const RowVector& alpha, const ComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr);
639 OCTAVE_DEPRECATED ("use 'octave::math::bessely' instead")
640 extern OCTAVE_API ComplexMatrix bessely (const RowVector& alpha, const ComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr);
641 OCTAVE_DEPRECATED ("use 'octave::math::besseli' instead")
642 extern OCTAVE_API ComplexMatrix besseli (const RowVector& alpha, const ComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr);
643 OCTAVE_DEPRECATED ("use 'octave::math::besselk' instead")
644 extern OCTAVE_API ComplexMatrix besselk (const RowVector& alpha, const ComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr);
645 OCTAVE_DEPRECATED ("use 'octave::math::besselh1' instead")
646 extern OCTAVE_API ComplexMatrix besselh1 (const RowVector& alpha, const ComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr);
647 OCTAVE_DEPRECATED ("use 'octave::math::besselh2' instead")
648 extern OCTAVE_API ComplexMatrix besselh2 (const RowVector& alpha, const ComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr);
649 
650 OCTAVE_DEPRECATED ("use 'octave::math::besselj' instead")
651 inline FloatComplex besselj (float alpha, const FloatComplex& x, bool scaled, octave_idx_type& ierr) { return octave::math::besselj (alpha, x, scaled, ierr); }
652 OCTAVE_DEPRECATED ("use 'octavh::bessely' instead")
653 inline FloatComplex bessely (float alpha, const FloatComplex& x, bool scaled, octave_idx_type& ierr) { return octave::math::bessely (alpha, x, scaled, ierr); }
654 OCTAVE_DEPRECATED ("use 'octavh::besseli' instead")
655 inline FloatComplex besseli (float alpha, const FloatComplex& x, bool scaled, octave_idx_type& ierr) { return octave::math::besseli (alpha, x, scaled, ierr); }
656 OCTAVE_DEPRECATED ("use 'octavh::besselk' instead")
657 inline FloatComplex besselk (float alpha, const FloatComplex& x, bool scaled, octave_idx_type& ierr) { return octave::math::besselk (alpha, x, scaled, ierr); }
658 OCTAVE_DEPRECATED ("use 'octavh::besselh1' instead")
659 inline FloatComplex besselh1 (float alpha, const FloatComplex& x, bool scaled, octave_idx_type& ierr) { return octave::math::besselh1 (alpha, x, scaled, ierr); }
660 OCTAVE_DEPRECATED ("use 'octavh::besselh2' instead")
661 inline FloatComplex besselh2 (float alpha, const FloatComplex& x, bool scaled, octave_idx_type& ierr) { return octave::math::besselh2 (alpha, x, scaled, ierr); }
662 
663 OCTAVE_DEPRECATED ("use 'octave::math::besselj' instead")
664 extern OCTAVE_API FloatComplexMatrix besselj (float alpha, const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
665 OCTAVE_DEPRECATED ("use 'octave::math::bessely' instead")
666 extern OCTAVE_API FloatComplexMatrix bessely (float alpha, const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
667 OCTAVE_DEPRECATED ("use 'octave::math::besseli' instead")
668 extern OCTAVE_API FloatComplexMatrix besseli (float alpha, const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
669 OCTAVE_DEPRECATED ("use 'octave::math::besselk' instead")
670 extern OCTAVE_API FloatComplexMatrix besselk (float alpha, const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
671 OCTAVE_DEPRECATED ("use 'octave::math::besselh1' instead")
672 extern OCTAVE_API FloatComplexMatrix besselh1 (float alpha, const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
673 OCTAVE_DEPRECATED ("use 'octave::math::besselh2' instead")
674 extern OCTAVE_API FloatComplexMatrix besselh2 (float alpha, const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
675 
676 OCTAVE_DEPRECATED ("use 'octave::math::besselj' instead")
677 extern OCTAVE_API FloatComplexMatrix besselj (const FloatMatrix& alpha, const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr);
678 OCTAVE_DEPRECATED ("use 'octave::math::bessely' instead")
679 extern OCTAVE_API FloatComplexMatrix bessely (const FloatMatrix& alpha, const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr);
680 OCTAVE_DEPRECATED ("use 'octave::math::besseli' instead")
681 extern OCTAVE_API FloatComplexMatrix besseli (const FloatMatrix& alpha, const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr);
682 OCTAVE_DEPRECATED ("use 'octave::math::besselk' instead")
683 extern OCTAVE_API FloatComplexMatrix besselk (const FloatMatrix& alpha, const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr);
684 OCTAVE_DEPRECATED ("use 'octave::math::besselh1' instead")
685 extern OCTAVE_API FloatComplexMatrix besselh1 (const FloatMatrix& alpha, const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr);
686 OCTAVE_DEPRECATED ("use 'octave::math::besselh2' instead")
687 extern OCTAVE_API FloatComplexMatrix besselh2 (const FloatMatrix& alpha, const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr);
688 
689 OCTAVE_DEPRECATED ("use 'octave::math::besselj' instead")
690 extern OCTAVE_API FloatComplexMatrix besselj (const FloatMatrix& alpha, const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
691 OCTAVE_DEPRECATED ("use 'octave::math::bessely' instead")
692 extern OCTAVE_API FloatComplexMatrix bessely (const FloatMatrix& alpha, const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
693 OCTAVE_DEPRECATED ("use 'octave::math::besseli' instead")
694 extern OCTAVE_API FloatComplexMatrix besseli (const FloatMatrix& alpha, const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
695 OCTAVE_DEPRECATED ("use 'octave::math::besselk' instead")
696 extern OCTAVE_API FloatComplexMatrix besselk (const FloatMatrix& alpha, const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
697 OCTAVE_DEPRECATED ("use 'octave::math::besselh1' instead")
698 extern OCTAVE_API FloatComplexMatrix besselh1 (const FloatMatrix& alpha, const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
699 OCTAVE_DEPRECATED ("use 'octave::math::besselh2' instead")
700 extern OCTAVE_API FloatComplexMatrix besselh2 (const FloatMatrix& alpha, const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr);
701 
702 OCTAVE_DEPRECATED ("use 'octave::math::besselj' instead")
703 extern OCTAVE_API FloatComplexNDArray besselj (float alpha, const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
704 OCTAVE_DEPRECATED ("use 'octave::math::bessely' instead")
705 extern OCTAVE_API FloatComplexNDArray bessely (float alpha, const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
706 OCTAVE_DEPRECATED ("use 'octave::math::besseli' instead")
707 extern OCTAVE_API FloatComplexNDArray besseli (float alpha, const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
708 OCTAVE_DEPRECATED ("use 'octave::math::besselk' instead")
709 extern OCTAVE_API FloatComplexNDArray besselk (float alpha, const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
710 OCTAVE_DEPRECATED ("use 'octave::math::besselh1' instead")
711 extern OCTAVE_API FloatComplexNDArray besselh1 (float alpha, const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
712 OCTAVE_DEPRECATED ("use 'octave::math::besselh2' instead")
713 extern OCTAVE_API FloatComplexNDArray besselh2 (float alpha, const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
714 
715 OCTAVE_DEPRECATED ("use 'octave::math::besselj' instead")
716 extern OCTAVE_API FloatComplexNDArray besselj (const FloatNDArray& alpha, const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr);
717 OCTAVE_DEPRECATED ("use 'octave::math::bessely' instead")
718 extern OCTAVE_API FloatComplexNDArray bessely (const FloatNDArray& alpha, const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr);
719 OCTAVE_DEPRECATED ("use 'octave::math::besseli' instead")
720 extern OCTAVE_API FloatComplexNDArray besseli (const FloatNDArray& alpha, const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr);
721 OCTAVE_DEPRECATED ("use 'octave::math::besselk' instead")
722 extern OCTAVE_API FloatComplexNDArray besselk (const FloatNDArray& alpha, const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr);
723 OCTAVE_DEPRECATED ("use 'octave::math::besselh1' instead")
724 extern OCTAVE_API FloatComplexNDArray besselh1 (const FloatNDArray& alpha, const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr);
725 OCTAVE_DEPRECATED ("use 'octave::math::besselh2' instead")
726 extern OCTAVE_API FloatComplexNDArray besselh2 (const FloatNDArray& alpha, const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr);
727 
728 OCTAVE_DEPRECATED ("use 'octave::math::besselj' instead")
729 extern OCTAVE_API FloatComplexNDArray besselj (const FloatNDArray& alpha, const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
730 OCTAVE_DEPRECATED ("use 'octave::math::bessely' instead")
731 extern OCTAVE_API FloatComplexNDArray bessely (const FloatNDArray& alpha, const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
732 OCTAVE_DEPRECATED ("use 'octave::math::besseli' instead")
733 extern OCTAVE_API FloatComplexNDArray besseli (const FloatNDArray& alpha, const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
734 OCTAVE_DEPRECATED ("use 'octave::math::besselk' instead")
735 extern OCTAVE_API FloatComplexNDArray besselk (const FloatNDArray& alpha, const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
736 OCTAVE_DEPRECATED ("use 'octave::math::besselh1' instead")
737 extern OCTAVE_API FloatComplexNDArray besselh1 (const FloatNDArray& alpha, const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
738 OCTAVE_DEPRECATED ("use 'octave::math::besselh2' instead")
739 extern OCTAVE_API FloatComplexNDArray besselh2 (const FloatNDArray& alpha, const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr);
740 
741 OCTAVE_DEPRECATED ("use 'octave::math::besselj' instead")
742 extern OCTAVE_API FloatComplexMatrix besselj (const FloatRowVector& alpha, const FloatComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr);
743 OCTAVE_DEPRECATED ("use 'octave::math::bessely' instead")
744 extern OCTAVE_API FloatComplexMatrix bessely (const FloatRowVector& alpha, const FloatComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr);
745 OCTAVE_DEPRECATED ("use 'octave::math::besseli' instead")
746 extern OCTAVE_API FloatComplexMatrix besseli (const FloatRowVector& alpha, const FloatComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr);
747 OCTAVE_DEPRECATED ("use 'octave::math::besselk' instead")
748 extern OCTAVE_API FloatComplexMatrix besselk (const FloatRowVector& alpha, const FloatComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr);
749 OCTAVE_DEPRECATED ("use 'octave::math::besselh1' instead")
750 extern OCTAVE_API FloatComplexMatrix besselh1 (const FloatRowVector& alpha, const FloatComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr);
751 OCTAVE_DEPRECATED ("use 'octave::math::besselh2' instead")
752 extern OCTAVE_API FloatComplexMatrix besselh2 (const FloatRowVector& alpha, const FloatComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr);
753 
754 OCTAVE_DEPRECATED ("use 'octave::math::airy' instead")
755 inline Complex airy (const Complex& z, bool deriv, bool scaled, octave_idx_type& ierr) { return octave::math::airy (z, deriv, scaled, ierr); }
756 OCTAVE_DEPRECATED ("use 'octave::math::biry' instead")
757 inline Complex biry (const Complex& z, bool deriv, bool scaled, octave_idx_type& ierr) { return octave::math::biry (z, deriv, scaled, ierr); }
758 
759 OCTAVE_DEPRECATED ("use 'octave::math::airy' instead")
760 extern OCTAVE_API ComplexMatrix airy (const ComplexMatrix& z, bool deriv, bool scaled, Array<octave_idx_type>& ierr);
761 OCTAVE_DEPRECATED ("use 'octave::math::biry' instead")
762 extern OCTAVE_API ComplexMatrix biry (const ComplexMatrix& z, bool deriv, bool scaled, Array<octave_idx_type>& ierr);
763 
764 OCTAVE_DEPRECATED ("use 'octave::math::airy' instead")
765 extern OCTAVE_API ComplexNDArray airy (const ComplexNDArray& z, bool deriv, bool scaled, Array<octave_idx_type>& ierr);
766 OCTAVE_DEPRECATED ("use 'octave::math::biry' instead")
767 extern OCTAVE_API ComplexNDArray biry (const ComplexNDArray& z, bool deriv, bool scaled, Array<octave_idx_type>& ierr);
768 
769 OCTAVE_DEPRECATED ("use 'octave::math::airy' instead")
770 inline FloatComplex airy (const FloatComplex& z, bool deriv, bool scaled, octave_idx_type& ierr) { return octave::math::airy (z, deriv, scaled, ierr); }
771 OCTAVE_DEPRECATED ("use 'octave::math::biry' instead")
772 inline FloatComplex biry (const FloatComplex& z, bool deriv, bool scaled, octave_idx_type& ierr) { return octave::math::biry (z, deriv, scaled, ierr); }
773 
774 OCTAVE_DEPRECATED ("use 'octave::math::airy' instead")
775 extern OCTAVE_API FloatComplexMatrix airy (const FloatComplexMatrix& z, bool deriv, bool scaled, Array<octave_idx_type>& ierr);
776 OCTAVE_DEPRECATED ("use 'octave::math::biry' instead")
777 extern OCTAVE_API FloatComplexMatrix biry (const FloatComplexMatrix& z, bool deriv, bool scaled, Array<octave_idx_type>& ierr);
778 
779 OCTAVE_DEPRECATED ("use 'octave::math::airy' instead")
780 extern OCTAVE_API FloatComplexNDArray airy (const FloatComplexNDArray& z, bool deriv, bool scaled, Array<octave_idx_type>& ierr);
781 OCTAVE_DEPRECATED ("use 'octave::math::biry' instead")
782 extern OCTAVE_API FloatComplexNDArray biry (const FloatComplexNDArray& z, bool deriv, bool scaled, Array<octave_idx_type>& ierr);
783 
784 OCTAVE_DEPRECATED ("use 'octave::math::betainc' instead")
785 inline double betainc (double x, double a, double b) { return octave::math::betainc (x, a, b); }
786 OCTAVE_DEPRECATED ("use 'octave::math::betainc' instead")
787 extern OCTAVE_API Array<double> betainc (double x, double a, const Array<double>& b);
788 OCTAVE_DEPRECATED ("use 'octave::math::betainc' instead")
789 extern OCTAVE_API Array<double> betainc (double x, const Array<double>& a, double b);
790 OCTAVE_DEPRECATED ("use 'octave::math::betainc' instead")
791 extern OCTAVE_API Array<double> betainc (double x, const Array<double>& a, const Array<double>& b);
792 
793 OCTAVE_DEPRECATED ("use 'octave::math::betainc' instead")
794 inline float betainc (float x, float a, float b) { return octave::math::betainc (x, a, b); }
795 OCTAVE_DEPRECATED ("use 'octave::math::betainc' instead")
796 extern OCTAVE_API Array<double> betainc (const Array<double>& x, double a, const Array<double>& b);
797 OCTAVE_DEPRECATED ("use 'octave::math::betainc' instead")
798 extern OCTAVE_API Array<double> betainc (const Array<double>& x, const Array<double>& a, double b);
799 OCTAVE_DEPRECATED ("use 'octave::math::betainc' instead")
800 extern OCTAVE_API Array<double> betainc (const Array<double>& x, const Array<double>& a, const Array<double>& b);
801 
802 OCTAVE_DEPRECATED ("use 'octave::math::betainc' instead")
803 extern OCTAVE_API float betainc (float x, float a, float b);
804 OCTAVE_DEPRECATED ("use 'octave::math::betainc' instead")
805 extern OCTAVE_API Array<float> betainc (float x, float a, const Array<float>& b);
806 OCTAVE_DEPRECATED ("use 'octave::math::betainc' instead")
807 extern OCTAVE_API Array<float> betainc (float x, const Array<float>& a, float b);
808 OCTAVE_DEPRECATED ("use 'octave::math::betainc' instead")
809 extern OCTAVE_API Array<float> betainc (float x, const Array<float>& a, const Array<float>& b);
810 
811 OCTAVE_DEPRECATED ("use 'octave::math::betainc' instead")
812 extern OCTAVE_API Array<float> betainc (const Array<float>& x, float a, float b);
813 OCTAVE_DEPRECATED ("use 'octave::math::betainc' instead")
814 extern OCTAVE_API Array<float> betainc (const Array<float>& x, float a, const Array<float>& b);
815 OCTAVE_DEPRECATED ("use 'octave::math::betainc' instead")
816 extern OCTAVE_API Array<float> betainc (const Array<float>& x, const Array<float>& a, float b);
817 OCTAVE_DEPRECATED ("use 'octave::math::betainc' instead")
818 extern OCTAVE_API Array<float> betainc (const Array<float>& x, const Array<float>& a, const Array<float>& b);
819 
820 OCTAVE_DEPRECATED ("use 'octave::math::gammainc' instead")
821 inline double gammainc (double x, double a, bool& err) { return octave::math::gammainc (x, a, err); }
822 OCTAVE_DEPRECATED ("use 'octave::math::gammainc' instead")
823 inline double gammainc (double x, double a) { return octave::math::gammainc (x, a); }
824 
825 OCTAVE_DEPRECATED ("use 'octave::math::gammainc' instead")
826 extern OCTAVE_API Matrix gammainc (double x, const Matrix& a);
827 OCTAVE_DEPRECATED ("use 'octave::math::gammainc' instead")
828 extern OCTAVE_API Matrix gammainc (const Matrix& x, double a);
829 OCTAVE_DEPRECATED ("use 'octave::math::gammainc' instead")
830 extern OCTAVE_API Matrix gammainc (const Matrix& x, const Matrix& a);
831 
832 OCTAVE_DEPRECATED ("use 'octave::math::gammainc' instead")
833 extern OCTAVE_API NDArray gammainc (double x, const NDArray& a);
834 OCTAVE_DEPRECATED ("use 'octave::math::gammainc' instead")
835 extern OCTAVE_API NDArray gammainc (const NDArray& x, double a);
836 OCTAVE_DEPRECATED ("use 'octave::math::rc_log1p' instead")
837 extern OCTAVE_API NDArray gammainc (const NDArray& x, const NDArray& a);
838 
839 OCTAVE_DEPRECATED ("use 'octave::math::gammainc' instead")
840 inline float gammainc (float x, float a, bool& err) { return octave::math::gammainc (x, a, err); }
841 OCTAVE_DEPRECATED ("use 'octave::math::gammainc' instead")
842 inline float gammainc (float x, float a) { return octave::math::gammainc (x, a); }
843 
844 OCTAVE_DEPRECATED ("use 'octave::math::rc_log1p' instead")
845 extern OCTAVE_API FloatMatrix gammainc (float x, const FloatMatrix& a);
846 OCTAVE_DEPRECATED ("use 'octave::math::rc_log1p' instead")
847 extern OCTAVE_API FloatMatrix gammainc (const FloatMatrix& x, float a);
848 OCTAVE_DEPRECATED ("use 'octave::math::rc_log1p' instead")
849 extern OCTAVE_API FloatMatrix gammainc (const FloatMatrix& x, const FloatMatrix& a);
850 
851 OCTAVE_DEPRECATED ("use 'octave::math::rc_log1p' instead")
852 extern OCTAVE_API FloatNDArray gammainc (float x, const FloatNDArray& a);
853 OCTAVE_DEPRECATED ("use 'octave::math::rc_log1p' instead")
854 extern OCTAVE_API FloatNDArray gammainc (const FloatNDArray& x, float a);
855 OCTAVE_DEPRECATED ("use 'octave::math::rc_log1p' instead")
856 extern OCTAVE_API FloatNDArray gammainc (const FloatNDArray& x, const FloatNDArray& a);
857 
858 OCTAVE_DEPRECATED ("use 'octave::math::rc_log1p' instead")
859 inline Complex rc_log1p (double x) { return octave::math::rc_log1p (x); }
860 OCTAVE_DEPRECATED ("use 'octave::math::rc_log1p' instead")
861 inline FloatComplex rc_log1p (float x) { return octave::math::rc_log1p (x); }
862 
863 OCTAVE_DEPRECATED ("use 'octave::math::erfinv' instead")
864 inline double erfinv (double x) { return octave::math::erfinv (x); }
865 OCTAVE_DEPRECATED ("use 'octave::math::erfinv' instead")
866 inline float erfinv (float x) { return octave::math::erfinv (x); }
867 
868 OCTAVE_DEPRECATED ("use 'octave::math::erfcinv' instead")
869 inline double erfcinv (double x) { return octave::math::erfcinv (x); }
870 OCTAVE_DEPRECATED ("use 'octave::math::erfcinv' instead")
871 inline float erfcinv (float x) { return octave::math::erfcinv (x); }
872 
873 OCTAVE_DEPRECATED ("use 'octave::math::erfcx' instead")
874 inline float erfcx (float x) { return octave::math::erfcx (x); }
875 OCTAVE_DEPRECATED ("use 'octave::math::erfcx' instead")
876 inline double erfcx (double x) { return octave::math::erfcx (x); }
877 OCTAVE_DEPRECATED ("use 'octave::math::erfcx' instead")
878 inline Complex erfcx (const Complex& x) { return octave::math::erfcx (x); }
879 OCTAVE_DEPRECATED ("use 'octave::math::erfcx' instead")
880 inline FloatComplex erfcx (const FloatComplex& x) { return octave::math::erfcx (x); }
881 
882 OCTAVE_DEPRECATED ("use 'octave::math::erfi' instead")
883 inline float erfi (float x) { return octave::math::erfi (x); }
884 OCTAVE_DEPRECATED ("use 'octave::math::erfi' instead")
885 inline double erfi (double x) { return octave::math::erfi (x); }
886 OCTAVE_DEPRECATED ("use 'octave::math::erfi' instead")
887 inline Complex erfi (const Complex& x) { return octave::math::erfi (x); }
888 OCTAVE_DEPRECATED ("use 'octave::math::erfi' instead")
889 inline FloatComplex erfi (const FloatComplex& x) { return octave::math::erfi (x); }
890 
891 OCTAVE_DEPRECATED ("use 'octave::math::dawson' instead")
892 inline float dawson (float x) { return octave::math::dawson (x); }
893 OCTAVE_DEPRECATED ("use 'octave::math::dawson' instead")
894 inline double dawson (double x) { return octave::math::dawson (x); }
895 OCTAVE_DEPRECATED ("use 'octave::math::dawson' instead")
896 inline Complex dawson (const Complex& x) { return octave::math::dawson (x); }
897 OCTAVE_DEPRECATED ("use 'octave::math::dawson' instead")
898 inline FloatComplex dawson (const FloatComplex& x) { return octave::math::dawson (x); }
899 
900 OCTAVE_DEPRECATED ("use 'octave::math::betaincinv' instead")
901 inline double betaincinv (double x, double a, double b) { return octave::math::betaincinv (x, a, b); }
902 
903 OCTAVE_DEPRECATED ("use 'octave::math::betaincinv' instead")
904 extern OCTAVE_API double betaincinv (double x, double a, double b);
905 OCTAVE_DEPRECATED ("use 'octave::math::betaincinv' instead")
906 extern OCTAVE_API Array<double> betaincinv (double x, double a, const Array<double>& b);
907 OCTAVE_DEPRECATED ("use 'octave::math::betaincinv' instead")
908 extern OCTAVE_API Array<double> betaincinv (double x, const Array<double>& a, double b);
909 OCTAVE_DEPRECATED ("use 'octave::math::betaincinv' instead")
910 extern OCTAVE_API Array<double> betaincinv (double x, const Array<double>& a, const Array<double>& b);
911 
912 OCTAVE_DEPRECATED ("use 'octave::math::betaincinv' instead")
913 extern OCTAVE_API Array<double> betaincinv (const Array<double>& x, double a, double b);
914 OCTAVE_DEPRECATED ("use 'octave::math::betaincinv' instead")
915 extern OCTAVE_API Array<double> betaincinv (const Array<double>& x, double a, const Array<double>& b);
916 OCTAVE_DEPRECATED ("use 'octave::math::betaincinv' instead")
917 extern OCTAVE_API Array<double> betaincinv (const Array<double>& x, const Array<double>& a, double b);
918 OCTAVE_DEPRECATED ("use 'octave::math::betaincinv' instead")
919 extern OCTAVE_API Array<double> betaincinv (const Array<double>& x, const Array<double>& a, const Array<double>& b);
920 
921 OCTAVE_DEPRECATED ("use 'octave::math::ellipj' instead")
922 inline void ellipj (double u, double m, double& sn, double& cn, double& dn, double& err) { octave::math::ellipj (u, m, sn, cn, dn, err); }
923 OCTAVE_DEPRECATED ("use 'octave::math::ellipj' instead")
924 inline void ellipj (const Complex& u, double m, Complex& sn, Complex& cn, Complex& dn, double& err) { octave::math::ellipj (u, m, sn, cn, dn, err); }
925 
926 //! Digamma function.
927 //!
928 //! Only defined for double and float.
929 template <typename T>
930 OCTAVE_DEPRECATED ("use 'octave::math::psi' instead")
931 T
932 psi (T z);
933 
934 template <>
935 inline double
936 psi (double z)
937 {
938  return octave::math::psi (z);
939 }
940 
941 template <>
942 inline float
943 psi (float z)
944 {
945  return octave::math::psi (z);
946 }
947 
948 //! Digamma function for complex input.
949 //!
950 //! Only defined for double and float.
951 template <typename T>
952 OCTAVE_DEPRECATED ("use 'octave::math::psi' instead")
953 std::complex<T>
954 psi (const std::complex<T>& z);
955 
956 template <>
957 inline std::complex<double>
958 psi (const std::complex<double>& z)
959 {
960  return octave::math::psi (z);
961 }
962 
963 template <>
964 inline std::complex<float>
965 psi (const std::complex<float>& z)
966 {
967  return octave::math::psi (z);
968 }
969 
970 //! Polygamma function.
971 //!
972 //! Only defined for double and float.
973 //! @param n must be non-negative. If zero, the digamma function is computed.
974 //! @param z must be real and non-negative.
975 template <typename T>
976 OCTAVE_DEPRECATED ("use 'octave::math::psi' instead")
977 T
978 psi (octave_idx_type n, T z);
979 
980 template<>
981 inline double
982 psi (octave_idx_type n, double z)
983 {
984  return octave::math::psi (n, z);
985 }
986 
987 template<>
988 inline float
989 psi (octave_idx_type n, float z)
990 {
991  return octave::math::psi (n, z);
992 }
993 
994 #endif
995 
996 #endif
F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T const F77_REAL const F77_REAL F77_REAL &F77_RET_T const F77_DBLE const F77_DBLE F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T const F77_DBLE F77_DBLE &F77_RET_T const F77_REAL F77_REAL &F77_RET_T F77_REAL F77_REAL &F77_RET_T F77_DBLE F77_DBLE &F77_RET_T const F77_DBLE const F77_DBLE F77_DBLE const F77_INT F77_INT * ierr
Octave interface to the compression and uncompression libraries.
Definition: aepbalance.cc:47
subroutine xerf(x, result)
Definition: xerf.f:1
double psi(double z)
Definition: lo-specfun.cc:3714
float erfcx(float x)
Definition: lo-specfun.cc:271
std::complex< double > erfi(std::complex< double > z, double relerr=0)
Complex besselk(double alpha, const Complex &x, bool scaled, octave_idx_type &ierr)
Definition: lo-specfun.cc:1337
double betaincinv(double y, double p, double q)
Definition: lo-specfun.cc:3193
double atanh(double x)
Definition: lo-specfun.cc:149
Definition: Range.h:33
Complex rc_lgamma(double x)
Definition: lo-specfun.cc:373
Complex besselh1(double alpha, const Complex &x, bool scaled, octave_idx_type &ierr)
Definition: lo-specfun.cc:1338
STL namespace.
static double xlgamma(double x)
Definition: randpoisson.cc:53
u
Definition: lu.cc:138
double expm1(double x)
Definition: lo-specfun.cc:473
T xcbrt(T x)
Definition: lo-specfun.cc:633
double asinh(double x)
Definition: lo-specfun.cc:105
subroutine xerfc(x, result)
Definition: xerfc.f:1
float gammainc(float x, float a)
Definition: lo-specfun.h:386
double cbrt(double x)
Definition: lo-specfun.cc:648
double acosh(double x)
Definition: lo-specfun.cc:61
subroutine xgamma(x, result)
Definition: xgamma.f:1
calling an anonymous function involves an overhead quite comparable to the overhead of an m file function Passing a handle to a built in function is because the interpreter is not involved in the internal loop For a
Definition: cellfun.cc:398
float erfi(float x)
Definition: lo-specfun.cc:289
double gamma(double x)
Definition: lo-specfun.cc:325
Complex besseli(double alpha, const Complex &x, bool scaled, octave_idx_type &ierr)
Definition: lo-specfun.cc:1336
nd deftypefn *octave_map m
Definition: ov-struct.cc:2058
float dawson(float x)
Definition: lo-specfun.cc:307
subroutine xacosh(x, result)
Definition: xacosh.f:1
std::complex< double > erfcx(std::complex< double > z, double relerr=0)
Definition: dMatrix.h:37
double erfcinv(double x)
Definition: lo-specfun.cc:3049
double erf(double x)
Definition: lo-specfun.cc:193
double betainc(double x, double a, double b)
Definition: lo-specfun.cc:2265
double log1p(double x)
Definition: lo-specfun.cc:587
Complex rc_log1p(double x)
Definition: lo-specfun.cc:2872
b
Definition: cellfun.cc:398
Complex besselh2(double alpha, const Complex &x, bool scaled, octave_idx_type &ierr)
Definition: lo-specfun.cc:1339
double erfinv(double x)
Definition: lo-specfun.cc:2960
void ellipj(double u, double m, double &sn, double &cn, double &dn, double &err)
Definition: lo-specfun.cc:3511
double erfc(double x)
Definition: lo-specfun.cc:232
double gammainc(double x, double a, bool &err)
Definition: lo-specfun.cc:2547
std::complex< float > FloatComplex
Definition: oct-cmplx.h:32
OCTAVE_EXPORT octave_value_list error nd deftypefn *const octave_scalar_map err
Definition: error.cc:1036
Complex airy(const Complex &z, bool deriv, bool scaled, octave_idx_type &ierr)
Definition: lo-specfun.cc:1971
double lgamma(double x)
Definition: lo-specfun.cc:353
std::complex< double > Complex
Definition: oct-cmplx.h:31
subroutine xatanh(x, result)
Definition: xatanh.f:1
F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T const F77_REAL const F77_REAL F77_REAL &F77_RET_T const F77_DBLE const F77_DBLE F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T const F77_DBLE F77_DBLE &F77_RET_T const F77_REAL F77_REAL &F77_RET_T F77_REAL F77_REAL &F77_RET_T F77_DBLE F77_DBLE &F77_RET_T const F77_DBLE * x
Complex besselj(double alpha, const Complex &x, bool scaled, octave_idx_type &ierr)
Definition: lo-specfun.cc:1334
Complex bessely(double alpha, const Complex &x, bool scaled, octave_idx_type &ierr)
Definition: lo-specfun.cc:1335
subroutine xasinh(x, result)
Definition: xasinh.f:1
Complex biry(const Complex &z, bool deriv, bool scaled, octave_idx_type &ierr)
Definition: lo-specfun.cc:2005