Mercurial > octave-nkf
annotate libinterp/corefcn/besselj.cc @ 20594:a05a0432dff4
eliminate more simple uses of error_state
* data.cc: Eliminate simple uses of error_state.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Mon, 05 Oct 2015 23:42:49 -0400 |
parents | 0650b8431037 |
children |
rev | line source |
---|---|
3155 | 1 /* |
2 | |
19731
4197fc428c7d
maint: Update copyright notices for 2015.
John W. Eaton <jwe@octave.org>
parents:
18111
diff
changeset
|
3 Copyright (C) 1997-2015 John W. Eaton |
3155 | 4 |
5 This file is part of Octave. | |
6 | |
7 Octave is free software; you can redistribute it and/or modify it | |
8 under the terms of the GNU General Public License as published by the | |
7016 | 9 Free Software Foundation; either version 3 of the License, or (at your |
10 option) any later version. | |
3155 | 11 |
12 Octave is distributed in the hope that it will be useful, but WITHOUT | |
13 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
14 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | |
15 for more details. | |
16 | |
17 You should have received a copy of the GNU General Public License | |
7016 | 18 along with Octave; see the file COPYING. If not, see |
19 <http://www.gnu.org/licenses/>. | |
3155 | 20 |
21 */ | |
22 | |
23 #ifdef HAVE_CONFIG_H | |
24 #include <config.h> | |
25 #endif | |
26 | |
27 #include "lo-specfun.h" | |
4153 | 28 #include "quit.h" |
3155 | 29 |
15039
e753177cde93
maint: Move non-dynamically linked functions from DLD-FUNCTIONS/ to corefcn/ directory
Rik <rik@octave.org>
parents:
14854
diff
changeset
|
30 #include "defun.h" |
3155 | 31 #include "error.h" |
32 #include "gripes.h" | |
33 #include "oct-obj.h" | |
34 #include "utils.h" | |
35 | |
3220 | 36 enum bessel_type |
37 { | |
38 BESSEL_J, | |
39 BESSEL_Y, | |
40 BESSEL_I, | |
41 BESSEL_K, | |
42 BESSEL_H1, | |
43 BESSEL_H2 | |
44 }; | |
45 | |
46 #define DO_BESSEL(type, alpha, x, scaled, ierr, result) \ | |
3155 | 47 do \ |
48 { \ | |
49 switch (type) \ | |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
50 { \ |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
51 case BESSEL_J: \ |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
52 result = besselj (alpha, x, scaled, ierr); \ |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
53 break; \ |
3220 | 54 \ |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
55 case BESSEL_Y: \ |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
56 result = bessely (alpha, x, scaled, ierr); \ |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
57 break; \ |
3155 | 58 \ |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
59 case BESSEL_I: \ |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
60 result = besseli (alpha, x, scaled, ierr); \ |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
61 break; \ |
3155 | 62 \ |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
63 case BESSEL_K: \ |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
64 result = besselk (alpha, x, scaled, ierr); \ |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
65 break; \ |
3155 | 66 \ |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
67 case BESSEL_H1: \ |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
68 result = besselh1 (alpha, x, scaled, ierr); \ |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
69 break; \ |
3220 | 70 \ |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
71 case BESSEL_H2: \ |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
72 result = besselh2 (alpha, x, scaled, ierr); \ |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
73 break; \ |
3155 | 74 \ |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
75 default: \ |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
76 break; \ |
3155 | 77 } \ |
78 } \ | |
79 while (0) | |
80 | |
81 static void | |
3220 | 82 gripe_bessel_arg (const char *fn, const char *arg) |
3155 | 83 { |
3220 | 84 error ("%s: expecting scalar or matrix as %s argument", fn, arg); |
3155 | 85 } |
86 | |
87 octave_value_list | |
3220 | 88 do_bessel (enum bessel_type type, const char *fn, |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
89 const octave_value_list& args, int nargout) |
3155 | 90 { |
3220 | 91 octave_value_list retval; |
3155 | 92 |
93 int nargin = args.length (); | |
94 | |
3220 | 95 if (nargin == 2 || nargin == 3) |
3155 | 96 { |
20124
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
97 bool scaled = false; |
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
98 if (nargin == 3) |
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
99 { |
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
100 octave_value opt_arg = args(2); |
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
101 bool rpt_error = false; |
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
102 |
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
103 if (! opt_arg.is_scalar_type ()) |
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
104 rpt_error = true; |
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
105 else if (opt_arg.is_numeric_type ()) |
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
106 { |
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
107 double opt_val = opt_arg.double_value (); |
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
108 if (opt_val != 0.0 && opt_val != 1.0) |
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
109 rpt_error = true; |
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
110 scaled = (opt_val == 1.0); |
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
111 } |
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
112 else if (opt_arg.is_bool_type ()) |
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
113 scaled = opt_arg.bool_value (); |
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
114 |
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
115 if (rpt_error) |
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
116 { |
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
117 error ("%s: OPT must be 0 (or false) or 1 (or true)", fn); |
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
118 return retval; |
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
119 } |
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
120 } |
3220 | 121 |
3155 | 122 octave_value alpha_arg = args(0); |
3220 | 123 octave_value x_arg = args(1); |
3155 | 124 |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
125 if (alpha_arg.is_single_type () || x_arg.is_single_type ()) |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
126 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
127 if (alpha_arg.is_scalar_type ()) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
128 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
129 float alpha = args(0).float_value (); |
4844 | 130 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
131 if (! error_state) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
132 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
133 if (x_arg.is_scalar_type ()) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
134 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
135 FloatComplex x = x_arg.float_complex_value (); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
136 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
137 if (! error_state) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
138 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
139 octave_idx_type ierr; |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
140 octave_value result; |
3155 | 141 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
142 DO_BESSEL (type, alpha, x, scaled, ierr, result); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
143 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
144 if (nargout > 1) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
145 retval(1) = static_cast<float> (ierr); |
3220 | 146 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
147 retval(0) = result; |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
148 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
149 else |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
150 gripe_bessel_arg (fn, "second"); |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
151 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
152 else |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
153 { |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17757
diff
changeset
|
154 FloatComplexNDArray x |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17757
diff
changeset
|
155 = x_arg.float_complex_array_value (); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
156 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
157 if (! error_state) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
158 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
159 Array<octave_idx_type> ierr; |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
160 octave_value result; |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
161 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
162 DO_BESSEL (type, alpha, x, scaled, ierr, result); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
163 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
164 if (nargout > 1) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
165 retval(1) = NDArray (ierr); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
166 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
167 retval(0) = result; |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
168 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
169 else |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
170 gripe_bessel_arg (fn, "second"); |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
171 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
172 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
173 else |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
174 gripe_bessel_arg (fn, "first"); |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
175 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
176 else |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
177 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
178 dim_vector dv0 = args(0).dims (); |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
179 dim_vector dv1 = args(1).dims (); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
180 |
20253
b2100e1659ac
maint: Use cuddled parentheses when indexing dimension_vectors.
Rik <rik@octave.org>
parents:
20207
diff
changeset
|
181 bool args0_is_row_vector = (dv0(1) == dv0.numel ()); |
b2100e1659ac
maint: Use cuddled parentheses when indexing dimension_vectors.
Rik <rik@octave.org>
parents:
20207
diff
changeset
|
182 bool args1_is_col_vector = (dv1(0) == dv1.numel ()); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
183 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
184 if (args0_is_row_vector && args1_is_col_vector) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
185 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
186 FloatRowVector ralpha = args(0).float_row_vector_value (); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
187 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
188 if (! error_state) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
189 { |
11586
12df7854fa7c
strip trailing whitespace from source files
John W. Eaton <jwe@octave.org>
parents:
11553
diff
changeset
|
190 FloatComplexColumnVector cx = |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
191 x_arg.float_complex_column_vector_value (); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
192 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
193 if (! error_state) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
194 { |
10352 | 195 Array<octave_idx_type> ierr; |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
196 octave_value result; |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
197 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
198 DO_BESSEL (type, ralpha, cx, scaled, ierr, result); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
199 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
200 if (nargout > 1) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
201 retval(1) = NDArray (ierr); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
202 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
203 retval(0) = result; |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
204 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
205 else |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
206 gripe_bessel_arg (fn, "second"); |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
207 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
208 else |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
209 gripe_bessel_arg (fn, "first"); |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
210 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
211 else |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
212 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
213 FloatNDArray alpha = args(0).float_array_value (); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
214 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
215 if (! error_state) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
216 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
217 if (x_arg.is_scalar_type ()) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
218 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
219 FloatComplex x = x_arg.float_complex_value (); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
220 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
221 if (! error_state) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
222 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
223 Array<octave_idx_type> ierr; |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
224 octave_value result; |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
225 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
226 DO_BESSEL (type, alpha, x, scaled, ierr, result); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
227 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
228 if (nargout > 1) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
229 retval(1) = NDArray (ierr); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
230 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
231 retval(0) = result; |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
232 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
233 else |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
234 gripe_bessel_arg (fn, "second"); |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
235 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
236 else |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
237 { |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17757
diff
changeset
|
238 FloatComplexNDArray x |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17757
diff
changeset
|
239 = x_arg.float_complex_array_value (); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
240 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
241 if (! error_state) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
242 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
243 Array<octave_idx_type> ierr; |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
244 octave_value result; |
11586
12df7854fa7c
strip trailing whitespace from source files
John W. Eaton <jwe@octave.org>
parents:
11553
diff
changeset
|
245 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
246 DO_BESSEL (type, alpha, x, scaled, ierr, result); |
11586
12df7854fa7c
strip trailing whitespace from source files
John W. Eaton <jwe@octave.org>
parents:
11553
diff
changeset
|
247 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
248 if (nargout > 1) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
249 retval(1) = NDArray (ierr); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
250 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
251 retval(0) = result; |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
252 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
253 else |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
254 gripe_bessel_arg (fn, "second"); |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
255 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
256 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
257 else |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
258 gripe_bessel_arg (fn, "first"); |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
259 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
260 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
261 } |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
262 else |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
263 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
264 if (alpha_arg.is_scalar_type ()) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
265 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
266 double alpha = args(0).double_value (); |
3220 | 267 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
268 if (! error_state) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
269 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
270 if (x_arg.is_scalar_type ()) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
271 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
272 Complex x = x_arg.complex_value (); |
3155 | 273 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
274 if (! error_state) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
275 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
276 octave_idx_type ierr; |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
277 octave_value result; |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
278 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
279 DO_BESSEL (type, alpha, x, scaled, ierr, result); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
280 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
281 if (nargout > 1) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
282 retval(1) = static_cast<double> (ierr); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
283 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
284 retval(0) = result; |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
285 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
286 else |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
287 gripe_bessel_arg (fn, "second"); |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
288 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
289 else |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
290 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
291 ComplexNDArray x = x_arg.complex_array_value (); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
292 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
293 if (! error_state) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
294 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
295 Array<octave_idx_type> ierr; |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
296 octave_value result; |
3220 | 297 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
298 DO_BESSEL (type, alpha, x, scaled, ierr, result); |
3220 | 299 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
300 if (nargout > 1) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
301 retval(1) = NDArray (ierr); |
3220 | 302 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
303 retval(0) = result; |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
304 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
305 else |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
306 gripe_bessel_arg (fn, "second"); |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
307 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
308 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
309 else |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
310 gripe_bessel_arg (fn, "first"); |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
311 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
312 else |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
313 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
314 dim_vector dv0 = args(0).dims (); |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
315 dim_vector dv1 = args(1).dims (); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
316 |
20253
b2100e1659ac
maint: Use cuddled parentheses when indexing dimension_vectors.
Rik <rik@octave.org>
parents:
20207
diff
changeset
|
317 bool args0_is_row_vector = (dv0(1) == dv0.numel ()); |
b2100e1659ac
maint: Use cuddled parentheses when indexing dimension_vectors.
Rik <rik@octave.org>
parents:
20207
diff
changeset
|
318 bool args1_is_col_vector = (dv1(0) == dv1.numel ()); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
319 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
320 if (args0_is_row_vector && args1_is_col_vector) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
321 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
322 RowVector ralpha = args(0).row_vector_value (); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
323 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
324 if (! error_state) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
325 { |
11586
12df7854fa7c
strip trailing whitespace from source files
John W. Eaton <jwe@octave.org>
parents:
11553
diff
changeset
|
326 ComplexColumnVector cx = |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
327 x_arg.complex_column_vector_value (); |
4844 | 328 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
329 if (! error_state) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
330 { |
10352 | 331 Array<octave_idx_type> ierr; |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
332 octave_value result; |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
333 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
334 DO_BESSEL (type, ralpha, cx, scaled, ierr, result); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
335 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
336 if (nargout > 1) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
337 retval(1) = NDArray (ierr); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
338 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
339 retval(0) = result; |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
340 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
341 else |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
342 gripe_bessel_arg (fn, "second"); |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
343 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
344 else |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
345 gripe_bessel_arg (fn, "first"); |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
346 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
347 else |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
348 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
349 NDArray alpha = args(0).array_value (); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
350 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
351 if (! error_state) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
352 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
353 if (x_arg.is_scalar_type ()) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
354 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
355 Complex x = x_arg.complex_value (); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
356 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
357 if (! error_state) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
358 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
359 Array<octave_idx_type> ierr; |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
360 octave_value result; |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
361 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
362 DO_BESSEL (type, alpha, x, scaled, ierr, result); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
363 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
364 if (nargout > 1) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
365 retval(1) = NDArray (ierr); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
366 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
367 retval(0) = result; |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
368 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
369 else |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
370 gripe_bessel_arg (fn, "second"); |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
371 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
372 else |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
373 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
374 ComplexNDArray x = x_arg.complex_array_value (); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
375 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
376 if (! error_state) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
377 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
378 Array<octave_idx_type> ierr; |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
379 octave_value result; |
11586
12df7854fa7c
strip trailing whitespace from source files
John W. Eaton <jwe@octave.org>
parents:
11553
diff
changeset
|
380 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
381 DO_BESSEL (type, alpha, x, scaled, ierr, result); |
11586
12df7854fa7c
strip trailing whitespace from source files
John W. Eaton <jwe@octave.org>
parents:
11553
diff
changeset
|
382 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
383 if (nargout > 1) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
384 retval(1) = NDArray (ierr); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
385 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
386 retval(0) = result; |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
387 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
388 else |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
389 gripe_bessel_arg (fn, "second"); |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
390 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
391 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
392 else |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
393 gripe_bessel_arg (fn, "first"); |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
394 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
395 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
396 } |
3155 | 397 } |
398 else | |
5823 | 399 print_usage (); |
3155 | 400 |
401 return retval; | |
402 } | |
403 | |
15039
e753177cde93
maint: Move non-dynamically linked functions from DLD-FUNCTIONS/ to corefcn/ directory
Rik <rik@octave.org>
parents:
14854
diff
changeset
|
404 DEFUN (besselj, args, nargout, |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17757
diff
changeset
|
405 "-*- texinfo -*-\n\ |
15039
e753177cde93
maint: Move non-dynamically linked functions from DLD-FUNCTIONS/ to corefcn/ directory
Rik <rik@octave.org>
parents:
14854
diff
changeset
|
406 @deftypefn {Built-in Function} {[@var{j}, @var{ierr}] =} besselj (@var{alpha}, @var{x}, @var{opt})\n\ |
e753177cde93
maint: Move non-dynamically linked functions from DLD-FUNCTIONS/ to corefcn/ directory
Rik <rik@octave.org>
parents:
14854
diff
changeset
|
407 @deftypefnx {Built-in Function} {[@var{y}, @var{ierr}] =} bessely (@var{alpha}, @var{x}, @var{opt})\n\ |
e753177cde93
maint: Move non-dynamically linked functions from DLD-FUNCTIONS/ to corefcn/ directory
Rik <rik@octave.org>
parents:
14854
diff
changeset
|
408 @deftypefnx {Built-in Function} {[@var{i}, @var{ierr}] =} besseli (@var{alpha}, @var{x}, @var{opt})\n\ |
e753177cde93
maint: Move non-dynamically linked functions from DLD-FUNCTIONS/ to corefcn/ directory
Rik <rik@octave.org>
parents:
14854
diff
changeset
|
409 @deftypefnx {Built-in Function} {[@var{k}, @var{ierr}] =} besselk (@var{alpha}, @var{x}, @var{opt})\n\ |
e753177cde93
maint: Move non-dynamically linked functions from DLD-FUNCTIONS/ to corefcn/ directory
Rik <rik@octave.org>
parents:
14854
diff
changeset
|
410 @deftypefnx {Built-in Function} {[@var{h}, @var{ierr}] =} besselh (@var{alpha}, @var{k}, @var{x}, @var{opt})\n\ |
3459 | 411 Compute Bessel or Hankel functions of various kinds:\n\ |
3155 | 412 \n\ |
3459 | 413 @table @code\n\ |
414 @item besselj\n\ | |
20124
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
415 Bessel functions of the first kind. If the argument @var{opt} is 1 or true,\n\ |
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
416 the result is multiplied by @w{@code{exp (-abs (imag (@var{x})))}}.\n\ |
10840 | 417 \n\ |
3459 | 418 @item bessely\n\ |
20124
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
419 Bessel functions of the second kind. If the argument @var{opt} is 1 or true,\n\ |
14854
5ae9f0f77635
maint: Use Octave coding conventions for coddling parenthis is DLD-FUNCTIONS directory
Rik <octave@nomad.inbox5.com>
parents:
14501
diff
changeset
|
420 the result is multiplied by @code{exp (-abs (imag (@var{x})))}.\n\ |
10840 | 421 \n\ |
3459 | 422 @item besseli\n\ |
10840 | 423 \n\ |
20124
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
424 Modified Bessel functions of the first kind. If the argument @var{opt} is 1\n\ |
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
425 or true, the result is multiplied by @code{exp (-abs (real (@var{x})))}.\n\ |
10840 | 426 \n\ |
3459 | 427 @item besselk\n\ |
10840 | 428 \n\ |
20124
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
429 Modified Bessel functions of the second kind. If the argument @var{opt} is 1\n\ |
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
430 or true, the result is multiplied by @code{exp (@var{x})}.\n\ |
10840 | 431 \n\ |
3459 | 432 @item besselh\n\ |
433 Compute Hankel functions of the first (@var{k} = 1) or second (@var{k}\n\ | |
20124
93b3757a9623
Use stricter input validation for OPT arg of bessel functions (bug #44867).
Rik <rik@octave.org>
parents:
19731
diff
changeset
|
434 = 2) kind. If the argument @var{opt} is 1 or true, the result is multiplied\n\ |
10846
a4f482e66b65
Grammarcheck more of the documentation.
Rik <octave@nomad.inbox5.com>
parents:
10840
diff
changeset
|
435 by @code{exp (-I*@var{x})} for @var{k} = 1 or @code{exp (I*@var{x})} for\n\ |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
436 @var{k} = 2.\n\ |
3459 | 437 @end table\n\ |
3220 | 438 \n\ |
3459 | 439 If @var{alpha} is a scalar, the result is the same size as @var{x}.\n\ |
440 If @var{x} is a scalar, the result is the same size as @var{alpha}.\n\ | |
441 If @var{alpha} is a row vector and @var{x} is a column vector, the\n\ | |
442 result is a matrix with @code{length (@var{x})} rows and\n\ | |
443 @code{length (@var{alpha})} columns. Otherwise, @var{alpha} and\n\ | |
444 @var{x} must conform and the result will be the same size.\n\ | |
3155 | 445 \n\ |
3459 | 446 The value of @var{alpha} must be real. The value of @var{x} may be\n\ |
447 complex.\n\ | |
448 \n\ | |
449 If requested, @var{ierr} contains the following status information\n\ | |
450 and is the same size as the result.\n\ | |
3548 | 451 \n\ |
3459 | 452 @enumerate 0\n\ |
453 @item\n\ | |
454 Normal return.\n\ | |
10840 | 455 \n\ |
3459 | 456 @item\n\ |
457 Input error, return @code{NaN}.\n\ | |
10840 | 458 \n\ |
3459 | 459 @item\n\ |
460 Overflow, return @code{Inf}.\n\ | |
10840 | 461 \n\ |
3459 | 462 @item\n\ |
463 Loss of significance by argument reduction results in less than\n\ | |
464 half of machine accuracy.\n\ | |
10840 | 465 \n\ |
3459 | 466 @item\n\ |
467 Complete loss of significance by argument reduction, return @code{NaN}.\n\ | |
10840 | 468 \n\ |
3459 | 469 @item\n\ |
470 Error---no computation, algorithm termination condition not met,\n\ | |
471 return @code{NaN}.\n\ | |
472 @end enumerate\n\ | |
473 @end deftypefn") | |
3155 | 474 { |
3220 | 475 return do_bessel (BESSEL_J, "besselj", args, nargout); |
3155 | 476 } |
477 | |
15039
e753177cde93
maint: Move non-dynamically linked functions from DLD-FUNCTIONS/ to corefcn/ directory
Rik <rik@octave.org>
parents:
14854
diff
changeset
|
478 DEFUN (bessely, args, nargout, |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17757
diff
changeset
|
479 "-*- texinfo -*-\n\ |
15039
e753177cde93
maint: Move non-dynamically linked functions from DLD-FUNCTIONS/ to corefcn/ directory
Rik <rik@octave.org>
parents:
14854
diff
changeset
|
480 @deftypefn {Built-in Function} {[@var{y}, @var{ierr}] =} bessely (@var{alpha}, @var{x}, @var{opt})\n\ |
3459 | 481 See besselj.\n\ |
482 @end deftypefn") | |
3155 | 483 { |
3220 | 484 return do_bessel (BESSEL_Y, "bessely", args, nargout); |
3155 | 485 } |
486 | |
15039
e753177cde93
maint: Move non-dynamically linked functions from DLD-FUNCTIONS/ to corefcn/ directory
Rik <rik@octave.org>
parents:
14854
diff
changeset
|
487 DEFUN (besseli, args, nargout, |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17757
diff
changeset
|
488 "-*- texinfo -*-\n\ |
15039
e753177cde93
maint: Move non-dynamically linked functions from DLD-FUNCTIONS/ to corefcn/ directory
Rik <rik@octave.org>
parents:
14854
diff
changeset
|
489 @deftypefn {Built-in Function} {[@var{i}, @var{ierr}] =} besseli (@var{alpha}, @var{x}, @var{opt})\n\ |
3459 | 490 See besselj.\n\ |
491 @end deftypefn") | |
3155 | 492 { |
3220 | 493 return do_bessel (BESSEL_I, "besseli", args, nargout); |
3155 | 494 } |
495 | |
15039
e753177cde93
maint: Move non-dynamically linked functions from DLD-FUNCTIONS/ to corefcn/ directory
Rik <rik@octave.org>
parents:
14854
diff
changeset
|
496 DEFUN (besselk, args, nargout, |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17757
diff
changeset
|
497 "-*- texinfo -*-\n\ |
15039
e753177cde93
maint: Move non-dynamically linked functions from DLD-FUNCTIONS/ to corefcn/ directory
Rik <rik@octave.org>
parents:
14854
diff
changeset
|
498 @deftypefn {Built-in Function} {[@var{k}, @var{ierr}] =} besselk (@var{alpha}, @var{x}, @var{opt})\n\ |
3459 | 499 See besselj.\n\ |
500 @end deftypefn") | |
3220 | 501 { |
502 return do_bessel (BESSEL_K, "besselk", args, nargout); | |
503 } | |
504 | |
15039
e753177cde93
maint: Move non-dynamically linked functions from DLD-FUNCTIONS/ to corefcn/ directory
Rik <rik@octave.org>
parents:
14854
diff
changeset
|
505 DEFUN (besselh, args, nargout, |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17757
diff
changeset
|
506 "-*- texinfo -*-\n\ |
15039
e753177cde93
maint: Move non-dynamically linked functions from DLD-FUNCTIONS/ to corefcn/ directory
Rik <rik@octave.org>
parents:
14854
diff
changeset
|
507 @deftypefn {Built-in Function} {[@var{h}, @var{ierr}] =} besselh (@var{alpha}, @var{k}, @var{x}, @var{opt})\n\ |
3459 | 508 See besselj.\n\ |
509 @end deftypefn") | |
3220 | 510 { |
511 octave_value_list retval; | |
512 | |
513 int nargin = args.length (); | |
514 | |
515 if (nargin == 2) | |
516 { | |
517 retval = do_bessel (BESSEL_H1, "besselh", args, nargout); | |
518 } | |
519 else if (nargin == 3 || nargin == 4) | |
520 { | |
5275 | 521 octave_idx_type kind = args(1).int_value (); |
3220 | 522 |
3810 | 523 if (! error_state) |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
524 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
525 octave_value_list tmp_args; |
3220 | 526 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
527 if (nargin == 4) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
528 tmp_args(2) = args(3); |
3220 | 529 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
530 tmp_args(1) = args(2); |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
531 tmp_args(0) = args(0); |
3220 | 532 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
533 if (kind == 1) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
534 retval = do_bessel (BESSEL_H1, "besselh", tmp_args, nargout); |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
535 else if (kind == 2) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
536 retval = do_bessel (BESSEL_H2, "besselh", tmp_args, nargout); |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
537 else |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
538 error ("besselh: expecting K = 1 or 2"); |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
539 } |
3220 | 540 else |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
541 error ("besselh: invalid value of K"); |
3220 | 542 } |
543 else | |
5823 | 544 print_usage (); |
3220 | 545 |
546 return retval; | |
547 } | |
548 | |
15039
e753177cde93
maint: Move non-dynamically linked functions from DLD-FUNCTIONS/ to corefcn/ directory
Rik <rik@octave.org>
parents:
14854
diff
changeset
|
549 DEFUN (airy, args, nargout, |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17757
diff
changeset
|
550 "-*- texinfo -*-\n\ |
15039
e753177cde93
maint: Move non-dynamically linked functions from DLD-FUNCTIONS/ to corefcn/ directory
Rik <rik@octave.org>
parents:
14854
diff
changeset
|
551 @deftypefn {Built-in Function} {[@var{a}, @var{ierr}] =} airy (@var{k}, @var{z}, @var{opt})\n\ |
20207
4f45eaf83908
doc: Update more docstrings to have one sentence summary as first line.
Rik <rik@octave.org>
parents:
20124
diff
changeset
|
552 Compute Airy functions of the first and second kind, and their derivatives.\n\ |
3220 | 553 \n\ |
3459 | 554 @example\n\ |
9064
7c02ec148a3c
Check grammar on all .cc files
Rik <rdrider0-list@yahoo.com>
parents:
8920
diff
changeset
|
555 @group\n\ |
17757
dae2230227a7
doc: Use double-quote in preference to single quote in code examples.
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
556 K Function Scale factor (if \"opt\" is supplied)\n\ |
7031 | 557 --- -------- ---------------------------------------\n\ |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
558 0 Ai (Z) exp ((2/3) * Z * sqrt (Z))\n\ |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
559 1 dAi(Z)/dZ exp ((2/3) * Z * sqrt (Z))\n\ |
14854
5ae9f0f77635
maint: Use Octave coding conventions for coddling parenthis is DLD-FUNCTIONS directory
Rik <octave@nomad.inbox5.com>
parents:
14501
diff
changeset
|
560 2 Bi (Z) exp (-abs (real ((2/3) * Z * sqrt (Z))))\n\ |
5ae9f0f77635
maint: Use Octave coding conventions for coddling parenthis is DLD-FUNCTIONS directory
Rik <octave@nomad.inbox5.com>
parents:
14501
diff
changeset
|
561 3 dBi(Z)/dZ exp (-abs (real ((2/3) * Z * sqrt (Z))))\n\ |
9064
7c02ec148a3c
Check grammar on all .cc files
Rik <rdrider0-list@yahoo.com>
parents:
8920
diff
changeset
|
562 @end group\n\ |
3459 | 563 @end example\n\ |
3220 | 564 \n\ |
3549 | 565 The function call @code{airy (@var{z})} is equivalent to\n\ |
3459 | 566 @code{airy (0, @var{z})}.\n\ |
3155 | 567 \n\ |
3549 | 568 The result is the same size as @var{z}.\n\ |
3220 | 569 \n\ |
3459 | 570 If requested, @var{ierr} contains the following status information and\n\ |
571 is the same size as the result.\n\ | |
3548 | 572 \n\ |
3459 | 573 @enumerate 0\n\ |
574 @item\n\ | |
575 Normal return.\n\ | |
10840 | 576 \n\ |
3459 | 577 @item\n\ |
578 Input error, return @code{NaN}.\n\ | |
10840 | 579 \n\ |
3459 | 580 @item\n\ |
581 Overflow, return @code{Inf}.\n\ | |
10840 | 582 \n\ |
3459 | 583 @item\n\ |
584 Loss of significance by argument reduction results in less than half\n\ | |
585 of machine accuracy.\n\ | |
10840 | 586 \n\ |
3459 | 587 @item\n\ |
588 Complete loss of significance by argument reduction, return @code{NaN}.\n\ | |
10840 | 589 \n\ |
3459 | 590 @item\n\ |
591 Error---no computation, algorithm termination condition not met,\n\ | |
5448 | 592 return @code{NaN}.\n\ |
3459 | 593 @end enumerate\n\ |
594 @end deftypefn") | |
3155 | 595 { |
3220 | 596 octave_value_list retval; |
597 | |
598 int nargin = args.length (); | |
599 | |
600 if (nargin > 0 && nargin < 4) | |
601 { | |
602 bool scale = (nargin == 3); | |
603 | |
604 int kind = 0; | |
605 | |
606 if (nargin > 1) | |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
607 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
608 kind = args(0).int_value (); |
3220 | 609 |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
610 if (! error_state) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
611 { |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
612 if (kind < 0 || kind > 3) |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
613 error ("airy: expecting K = 0, 1, 2, or 3"); |
11586
12df7854fa7c
strip trailing whitespace from source files
John W. Eaton <jwe@octave.org>
parents:
11553
diff
changeset
|
614 } |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
615 else |
12483
7a5aacf65f81
Rewrite error strings in src/ to use variables named in documentation.
Rik <octave@nomad.inbox5.com>
parents:
11586
diff
changeset
|
616 error ("airy: K must be an integer value"); |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
617 } |
3220 | 618 |
20591
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
619 int idx = nargin == 1 ? 0 : 1; |
3220 | 620 |
20591
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
621 if (args(idx).is_single_type ()) |
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
622 { |
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
623 FloatComplexNDArray z = args(idx).float_complex_array_value (); |
3220 | 624 |
20591
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
625 if (! error_state) |
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
626 { |
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
627 Array<octave_idx_type> ierr; |
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
628 octave_value result; |
3220 | 629 |
20591
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
630 if (kind > 1) |
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
631 result = biry (z, kind == 3, scale, ierr); |
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
632 else |
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
633 result = airy (z, kind == 1, scale, ierr); |
3220 | 634 |
20591
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
635 if (nargout > 1) |
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
636 retval(1) = NDArray (ierr); |
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
637 |
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
638 retval(0) = result; |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
639 } |
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
640 else |
20591
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
641 error ("airy: Z must be a complex matrix"); |
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
642 } |
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
643 else |
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
644 { |
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
645 ComplexNDArray z = args(idx).complex_array_value (); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
646 |
20591
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
647 if (! error_state) |
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
648 { |
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
649 Array<octave_idx_type> ierr; |
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
650 octave_value result; |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
651 |
20591
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
652 if (kind > 1) |
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
653 result = biry (z, kind == 3, scale, ierr); |
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
654 else |
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
655 result = airy (z, kind == 1, scale, ierr); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
656 |
20591
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
657 if (nargout > 1) |
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
658 retval(1) = NDArray (ierr); |
7789
82be108cc558
First attempt at single precision tyeps
David Bateman <dbateman@free.fr>
parents:
7031
diff
changeset
|
659 |
20591
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
660 retval(0) = result; |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
661 } |
20591
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
662 else |
0650b8431037
eliminate more simple uses of error_state
John W. Eaton <jwe@octave.org>
parents:
20253
diff
changeset
|
663 error ("airy: Z must be a complex matrix"); |
10154
40dfc0c99116
DLD-FUNCTIONS/*.cc: untabify
John W. Eaton <jwe@octave.org>
parents:
9732
diff
changeset
|
664 } |
3220 | 665 } |
666 else | |
5823 | 667 print_usage (); |
3220 | 668 |
669 return retval; | |
3155 | 670 } |
671 | |
672 /* | |
17336
b81b9d079515
Use '##' for comments which stand alone on a line.
Rik <rik@octave.org>
parents:
15195
diff
changeset
|
673 ## Test values computed with GP/PARI version 2.3.3 |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
674 %!shared alpha, x, jx, yx, ix, kx, nix |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
675 %! |
17336
b81b9d079515
Use '##' for comments which stand alone on a line.
Rik <rik@octave.org>
parents:
15195
diff
changeset
|
676 %! ## Bessel functions, even order, positive and negative x |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
677 %! alpha = 2; x = 1.25; |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
678 %! jx = 0.1710911312405234823613091417; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
679 %! yx = -1.193199310178553861283790424; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
680 %! ix = 0.2220184483766341752692212604; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
681 %! kx = 0.9410016167388185767085460540; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
682 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
683 %!assert (besselj (alpha,x), jx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
684 %!assert (bessely (alpha,x), yx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
685 %!assert (besseli (alpha,x), ix, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
686 %!assert (besselk (alpha,x), kx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
687 %!assert (besselh (alpha,1,x), jx + I*yx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
688 %!assert (besselh (alpha,2,x), jx - I*yx, 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
689 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
690 %!assert (besselj (alpha,x,1), jx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
691 %!assert (bessely (alpha,x,1), yx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
692 %!assert (besseli (alpha,x,1), ix*exp(-abs(real(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
693 %!assert (besselk (alpha,x,1), kx*exp(x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
694 %!assert (besselh (alpha,1,x,1), (jx + I*yx)*exp(-I*x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
695 %!assert (besselh (alpha,2,x,1), (jx - I*yx)*exp(I*x), 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
696 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
697 %!assert (besselj (-alpha,x), jx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
698 %!assert (bessely (-alpha,x), yx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
699 %!assert (besseli (-alpha,x), ix, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
700 %!assert (besselk (-alpha,x), kx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
701 %!assert (besselh (-alpha,1,x), jx + I*yx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
702 %!assert (besselh (-alpha,2,x), jx - I*yx, 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
703 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
704 %!assert (besselj (-alpha,x,1), jx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
705 %!assert (bessely (-alpha,x,1), yx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
706 %!assert (besseli (-alpha,x,1), ix*exp(-abs(real(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
707 %!assert (besselk (-alpha,x,1), kx*exp(x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
708 %!assert (besselh (-alpha,1,x,1), (jx + I*yx)*exp(-I*x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
709 %!assert (besselh (-alpha,2,x,1), (jx - I*yx)*exp(I*x), 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
710 %! |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
711 %! x *= -1; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
712 %! yx = -1.193199310178553861283790424 + 0.3421822624810469647226182835*I; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
713 %! kx = 0.9410016167388185767085460540 - 0.6974915263814386815610060884*I; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
714 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
715 %!assert (besselj (alpha,x), jx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
716 %!assert (bessely (alpha,x), yx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
717 %!assert (besseli (alpha,x), ix, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
718 %!assert (besselk (alpha,x), kx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
719 %!assert (besselh (alpha,1,x), jx + I*yx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
720 %!assert (besselh (alpha,2,x), jx - I*yx, 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
721 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
722 %!assert (besselj (alpha,x,1), jx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
723 %!assert (bessely (alpha,x,1), yx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
724 %!assert (besseli (alpha,x,1), ix*exp(-abs(real(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
725 %!assert (besselk (alpha,x,1), kx*exp(x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
726 %!assert (besselh (alpha,1,x,1), (jx + I*yx)*exp(-I*x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
727 %!assert (besselh (alpha,2,x,1), (jx - I*yx)*exp(I*x), 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
728 %! |
17336
b81b9d079515
Use '##' for comments which stand alone on a line.
Rik <rik@octave.org>
parents:
15195
diff
changeset
|
729 %! ## Bessel functions, odd order, positive and negative x |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
730 %! alpha = 3; x = 2.5; |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
731 %! jx = 0.2166003910391135247666890035; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
732 %! yx = -0.7560554967536709968379029772; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
733 %! ix = 0.4743704087780355895548240179; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
734 %! kx = 0.2682271463934492027663765197; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
735 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
736 %!assert (besselj (alpha,x), jx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
737 %!assert (bessely (alpha,x), yx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
738 %!assert (besseli (alpha,x), ix, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
739 %!assert (besselk (alpha,x), kx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
740 %!assert (besselh (alpha,1,x), jx + I*yx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
741 %!assert (besselh (alpha,2,x), jx - I*yx, 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
742 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
743 %!assert (besselj (alpha,x,1), jx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
744 %!assert (bessely (alpha,x,1), yx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
745 %!assert (besseli (alpha,x,1), ix*exp(-abs(real(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
746 %!assert (besselk (alpha,x,1), kx*exp(x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
747 %!assert (besselh (alpha,1,x,1), (jx + I*yx)*exp(-I*x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
748 %!assert (besselh (alpha,2,x,1), (jx - I*yx)*exp(I*x), 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
749 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
750 %!assert (besselj (-alpha,x), -jx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
751 %!assert (bessely (-alpha,x), -yx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
752 %!assert (besseli (-alpha,x), ix, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
753 %!assert (besselk (-alpha,x), kx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
754 %!assert (besselh (-alpha,1,x), -(jx + I*yx), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
755 %!assert (besselh (-alpha,2,x), -(jx - I*yx), 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
756 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
757 %!assert (besselj (-alpha,x,1), -jx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
758 %!assert (bessely (-alpha,x,1), -yx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
759 %!assert (besseli (-alpha,x,1), ix*exp(-abs(real(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
760 %!assert (besselk (-alpha,x,1), kx*exp(x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
761 %!assert (besselh (-alpha,1,x,1), -(jx + I*yx)*exp(-I*x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
762 %!assert (besselh (-alpha,2,x,1), -(jx - I*yx)*exp(I*x), 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
763 %! |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
764 %! x *= -1; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
765 %! jx = -jx; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
766 %! yx = 0.7560554967536709968379029772 - 0.4332007820782270495333780070*I; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
767 %! ix = -ix; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
768 %! kx = -0.2682271463934492027663765197 - 1.490278591297463775542004240*I; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
769 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
770 %!assert (besselj (alpha,x), jx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
771 %!assert (bessely (alpha,x), yx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
772 %!assert (besseli (alpha,x), ix, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
773 %!assert (besselk (alpha,x), kx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
774 %!assert (besselh (alpha,1,x), jx + I*yx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
775 %!assert (besselh (alpha,2,x), jx - I*yx, 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
776 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
777 %!assert (besselj (alpha,x,1), jx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
778 %!assert (bessely (alpha,x,1), yx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
779 %!assert (besseli (alpha,x,1), ix*exp(-abs(real(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
780 %!assert (besselk (alpha,x,1), kx*exp(x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
781 %!assert (besselh (alpha,1,x,1), (jx + I*yx)*exp(-I*x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
782 %!assert (besselh (alpha,2,x,1), (jx - I*yx)*exp(I*x), 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
783 %! |
17336
b81b9d079515
Use '##' for comments which stand alone on a line.
Rik <rik@octave.org>
parents:
15195
diff
changeset
|
784 %! ## Bessel functions, fractional order, positive and negative x |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
785 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
786 %! alpha = 3.5; x = 2.75; |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
787 %! jx = 0.1691636439842384154644784389; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
788 %! yx = -0.8301381935499356070267953387; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
789 %! ix = 0.3930540878794826310979363668; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
790 %! kx = 0.2844099013460621170288192503; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
791 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
792 %!assert (besselj (alpha,x), jx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
793 %!assert (bessely (alpha,x), yx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
794 %!assert (besseli (alpha,x), ix, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
795 %!assert (besselk (alpha,x), kx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
796 %!assert (besselh (alpha,1,x), jx + I*yx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
797 %!assert (besselh (alpha,2,x), jx - I*yx, 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
798 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
799 %!assert (besselj (alpha,x,1), jx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
800 %!assert (bessely (alpha,x,1), yx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
801 %!assert (besseli (alpha,x,1), ix*exp(-abs(real(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
802 %!assert (besselk (alpha,x,1), kx*exp(x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
803 %!assert (besselh (alpha,1,x,1), (jx + I*yx)*exp(-I*x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
804 %!assert (besselh (alpha,2,x,1), (jx - I*yx)*exp(I*x), 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
805 %! |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
806 %! nix = 0.2119931212254662995364461998; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
807 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
808 %!assert (besselj (-alpha,x), yx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
809 %!assert (bessely (-alpha,x), -jx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
810 %!assert (besseli (-alpha,x), nix, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
811 %!assert (besselk (-alpha,x), kx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
812 %!assert (besselh (-alpha,1,x), -I*(jx + I*yx), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
813 %!assert (besselh (-alpha,2,x), I*(jx - I*yx), 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
814 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
815 %!assert (besselj (-alpha,x,1), yx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
816 %!assert (bessely (-alpha,x,1), -jx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
817 %!assert (besseli (-alpha,x,1), nix*exp(-abs(real(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
818 %!assert (besselk (-alpha,x,1), kx*exp(x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
819 %!assert (besselh (-alpha,1,x,1), -I*(jx + I*yx)*exp(-I*x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
820 %!assert (besselh (-alpha,2,x,1), I*(jx - I*yx)*exp(I*x), 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
821 %! |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
822 %! x *= -1; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
823 %! jx *= -I; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
824 %! yx = -0.8301381935499356070267953387*I; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
825 %! ix *= -I; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
826 %! kx = -0.9504059335995575096509874508*I; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
827 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
828 %!assert (besselj (alpha,x), jx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
829 %!assert (bessely (alpha,x), yx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
830 %!assert (besseli (alpha,x), ix, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
831 %!assert (besselk (alpha,x), kx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
832 %!assert (besselh (alpha,1,x), jx + I*yx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
833 %!assert (besselh (alpha,2,x), jx - I*yx, 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
834 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
835 %!assert (besselj (alpha,x,1), jx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
836 %!assert (bessely (alpha,x,1), yx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
837 %!assert (besseli (alpha,x,1), ix*exp(-abs(real(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
838 %!assert (besselk (alpha,x,1), kx*exp(x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
839 %!assert (besselh (alpha,1,x,1), (jx + I*yx)*exp(-I*x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
840 %!assert (besselh (alpha,2,x,1), (jx - I*yx)*exp(I*x), 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
841 %! |
17336
b81b9d079515
Use '##' for comments which stand alone on a line.
Rik <rik@octave.org>
parents:
15195
diff
changeset
|
842 %! ## Bessel functions, even order, complex x |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
843 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
844 %! alpha = 2; x = 1.25 + 3.625 * I; |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
845 %! jx = -1.299533366810794494030065917 + 4.370833116012278943267479589*I; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
846 %! yx = -4.370357232383223896393056727 - 1.283083391453582032688834041*I; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
847 %! ix = -0.6717801680341515541002273932 - 0.2314623443930774099910228553*I; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
848 %! kx = -0.01108009888623253515463783379 + 0.2245218229358191588208084197*I; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
849 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
850 %!assert (besselj (alpha,x), jx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
851 %!assert (bessely (alpha,x), yx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
852 %!assert (besseli (alpha,x), ix, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
853 %!assert (besselk (alpha,x), kx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
854 %!assert (besselh (alpha,1,x), jx + I*yx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
855 %!assert (besselh (alpha,2,x), jx - I*yx, 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
856 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
857 %!assert (besselj (alpha,x,1), jx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
858 %!assert (bessely (alpha,x,1), yx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
859 %!assert (besseli (alpha,x,1), ix*exp(-abs(real(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
860 %!assert (besselk (alpha,x,1), kx*exp(x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
861 %!assert (besselh (alpha,1,x,1), (jx + I*yx)*exp(-I*x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
862 %!assert (besselh (alpha,2,x,1), (jx - I*yx)*exp(I*x), 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
863 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
864 %!assert (besselj (-alpha,x), jx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
865 %!assert (bessely (-alpha,x), yx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
866 %!assert (besseli (-alpha,x), ix, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
867 %!assert (besselk (-alpha,x), kx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
868 %!assert (besselh (-alpha,1,x), jx + I*yx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
869 %!assert (besselh (-alpha,2,x), jx - I*yx, 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
870 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
871 %!assert (besselj (-alpha,x,1), jx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
872 %!assert (bessely (-alpha,x,1), yx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
873 %!assert (besseli (-alpha,x,1), ix*exp(-abs(real(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
874 %!assert (besselk (-alpha,x,1), kx*exp(x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
875 %!assert (besselh (-alpha,1,x,1), (jx + I*yx)*exp(-I*x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
876 %!assert (besselh (-alpha,2,x,1), (jx - I*yx)*exp(I*x), 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
877 %! |
17336
b81b9d079515
Use '##' for comments which stand alone on a line.
Rik <rik@octave.org>
parents:
15195
diff
changeset
|
878 %! ## Bessel functions, odd order, complex x |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
879 %! |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
880 %! alpha = 3; x = 2.5 + 1.875 * I; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
881 %! jx = 0.1330721523048277493333458596 + 0.5386295217249660078754395597*I; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
882 %! yx = -0.6485072392105829901122401551 + 0.2608129289785456797046996987*I; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
883 %! ix = -0.6182064685486998097516365709 + 0.4677561094683470065767989920*I; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
884 %! kx = -0.1568585587733540007867882337 - 0.05185853709490846050505141321*I; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
885 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
886 %!assert (besselj (alpha,x), jx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
887 %!assert (bessely (alpha,x), yx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
888 %!assert (besseli (alpha,x), ix, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
889 %!assert (besselk (alpha,x), kx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
890 %!assert (besselh (alpha,1,x), jx + I*yx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
891 %!assert (besselh (alpha,2,x), jx - I*yx, 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
892 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
893 %!assert (besselj (alpha,x,1), jx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
894 %!assert (bessely (alpha,x,1), yx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
895 %!assert (besseli (alpha,x,1), ix*exp(-abs(real(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
896 %!assert (besselk (alpha,x,1), kx*exp(x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
897 %!assert (besselh (alpha,1,x,1), (jx + I*yx)*exp(-I*x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
898 %!assert (besselh (alpha,2,x,1), (jx - I*yx)*exp(I*x), 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
899 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
900 %!assert (besselj (-alpha,x), -jx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
901 %!assert (bessely (-alpha,x), -yx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
902 %!assert (besseli (-alpha,x), ix, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
903 %!assert (besselk (-alpha,x), kx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
904 %!assert (besselh (-alpha,1,x), -(jx + I*yx), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
905 %!assert (besselh (-alpha,2,x), -(jx - I*yx), 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
906 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
907 %!assert (besselj (-alpha,x,1), -jx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
908 %!assert (bessely (-alpha,x,1), -yx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
909 %!assert (besseli (-alpha,x,1), ix*exp(-abs(real(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
910 %!assert (besselk (-alpha,x,1), kx*exp(x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
911 %!assert (besselh (-alpha,1,x,1), -(jx + I*yx)*exp(-I*x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
912 %!assert (besselh (-alpha,2,x,1), -(jx - I*yx)*exp(I*x), 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
913 %! |
17336
b81b9d079515
Use '##' for comments which stand alone on a line.
Rik <rik@octave.org>
parents:
15195
diff
changeset
|
914 %! ## Bessel functions, fractional order, complex x |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
915 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
916 %! alpha = 3.5; x = 1.75 + 4.125 * I; |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
917 %! jx = -3.018566131370455929707009100 - 0.7585648436793900607704057611*I; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
918 %! yx = 0.7772278839106298215614791107 - 3.018518722313849782683792010*I; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
919 %! ix = 0.2100873577220057189038160913 - 0.6551765604618246531254970926*I; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
920 %! kx = 0.1757147290513239935341488069 + 0.08772348296883849205562558311*I; |
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
921 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
922 %!assert (besselj (alpha,x), jx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
923 %!assert (bessely (alpha,x), yx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
924 %!assert (besseli (alpha,x), ix, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
925 %!assert (besselk (alpha,x), kx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
926 %!assert (besselh (alpha,1,x), jx + I*yx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
927 %!assert (besselh (alpha,2,x), jx - I*yx, 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
928 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
929 %!assert (besselj (alpha,x,1), jx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
930 %!assert (bessely (alpha,x,1), yx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
931 %!assert (besseli (alpha,x,1), ix*exp(-abs(real(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
932 %!assert (besselk (alpha,x,1), kx*exp(x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
933 %!assert (besselh (alpha,1,x,1), (jx + I*yx)*exp(-I*x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
934 %!assert (besselh (alpha,2,x,1), (jx - I*yx)*exp(I*x), 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
935 %! |
17337
a31b54b5f84a
Use only 1 space between '%!' and start of test/demo code.
Rik <rik@octave.org>
parents:
17336
diff
changeset
|
936 %! nix = 0.09822388691172060573913739253 - 0.7110230642207380127317227407*I; |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
937 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
938 %!assert (besselj (-alpha,x), yx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
939 %!assert (bessely (-alpha,x), -jx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
940 %!assert (besseli (-alpha,x), nix, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
941 %!assert (besselk (-alpha,x), kx, 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
942 %!assert (besselh (-alpha,1,x), -I*(jx + I*yx), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
943 %!assert (besselh (-alpha,2,x), I*(jx - I*yx), 100*eps) |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
944 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
945 %!assert (besselj (-alpha,x,1), yx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
946 %!assert (bessely (-alpha,x,1), -jx*exp(-abs(imag(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
947 %!assert (besseli (-alpha,x,1), nix*exp(-abs(real(x))), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
948 %!assert (besselk (-alpha,x,1), kx*exp(x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
949 %!assert (besselh (-alpha,1,x,1), -I*(jx + I*yx)*exp(-I*x), 100*eps) |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
950 %!assert (besselh (-alpha,2,x,1), I*(jx - I*yx)*exp(I*x), 100*eps) |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
951 |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
952 |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
953 Tests contributed by Robert T. Short. |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
954 Tests are based on the properties and tables in A&S: |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
955 Abramowitz and Stegun, "Handbook of Mathematical Functions", |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
956 1972. |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
957 |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
958 For regular Bessel functions, there are 3 tests. These compare octave |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
959 results against Tables 9.1, 9.2, and 9.4 in A&S. Tables 9.1 and 9.2 |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
960 are good to only a few decimal places, so any failures should be |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
961 considered a broken implementation. Table 9.4 is an extended table |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
962 for larger orders and arguments. There are some differences between |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
963 Octave and Table 9.4, mostly in the last decimal place but in a very |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
964 few instances the errors are in the last two places. The comparison |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
965 tolerance has been changed to reflect this. |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
966 |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
967 Similarly for modifed Bessel functions, there are 3 tests. These |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
968 compare octave results against Tables 9.8, 9.9, and 9.11 in A&S. |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
969 Tables 9.8 and 9.9 are good to only a few decimal places, so any |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
970 failures should be considered a broken implementation. Table 9.11 is |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
971 an extended table for larger orders and arguments. There are some |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
972 differences between octave and Table 9.11, mostly in the last decimal |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
973 place but in a very few instances the errors are in the last two |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
974 places. The comparison tolerance has been changed to reflect this. |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
975 |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
976 For spherical Bessel functions, there are also three tests, comparing |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
977 octave results to Tables 10.1, 10.2, and 10.4 in A&S. Very similar |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
978 comments may be made here as in the previous lines. At this time, |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
979 modified spherical Bessel function tests are not included. |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
980 |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
981 % Table 9.1 - J and Y for integer orders 0, 1, 2. |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
982 % Compare against excerpts of Table 9.1, Abramowitz and Stegun. |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
983 %!test |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
984 %! n = 0:2; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
985 %! z = (0:2.5:17.5)'; |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
986 %! |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
987 %! Jt = [[ 1.000000000000000, 0.0000000000, 0.0000000000]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
988 %! [-0.048383776468198, 0.4970941025, 0.4460590584]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
989 %! [-0.177596771314338, -0.3275791376, 0.0465651163]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
990 %! [ 0.266339657880378, 0.1352484276, -0.2302734105]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
991 %! [-0.245935764451348, 0.0434727462, 0.2546303137]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
992 %! [ 0.146884054700421, -0.1654838046, -0.1733614634]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
993 %! [-0.014224472826781, 0.2051040386, 0.0415716780]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
994 %! [-0.103110398228686, -0.1634199694, 0.0844338303]]; |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
995 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
996 %! Yt = [[-Inf, -Inf, -Inf ]; |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
997 %! [ 0.4980703596, 0.1459181380, -0.38133585 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
998 %! [-0.3085176252, 0.1478631434, 0.36766288 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
999 %! [ 0.1173132861, -0.2591285105, -0.18641422 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1000 %! [ 0.0556711673, 0.2490154242, -0.00586808 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1001 %! [-0.1712143068, -0.1538382565, 0.14660019 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1002 %! [ 0.2054642960, 0.0210736280, -0.20265448 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1003 %! [-0.1604111925, 0.0985727987, 0.17167666 ]]; |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1004 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1005 %! J = besselj (n,z); |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1006 %! Y = bessely (n,z); |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1007 %! assert (Jt(:,1), J(:,1), 0.5e-10); |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1008 %! assert (Yt(:,1), Y(:,1), 0.5e-10); |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1009 %! assert (Jt(:,2:3), J(:,2:3), 0.5e-10); |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1010 |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1011 Table 9.2 - J and Y for integer orders 3-9. |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1012 |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1013 %!test |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1014 %! n = (3:9); |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1015 %! z = (0:2:20).'; |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1016 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1017 %! Jt = [[ 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00]; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1018 %! [ 1.2894e-01, 3.3996e-02, 7.0396e-03, 1.2024e-03, 1.7494e-04, 2.2180e-05, 2.4923e-06]; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1019 %! [ 4.3017e-01, 2.8113e-01, 1.3209e-01, 4.9088e-02, 1.5176e-02, 4.0287e-03, 9.3860e-04]; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1020 %! [ 1.1477e-01, 3.5764e-01, 3.6209e-01, 2.4584e-01, 1.2959e-01, 5.6532e-02, 2.1165e-02]; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1021 %! [-2.9113e-01,-1.0536e-01, 1.8577e-01, 3.3758e-01, 3.2059e-01, 2.2345e-01, 1.2632e-01]; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1022 %! [ 5.8379e-02,-2.1960e-01,-2.3406e-01,-1.4459e-02, 2.1671e-01, 3.1785e-01, 2.9186e-01]; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1023 %! [ 1.9514e-01, 1.8250e-01,-7.3471e-02,-2.4372e-01,-1.7025e-01, 4.5095e-02, 2.3038e-01]; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1024 %! [-1.7681e-01, 7.6244e-02, 2.2038e-01, 8.1168e-02,-1.5080e-01,-2.3197e-01,-1.1431e-01]; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1025 %! [-4.3847e-02,-2.0264e-01,-5.7473e-02, 1.6672e-01, 1.8251e-01,-7.0211e-03,-1.8953e-01]; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1026 %! [ 1.8632e-01, 6.9640e-02,-1.5537e-01,-1.5596e-01, 5.1399e-02, 1.9593e-01, 1.2276e-01]; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1027 %! [-9.8901e-02, 1.3067e-01, 1.5117e-01,-5.5086e-02,-1.8422e-01,-7.3869e-02, 1.2513e-01]]; |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1028 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1029 %! Yt = [[ -Inf, -Inf, -Inf, -Inf, -Inf, -Inf, -Inf]; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1030 %! [-1.1278e+00,-2.7659e+00,-9.9360e+00,-4.6914e+01,-2.7155e+02,-1.8539e+03,-1.4560e+04]; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1031 %! [-1.8202e-01,-4.8894e-01,-7.9585e-01,-1.5007e+00,-3.7062e+00,-1.1471e+01,-4.2178e+01]; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1032 %! [ 3.2825e-01, 9.8391e-02,-1.9706e-01,-4.2683e-01,-6.5659e-01,-1.1052e+00,-2.2907e+00]; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1033 %! [ 2.6542e-02, 2.8294e-01, 2.5640e-01, 3.7558e-02,-2.0006e-01,-3.8767e-01,-5.7528e-01]; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1034 %! [-2.5136e-01,-1.4495e-01, 1.3540e-01, 2.8035e-01, 2.0102e-01, 1.0755e-03,-1.9930e-01]; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1035 %! [ 1.2901e-01,-1.5122e-01,-2.2982e-01,-4.0297e-02, 1.8952e-01, 2.6140e-01, 1.5902e-01]; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1036 %! [ 1.2350e-01, 2.0393e-01,-6.9717e-03,-2.0891e-01,-1.7209e-01, 3.6816e-02, 2.1417e-01]; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1037 %! [-1.9637e-01,-7.3222e-05, 1.9633e-01, 1.2278e-01,-1.0425e-01,-2.1399e-01,-1.0975e-01]; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1038 %! [ 3.3724e-02,-1.7722e-01,-1.1249e-01, 1.1472e-01, 1.8897e-01, 3.2253e-02,-1.6030e-01]; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1039 %! [ 1.4967e-01, 1.2409e-01,-1.0004e-01,-1.7411e-01,-4.4312e-03, 1.7101e-01, 1.4124e-01]]; |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1040 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1041 %! n = (3:9); |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1042 %! z = (0:2:20).'; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1043 %! J = besselj (n,z); |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1044 %! Y = bessely (n,z); |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1045 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1046 %! assert (J(1,:), zeros (1, columns (J))); |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1047 %! assert (J(2:end,:), Jt(2:end,:), -5e-5); |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1048 %! assert (Yt(1,:), Y(1,:)); |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1049 %! assert (Y(2:end,:), Yt(2:end,:), -5e-5); |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1050 |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1051 Table 9.4 - J and Y for various integer orders and arguments. |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1052 |
14450
ab4676288414
Fix typos and errors in new bessel function tests
Mike Miller <mtmiller@ieee.org>
parents:
14426
diff
changeset
|
1053 %!test |
ab4676288414
Fix typos and errors in new bessel function tests
Mike Miller <mtmiller@ieee.org>
parents:
14426
diff
changeset
|
1054 %! Jt = [[ 7.651976866e-01, 2.238907791e-01, -1.775967713e-01, -2.459357645e-01, 5.581232767e-02, 1.998585030e-02]; |
ab4676288414
Fix typos and errors in new bessel function tests
Mike Miller <mtmiller@ieee.org>
parents:
14426
diff
changeset
|
1055 %! [ 2.497577302e-04, 7.039629756e-03, 2.611405461e-01, -2.340615282e-01, -8.140024770e-02, -7.419573696e-02]; |
ab4676288414
Fix typos and errors in new bessel function tests
Mike Miller <mtmiller@ieee.org>
parents:
14426
diff
changeset
|
1056 %! [ 2.630615124e-10, 2.515386283e-07, 1.467802647e-03, 2.074861066e-01, -1.138478491e-01, -5.473217694e-02]; |
ab4676288414
Fix typos and errors in new bessel function tests
Mike Miller <mtmiller@ieee.org>
parents:
14426
diff
changeset
|
1057 %! [ 2.297531532e-17, 7.183016356e-13, 4.796743278e-07, 4.507973144e-03, -1.082255990e-01, 1.519812122e-02]; |
ab4676288414
Fix typos and errors in new bessel function tests
Mike Miller <mtmiller@ieee.org>
parents:
14426
diff
changeset
|
1058 %! [ 3.873503009e-25, 3.918972805e-19, 2.770330052e-11, 1.151336925e-05, -1.167043528e-01, 6.221745850e-02]; |
ab4676288414
Fix typos and errors in new bessel function tests
Mike Miller <mtmiller@ieee.org>
parents:
14426
diff
changeset
|
1059 %! [ 3.482869794e-42, 3.650256266e-33, 2.671177278e-21, 1.551096078e-12, 4.843425725e-02, 8.146012958e-02]; |
ab4676288414
Fix typos and errors in new bessel function tests
Mike Miller <mtmiller@ieee.org>
parents:
14426
diff
changeset
|
1060 %! [ 1.107915851e-60, 1.196077458e-48, 8.702241617e-33, 6.030895312e-21, -1.381762812e-01, 7.270175482e-02]; |
ab4676288414
Fix typos and errors in new bessel function tests
Mike Miller <mtmiller@ieee.org>
parents:
14426
diff
changeset
|
1061 %! [ 2.906004948e-80, 3.224095839e-65, 2.294247616e-45, 1.784513608e-30, 1.214090219e-01, -3.869833973e-02]; |
ab4676288414
Fix typos and errors in new bessel function tests
Mike Miller <mtmiller@ieee.org>
parents:
14426
diff
changeset
|
1062 %! [ 8.431828790e-189, 1.060953112e-158, 6.267789396e-119, 6.597316064e-89, 1.115927368e-21, 9.636667330e-02]]; |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1063 %! |
14450
ab4676288414
Fix typos and errors in new bessel function tests
Mike Miller <mtmiller@ieee.org>
parents:
14426
diff
changeset
|
1064 %! Yt = [[ 8.825696420e-02, 5.103756726e-01, -3.085176252e-01, 5.567116730e-02, -9.806499547e-02, -7.724431337e-02] |
ab4676288414
Fix typos and errors in new bessel function tests
Mike Miller <mtmiller@ieee.org>
parents:
14426
diff
changeset
|
1065 %! [-2.604058666e+02, -9.935989128e+00, -4.536948225e-01, 1.354030477e-01, -7.854841391e-02, -2.948019628e-02] |
ab4676288414
Fix typos and errors in new bessel function tests
Mike Miller <mtmiller@ieee.org>
parents:
14426
diff
changeset
|
1066 %! [-1.216180143e+08, -1.291845422e+05, -2.512911010e+01, -3.598141522e-01, 5.723897182e-03, 5.833157424e-02] |
ab4676288414
Fix typos and errors in new bessel function tests
Mike Miller <mtmiller@ieee.org>
parents:
14426
diff
changeset
|
1067 %! [-9.256973276e+14, -2.981023646e+10, -4.694049564e+04, -6.364745877e+00, 4.041280205e-02, 7.879068695e-02] |
ab4676288414
Fix typos and errors in new bessel function tests
Mike Miller <mtmiller@ieee.org>
parents:
14426
diff
changeset
|
1068 %! [-4.113970315e+22, -4.081651389e+16, -5.933965297e+08, -1.597483848e+03, 1.644263395e-02, 5.124797308e-02] |
ab4676288414
Fix typos and errors in new bessel function tests
Mike Miller <mtmiller@ieee.org>
parents:
14426
diff
changeset
|
1069 %! [-3.048128783e+39, -2.913223848e+30, -4.028568418e+18, -7.256142316e+09, -1.164572349e-01, 6.138839212e-03] |
ab4676288414
Fix typos and errors in new bessel function tests
Mike Miller <mtmiller@ieee.org>
parents:
14426
diff
changeset
|
1070 %! [-7.184874797e+57, -6.661541235e+45, -9.216816571e+29, -1.362803297e+18, -4.530801120e-02, 4.074685217e-02] |
ab4676288414
Fix typos and errors in new bessel function tests
Mike Miller <mtmiller@ieee.org>
parents:
14426
diff
changeset
|
1071 %! [-2.191142813e+77, -1.976150576e+62, -2.788837017e+42, -3.641066502e+27, -2.103165546e-01, 7.650526394e-02] |
ab4676288414
Fix typos and errors in new bessel function tests
Mike Miller <mtmiller@ieee.org>
parents:
14426
diff
changeset
|
1072 %! [-3.775287810e+185, -3.000826049e+155, -5.084863915e+115, -4.849148271e+85, -3.293800188e+18, -1.669214114e-01]]; |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1073 %! |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1074 %! n = [(0:5:20).';30;40;50;100]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1075 %! z = [1,2,5,10,50,100]; |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1076 %! J = besselj (n.', z.').'; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1077 %! Y = bessely (n.', z.').'; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1078 %! assert (J, Jt, -1e-9); |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1079 %! assert (Y, Yt, -1e-9); |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1080 |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1081 Table 9.8 - I and K for integer orders 0, 1, 2. |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1082 |
14450
ab4676288414
Fix typos and errors in new bessel function tests
Mike Miller <mtmiller@ieee.org>
parents:
14426
diff
changeset
|
1083 %!test |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1084 %! n = 0:2; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1085 %! z1 = [0.1;2.5;5.0]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1086 %! z2 = [7.5;10.0;15.0;20.0]; |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1087 %! rtbl = [[ 0.9071009258 0.0452984468 0.1251041992 2.6823261023 10.890182683 1.995039646 ]; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1088 %! [ 0.2700464416 0.2065846495 0.2042345837 0.7595486903 0.9001744239 0.759126289 ]; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1089 %! [ 0.1835408126 0.1639722669 0.7002245988 0.5478075643 0.6002738588 0.132723593 ]; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1090 %! [ 0.1483158301 0.1380412115 0.111504840 0.4505236991 0.4796689336 0.57843541 ]; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1091 %! [ 0.1278333372 0.1212626814 0.103580801 0.3916319344 0.4107665704 0.47378525 ]; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1092 %! [ 0.1038995314 0.1003741751 0.090516308 0.3210023535 0.3315348950 0.36520701 ]; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1093 %! [ 0.0897803119 0.0875062222 0.081029690 0.2785448768 0.2854254970 0.30708743 ]]; |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1094 %! |
14450
ab4676288414
Fix typos and errors in new bessel function tests
Mike Miller <mtmiller@ieee.org>
parents:
14426
diff
changeset
|
1095 %! tbl = [besseli(n,z1,1), besselk(n,z1,1)]; |
14854
5ae9f0f77635
maint: Use Octave coding conventions for coddling parenthis is DLD-FUNCTIONS directory
Rik <octave@nomad.inbox5.com>
parents:
14501
diff
changeset
|
1096 %! tbl(:,3) = tbl(:,3) .* (exp (z1) .* z1.^(-2)); |
5ae9f0f77635
maint: Use Octave coding conventions for coddling parenthis is DLD-FUNCTIONS directory
Rik <octave@nomad.inbox5.com>
parents:
14501
diff
changeset
|
1097 %! tbl(:,6) = tbl(:,6) .* (exp (-z1) .* z1.^(2)); |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1098 %! tbl = [tbl;[besseli(n,z2,1),besselk(n,z2,1)]]; |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1099 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1100 %! assert (tbl, rtbl, -2e-8); |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1101 |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1102 Table 9.9 - I and K for orders 3-9. |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1103 |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1104 %!test |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1105 %! It = [[ 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1106 %! [ 2.8791e-02 6.8654e-03 1.3298e-03 2.1656e-04 3.0402e-05 3.7487e-06 4.1199e-07]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1107 %! [ 6.1124e-02 2.5940e-02 9.2443e-03 2.8291e-03 7.5698e-04 1.7968e-04 3.8284e-05]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1108 %! [ 7.4736e-02 4.1238e-02 1.9752e-02 8.3181e-03 3.1156e-03 1.0484e-03 3.1978e-04]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1109 %! [ 7.9194e-02 5.0500e-02 2.8694e-02 1.4633e-02 6.7449e-03 2.8292e-03 1.0866e-03]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1110 %! [ 7.9830e-02 5.5683e-02 3.5284e-02 2.0398e-02 1.0806e-02 5.2694e-03 2.3753e-03]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1111 %! [ 7.8848e-02 5.8425e-02 3.9898e-02 2.5176e-02 1.4722e-02 8.0010e-03 4.0537e-03]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1112 %! [ 7.7183e-02 5.9723e-02 4.3056e-02 2.8969e-02 1.8225e-02 1.0744e-02 5.9469e-03]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1113 %! [ 7.5256e-02 6.0155e-02 4.5179e-02 3.1918e-02 2.1240e-02 1.3333e-02 7.9071e-03]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1114 %! [ 7.3263e-02 6.0059e-02 4.6571e-02 3.4186e-02 2.3780e-02 1.5691e-02 9.8324e-03]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1115 %! [ 7.1300e-02 5.9640e-02 4.7444e-02 3.5917e-02 2.5894e-02 1.7792e-02 1.1661e-02]]; |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1116 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1117 %! Kt = [[ Inf Inf Inf Inf Inf Inf Inf]; |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1118 %! [ 4.7836e+00 1.6226e+01 6.9687e+01 3.6466e+02 2.2576e+03 1.6168e+04 1.3160e+05]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1119 %! [ 1.6317e+00 3.3976e+00 8.4268e+00 2.4465e+01 8.1821e+01 3.1084e+02 1.3252e+03]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1120 %! [ 9.9723e-01 1.6798e+00 3.2370e+00 7.0748e+00 1.7387e+01 4.7644e+01 1.4444e+02]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1121 %! [ 7.3935e-01 1.1069e+00 1.8463e+00 3.4148e+00 6.9684e+00 1.5610e+01 3.8188e+01]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1122 %! [ 6.0028e-01 8.3395e-01 1.2674e+00 2.1014e+00 3.7891e+00 7.4062e+00 1.5639e+01]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1123 %! [ 5.1294e-01 6.7680e-01 9.6415e-01 1.4803e+00 2.4444e+00 4.3321e+00 8.2205e+00]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1124 %! [ 4.5266e-01 5.7519e-01 7.8133e-01 1.1333e+00 1.7527e+00 2.8860e+00 5.0510e+00]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1125 %! [ 4.0829e-01 5.0414e-01 6.6036e-01 9.1686e-01 1.3480e+00 2.0964e+00 3.4444e+00]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1126 %! [ 3.7411e-01 4.5162e-01 5.7483e-01 7.7097e-01 1.0888e+00 1.6178e+00 2.5269e+00]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1127 %! [ 3.4684e-01 4.1114e-01 5.1130e-01 6.6679e-01 9.1137e-01 1.3048e+00 1.9552e+00]]; |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1128 %! |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1129 %! n = (3:9); |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1130 %! z = (0:2:20).'; |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1131 %! I = besseli (n,z,1); |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1132 %! K = besselk (n,z,1); |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1133 %! |
14854
5ae9f0f77635
maint: Use Octave coding conventions for coddling parenthis is DLD-FUNCTIONS directory
Rik <octave@nomad.inbox5.com>
parents:
14501
diff
changeset
|
1134 %! assert (abs (I(1,:)), zeros (1, columns (I))); |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1135 %! assert (I(2:end,:), It(2:end,:), -5e-5); |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1136 %! assert (Kt(1,:), K(1,:)); |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1137 %! assert (K(2:end,:), Kt(2:end,:), -5e-5); |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1138 |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1139 Table 9.11 - I and K for various integer orders and arguments. |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1140 |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1141 %!test |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1142 %! It = [[ 1.266065878e+00 2.279585302e+00 2.723987182e+01 2.815716628e+03 2.93255378e+20 1.07375171e+42 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1143 %! [ 2.714631560e-04 9.825679323e-03 2.157974547e+00 7.771882864e+02 2.27854831e+20 9.47009387e+41 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1144 %! [ 2.752948040e-10 3.016963879e-07 4.580044419e-03 2.189170616e+01 1.07159716e+20 6.49897552e+41 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1145 %! [ 2.370463051e-17 8.139432531e-13 1.047977675e-06 1.043714907e-01 3.07376455e+19 3.47368638e+41 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1146 %! [ 3.966835986e-25 4.310560576e-19 5.024239358e-11 1.250799736e-04 5.44200840e+18 1.44834613e+41 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1147 %! [ 3.539500588e-42 3.893519664e-33 3.997844971e-21 7.787569783e-12 4.27499365e+16 1.20615487e+40 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1148 %! [ 1.121509741e-60 1.255869192e-48 1.180426980e-32 2.042123274e-20 6.00717897e+13 3.84170550e+38 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1149 %! [ 2.934635309e-80 3.353042830e-65 2.931469647e-45 4.756894561e-30 1.76508024e+10 4.82195809e+36 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1150 %! [ 8.473674008e-189 1.082171475e-158 7.093551489e-119 1.082344202e-88 2.72788795e-16 4.64153494e+21 ]]; |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1151 %! |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1152 %! Kt = [[ 4.210244382e-01 1.138938727e-01 3.691098334e-03 1.778006232e-05 3.41016774e-23 4.65662823e-45 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1153 %! [ 3.609605896e+02 9.431049101e+00 3.270627371e-02 5.754184999e-05 4.36718224e-23 5.27325611e-45 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1154 %! [ 1.807132899e+08 1.624824040e+05 9.758562829e+00 1.614255300e-03 9.15098819e-23 7.65542797e-45 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1155 %! [ 1.403066801e+15 4.059213332e+10 3.016976630e+04 2.656563849e-01 3.11621117e-22 1.42348325e-44 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1156 %! [ 6.294369360e+22 5.770856853e+16 4.827000521e+08 1.787442782e+02 1.70614838e-21 3.38520541e-44 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1157 %! [ 4.706145527e+39 4.271125755e+30 4.112132063e+18 2.030247813e+09 2.00581681e-19 3.97060205e-43 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1158 %! [ 1.114220651e+58 9.940839886e+45 1.050756722e+30 5.938224681e+17 1.29986971e-16 1.20842080e-41 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1159 %! [ 3.406896854e+77 2.979981740e+62 3.394322243e+42 2.061373775e+27 4.00601349e-13 9.27452265e-40 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1160 %! [ 5.900333184e+185 4.619415978e+155 7.039860193e+115 4.596674084e+85 1.63940352e+13 7.61712963e-25 ]]; |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1161 %! |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1162 %! n = [(0:5:20).';30;40;50;100]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1163 %! z = [1,2,5,10,50,100]; |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1164 %! I = besseli (n.', z.').'; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1165 %! K = besselk (n.', z.').'; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1166 %! assert (I, It, -5e-9); |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1167 %! assert (K, Kt, -5e-9); |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1168 |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1169 The next section checks that negative integer orders and positive |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1170 integer orders are appropriately related. |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1171 |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1172 %!test |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1173 %! n = (0:2:20); |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1174 %! assert (besselj (n,1), besselj (-n,1), 1e-8); |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1175 %! assert (-besselj (n+1,1), besselj (-n-1,1), 1e-8); |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1176 |
14854
5ae9f0f77635
maint: Use Octave coding conventions for coddling parenthis is DLD-FUNCTIONS directory
Rik <octave@nomad.inbox5.com>
parents:
14501
diff
changeset
|
1177 besseli (n,z) = besseli (-n,z); |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1178 |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1179 %!test |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1180 %! n = (0:2:20); |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1181 %! assert (besseli (n,1), besseli (-n,1), 1e-8); |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1182 |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1183 Table 10.1 - j and y for integer orders 0, 1, 2. |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1184 Compare against excerpts of Table 10.1, Abramowitz and Stegun. |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1185 |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1186 %!test |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1187 %! n = (0:2); |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1188 %! z = [0.1;(2.5:2.5:10.0).']; |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1189 %! |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1190 %! jt = [[ 9.9833417e-01 3.33000119e-02 6.6619061e-04 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1191 %! [ 2.3938886e-01 4.16212989e-01 2.6006673e-01 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1192 %! [-1.9178485e-01 -9.50894081e-02 1.3473121e-01 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1193 %! [ 1.2507e-01 -2.9542e-02 -1.3688e-01 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1194 %! [ -5.4402e-02 7.8467e-02 7.7942e-02 ]]; |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1195 %! |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1196 %! yt = [[-9.9500417e+00 -1.0049875e+02 -3.0050125e+03 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1197 %! [ 3.2045745e-01 -1.1120588e-01 -4.5390450e-01 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1198 %! [-5.6732437e-02 1.8043837e-01 1.6499546e-01 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1199 %! [ -4.6218e-02 -1.3123e-01 -6.2736e-03 ]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1200 %! [ 8.3907e-02 6.2793e-02 -6.5069e-02 ]]; |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1201 %! |
14854
5ae9f0f77635
maint: Use Octave coding conventions for coddling parenthis is DLD-FUNCTIONS directory
Rik <octave@nomad.inbox5.com>
parents:
14501
diff
changeset
|
1202 %! j = sqrt ((pi/2)./z) .* besselj (n+1/2,z); |
5ae9f0f77635
maint: Use Octave coding conventions for coddling parenthis is DLD-FUNCTIONS directory
Rik <octave@nomad.inbox5.com>
parents:
14501
diff
changeset
|
1203 %! y = sqrt ((pi/2)./z) .* bessely (n+1/2,z); |
5ae9f0f77635
maint: Use Octave coding conventions for coddling parenthis is DLD-FUNCTIONS directory
Rik <octave@nomad.inbox5.com>
parents:
14501
diff
changeset
|
1204 %! assert (jt, j, -5e-5); |
5ae9f0f77635
maint: Use Octave coding conventions for coddling parenthis is DLD-FUNCTIONS directory
Rik <octave@nomad.inbox5.com>
parents:
14501
diff
changeset
|
1205 %! assert (yt, y, -5e-5); |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1206 |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1207 Table 10.2 - j and y for orders 3-8. |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1208 Compare against excerpts of Table 10.2, Abramowitzh and Stegun. |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1209 |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1210 Important note: In A&S, y_4(0.1) = -1.0507e+7, but Octave returns |
14854
5ae9f0f77635
maint: Use Octave coding conventions for coddling parenthis is DLD-FUNCTIONS directory
Rik <octave@nomad.inbox5.com>
parents:
14501
diff
changeset
|
1211 y_4(0.1) = -1.0508e+07 (-10507503.75). If I compute the same term using |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1212 a series, the difference is in the eighth significant digit so I left |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1213 the Octave results in place. |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1214 |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1215 %!test |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1216 %! n = (3:8); |
14854
5ae9f0f77635
maint: Use Octave coding conventions for coddling parenthis is DLD-FUNCTIONS directory
Rik <octave@nomad.inbox5.com>
parents:
14501
diff
changeset
|
1217 %! z = (0:2.5:10).'; z(1) = 0.1; |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1218 %! |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1219 %! jt = [[ 9.5185e-06 1.0577e-07 9.6163e-10 7.3975e-12 4.9319e-14 2.9012e-16]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1220 %! [ 1.0392e-01 3.0911e-02 7.3576e-03 1.4630e-03 2.5009e-04 3.7516e-05]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1221 %! [ 2.2982e-01 1.8702e-01 1.0681e-01 4.7967e-02 1.7903e-02 5.7414e-03]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1222 %! [-6.1713e-02 7.9285e-02 1.5685e-01 1.5077e-01 1.0448e-01 5.8188e-02]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1223 %! [-3.9496e-02 -1.0559e-01 -5.5535e-02 4.4501e-02 1.1339e-01 1.2558e-01]]; |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1224 %! |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1225 %! yt = [[-1.5015e+05 -1.0508e+07 -9.4553e+08 -1.0400e+11 -1.3519e+13 -2.0277e+15]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1226 %! [-7.9660e-01 -1.7766e+00 -5.5991e+00 -2.2859e+01 -1.1327e+02 -6.5676e+02]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1227 %! [-1.5443e-02 -1.8662e-01 -3.2047e-01 -5.1841e-01 -1.0274e+00 -2.5638e+00]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1228 %! [ 1.2705e-01 1.2485e-01 2.2774e-02 -9.1449e-02 -1.8129e-01 -2.7112e-01]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1229 %! [-9.5327e-02 -1.6599e-03 9.3834e-02 1.0488e-01 4.2506e-02 -4.1117e-02]]; |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1230 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1231 %! j = sqrt ((pi/2)./z) .* besselj (n+1/2,z); |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1232 %! y = sqrt ((pi/2)./z) .* bessely (n+1/2,z); |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1233 %! |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1234 %! assert (jt, j, -5e-5); |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1235 %! assert (yt, y, -5e-5); |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1236 |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1237 Table 10.4 - j and y for various integer orders and arguments. |
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1238 |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1239 %!test |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1240 %! jt = [[ 8.414709848e-01 4.546487134e-01 -1.917848549e-01 -5.440211109e-02 -5.247497074e-03 -5.063656411e-03]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1241 %! [ 9.256115861e-05 2.635169770e-03 1.068111615e-01 -5.553451162e-02 -2.004830056e-02 -9.290148935e-03]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1242 %! [ 7.116552640e-11 6.825300865e-08 4.073442442e-04 6.460515449e-02 -1.503922146e-02 -1.956578597e-04]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1243 %! [ 5.132686115e-18 1.606982166e-13 1.084280182e-07 1.063542715e-03 -1.129084539e-02 7.877261748e-03]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1244 %! [ 7.537795722e-26 7.632641101e-20 5.427726761e-12 2.308371961e-06 -1.578502990e-02 1.010767128e-02]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1245 %! [ 5.566831267e-43 5.836617888e-34 4.282730217e-22 2.512057385e-13 -1.494673454e-03 8.700628514e-03]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1246 %! [ 1.538210374e-61 1.660978779e-49 1.210347583e-33 8.435671634e-22 -2.606336952e-02 1.043410851e-02]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1247 %! [ 3.615274717e-81 4.011575290e-66 2.857479350e-46 2.230696023e-31 1.882910737e-02 5.797140882e-04]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1248 %! [7.444727742e-190 9.367832591e-160 5.535650303e-120 5.832040182e-90 1.019012263e-22 1.088047701e-02]]; |
14426
e28a1723d5a2
besselj: Style fixes on new tests due to Robert T. Short
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
14425
diff
changeset
|
1249 %! |
14425
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1250 %! yt = [[ -5.403023059e-01 2.080734183e-01 -5.673243709e-02 8.390715291e-02 -1.929932057e-02 -8.623188723e-03] |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1251 %! [ -9.994403434e+02 -1.859144531e+01 -3.204650467e-01 9.383354168e-02 -6.971131965e-04 3.720678486e-03] |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1252 %! [ -6.722150083e+08 -3.554147201e+05 -2.665611441e+01 -1.724536721e-01 1.352468751e-02 1.002577737e-02] |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1253 %! [ -6.298007233e+15 -1.012182944e+11 -6.288146513e+04 -3.992071745e+00 1.712319725e-02 6.258641510e-03] |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1254 %! [ -3.239592219e+23 -1.605436493e+17 -9.267951403e+08 -1.211210605e+03 1.375953130e-02 5.631729379e-05] |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1255 %! [ -2.946428547e+40 -1.407393871e+31 -7.760717570e+18 -6.908318646e+09 -2.241226812e-02 -5.412929349e-03] |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1256 %! [ -8.028450851e+58 -3.720929322e+46 -2.055758716e+30 -1.510304919e+18 4.978797221e-05 -7.048420407e-04] |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1257 %! [ -2.739192285e+78 -1.235021944e+63 -6.964109188e+42 -4.528227272e+27 -4.190000150e-02 1.074782297e-02] |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1258 %! [-6.683079463e+186 -2.655955830e+156 -1.799713983e+116 -8.573226309e+85 -1.125692891e+18 -2.298385049e-02]]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1259 %! |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1260 %! n = [(0:5:20).';30;40;50;100]; |
6646031e2450
besselj.cc: Added tests to cover a broad range of arguments and orders.
Robert T. Short <octave@phaselockedsystems.com>
parents:
14360
diff
changeset
|
1261 %! z = [1,2,5,10,50,100]; |
14501
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1262 %! j = sqrt ((pi/2)./z) .* besselj ((n+1/2).', z.').'; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1263 %! y = sqrt ((pi/2)./z) .* bessely ((n+1/2).', z.').'; |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1264 %! assert (j, jt, -1e-9); |
60e5cf354d80
Update %!tests in DLD-FUNCTIONS/ directory with Octave coding conventions.
Rik <octave@nomad.inbox5.com>
parents:
14450
diff
changeset
|
1265 %! assert (y, yt, -1e-9); |
8278
ab0674a8b345
fix scaling factor for negative alpha in zbesi,cbesi
Brian Gough <bjg@gnu.org>
parents:
7919
diff
changeset
|
1266 */ |