File tree Expand file tree Collapse file tree 2 files changed +16
-8
lines changed Expand file tree Collapse file tree 2 files changed +16
-8
lines changed Original file line number Diff line number Diff line change @@ -158,19 +158,19 @@ function besselj(nu::Real, x::T) where T
158
158
159
159
Jnu = besselj_positive_args (abs_nu, abs_x)
160
160
if nu >= zero (T)
161
- return x >= zero (T) ? Jnu : cispi (abs_nu)* Jnu
161
+ return x >= zero (T) ? Jnu : Jnu * cispi (abs_nu)
162
162
else
163
163
Ynu = bessely_positive_args (abs_nu, abs_x)
164
164
spi, cpi = sincospi (abs_nu)
165
- out = cpi * Jnu - spi * Ynu
165
+ out = Jnu * cpi - Ynu * spi
166
166
return x >= zero (T) ? out : out * cispi (nu)
167
167
end
168
168
end
169
169
170
170
function besselj (nu:: Int , x:: T ) where T
171
171
abs_nu = abs (nu)
172
172
abs_x = abs (x)
173
- sg = ( iseven (Int (abs_nu)) ? 1 : - 1 )
173
+ sg = iseven (Int (abs_nu)) ? 1 : - 1
174
174
175
175
Jnu = besselj_positive_args (abs_nu, abs_x)
176
176
if nu >= zero (T)
Original file line number Diff line number Diff line change @@ -194,24 +194,32 @@ function bessely(nu::Real, x::T) where T
194
194
abs_x = abs (x)
195
195
196
196
Ynu = bessely_positive_args (abs_nu, abs_x)
197
- Jnu = besselj_positive_args (abs_nu, abs_x)
198
197
spi, cpi = sincospi (abs_nu)
199
198
if nu >= zero (T)
200
- return x >= zero (T) ? Ynu : cispi (- nu)* Ynu + 2im * cpi* Jnu
199
+ if x >= zero (T)
200
+ return Ynu
201
+ else
202
+ return Ynu * cispi (- nu) + 2im * besselj_positive_args (abs_nu, abs_x) * cpi
203
+ end
201
204
else
202
- return x >= zero (T) ? cpi* Ynu + spi* Jnu : cpi * (cispi (nu)* Ynu + 2im * cpi * Jnu) + spi * cispi (abs_nu) * Jnu
205
+ Jnu = besselj_positive_args (abs_nu, abs_x)
206
+ if x >= zero (T)
207
+ return Ynu * cpi + Jnu * spi
208
+ else
209
+ return cpi * (Ynu * cispi (nu) + 2im * Jnu * cpi) + Jnu * spi * cispi (abs_nu)
210
+ end
203
211
end
204
212
end
205
213
function bessely (nu:: Int , x:: T ) where T
206
214
abs_nu = abs (nu)
207
215
abs_x = abs (x)
208
- sg = ( iseven (Int (abs_nu)) ? 1 : - 1 )
216
+ sg = iseven (Int (abs_nu)) ? 1 : - 1
209
217
210
218
Ynu = bessely_positive_args (abs_nu, abs_x)
211
219
if nu >= zero (T)
212
220
return x >= zero (T) ? Ynu : Ynu * sg + 2im * sg * besselj_positive_args (abs_nu, abs_x)
213
221
elseif nu < zero (T)
214
- return x > zero (T) ? Ynu * sg : Ynu + 2im * besselj_positive_args (abs_nu, abs_x)
222
+ return x >= zero (T) ? Ynu * sg : Ynu + 2im * besselj_positive_args (abs_nu, abs_x)
215
223
end
216
224
end
217
225
You can’t perform that action at this time.
0 commit comments