public class org.apache.commons.math3.special.BesselJ implements org.apache.commons.math3.analysis.UnivariateFunction
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.commons.math3.special.BesselJ
super_class: java.lang.Object
{
private static final double PI2;
descriptor: D
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0.6366197723675814
private static final double TOWPI1;
descriptor: D
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 6.28125
private static final double TWOPI2;
descriptor: D
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0.001935307179586477
private static final double TWOPI;
descriptor: D
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 6.283185307179586
private static final double ENTEN;
descriptor: D
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1.0E308
private static final double ENSIG;
descriptor: D
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1.0E16
private static final double RTNSIG;
descriptor: D
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1.0E-4
private static final double ENMTEN;
descriptor: D
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 8.9E-308
private static final double X_MIN;
descriptor: D
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0.0
private static final double X_MAX;
descriptor: D
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 10000.0
private static final double[] FACT;
descriptor: [D
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final double order;
descriptor: D
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=0, args_size=0
0: .line 111
bipush 25
newarray 7
dup
iconst_0
1: .line 112
dconst_1
dastore
dup
iconst_1
dconst_1
dastore
dup
iconst_2
ldc 2.0
dastore
dup
iconst_3
ldc 6.0
dastore
dup
iconst_4
ldc 24.0
dastore
dup
iconst_5
ldc 120.0
dastore
dup
bipush 6
ldc 720.0
dastore
dup
bipush 7
ldc 5040.0
dastore
dup
bipush 8
ldc 40320.0
dastore
dup
bipush 9
ldc 362880.0
dastore
dup
bipush 10
2: .line 113
ldc 3628800.0
dastore
dup
bipush 11
ldc 3.99168E7
dastore
dup
bipush 12
ldc 4.790016E8
dastore
dup
bipush 13
ldc 6.2270208E9
dastore
dup
bipush 14
ldc 8.71782912E10
dastore
dup
bipush 15
3: .line 114
ldc 1.307674368E12
dastore
dup
bipush 16
ldc 2.0922789888E13
dastore
dup
bipush 17
ldc 3.55687428096E14
dastore
dup
bipush 18
ldc 6.402373705728E15
dastore
dup
bipush 19
4: .line 115
ldc 1.21645100408832E17
dastore
dup
bipush 20
ldc 2.43290200817664E18
dastore
dup
bipush 21
ldc 5.109094217170944E19
dastore
dup
bipush 22
5: .line 116
ldc 1.1240007277776077E21
dastore
dup
bipush 23
ldc 2.585201673888498E22
dastore
dup
bipush 24
6: .line 117
ldc 6.204484017332394E23
dastore
7: .line 111
putstatic org.apache.commons.math3.special.BesselJ.FACT:[D
8: .line 118
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(double);
descriptor: (D)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 // org.apache.commons.math3.special.BesselJ this
start local 1 // double order
0: .line 128
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 129
aload 0 /* this */
dload 1 /* order */
putfield org.apache.commons.math3.special.BesselJ.order:D
2: .line 130
return
end local 1 // double order
end local 0 // org.apache.commons.math3.special.BesselJ this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/commons/math3/special/BesselJ;
0 3 1 order D
MethodParameters:
Name Flags
order
public double value(double);
descriptor: (D)D
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 // org.apache.commons.math3.special.BesselJ this
start local 1 // double x
0: .line 143
aload 0 /* this */
getfield org.apache.commons.math3.special.BesselJ.order:D
dload 1 /* x */
invokestatic org.apache.commons.math3.special.BesselJ.value:(DD)D
dreturn
end local 1 // double x
end local 0 // org.apache.commons.math3.special.BesselJ this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/math3/special/BesselJ;
0 1 1 x D
Exceptions:
throws org.apache.commons.math3.exception.MathIllegalArgumentException, org.apache.commons.math3.exception.ConvergenceException
MethodParameters:
Name Flags
x
public static double value(double, double);
descriptor: (DD)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=8, locals=9, args_size=2
start local 0 // double order
start local 2 // double x
0: .line 157
dload 0 /* order */
d2i
istore 4 /* n */
start local 4 // int n
1: .line 158
dload 0 /* order */
iload 4 /* n */
i2d
dsub
dstore 5 /* alpha */
start local 5 // double alpha
2: .line 159
iload 4 /* n */
iconst_1
iadd
istore 7 /* nb */
start local 7 // int nb
3: .line 160
dload 2 /* x */
dload 5 /* alpha */
iload 7 /* nb */
invokestatic org.apache.commons.math3.special.BesselJ.rjBesl:(DDI)Lorg/apache/commons/math3/special/BesselJ$BesselJResult;
astore 8 /* res */
start local 8 // org.apache.commons.math3.special.BesselJ$BesselJResult res
4: .line 162
aload 8 /* res */
getfield org.apache.commons.math3.special.BesselJ$BesselJResult.nVals:I
iload 7 /* nb */
if_icmplt 6
5: .line 163
aload 8 /* res */
getfield org.apache.commons.math3.special.BesselJ$BesselJResult.vals:[D
iload 4 /* n */
daload
dreturn
6: .line 164
StackMap locals: double double int double int org.apache.commons.math3.special.BesselJ$BesselJResult
StackMap stack:
aload 8 /* res */
getfield org.apache.commons.math3.special.BesselJ$BesselJResult.nVals:I
ifge 8
7: .line 165
new org.apache.commons.math3.exception.MathIllegalArgumentException
dup
getstatic org.apache.commons.math3.exception.util.LocalizedFormats.BESSEL_FUNCTION_BAD_ARGUMENT:Lorg/apache/commons/math3/exception/util/LocalizedFormats;
iconst_2
anewarray java.lang.Object
dup
iconst_0
dload 0 /* order */
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aastore
dup
iconst_1
dload 2 /* x */
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aastore
invokespecial org.apache.commons.math3.exception.MathIllegalArgumentException.<init>:(Lorg/apache/commons/math3/exception/util/Localizable;[Ljava/lang/Object;)V
athrow
8: .line 166
StackMap locals:
StackMap stack:
aload 8 /* res */
getfield org.apache.commons.math3.special.BesselJ$BesselJResult.vals:[D
aload 8 /* res */
getfield org.apache.commons.math3.special.BesselJ$BesselJResult.nVals:I
iconst_1
isub
daload
invokestatic org.apache.commons.math3.util.FastMath.abs:(D)D
ldc 1.0E-100
dcmpg
ifge 10
9: .line 167
aload 8 /* res */
getfield org.apache.commons.math3.special.BesselJ$BesselJResult.vals:[D
iload 4 /* n */
daload
dreturn
10: .line 169
StackMap locals:
StackMap stack:
new org.apache.commons.math3.exception.ConvergenceException
dup
getstatic org.apache.commons.math3.exception.util.LocalizedFormats.BESSEL_FUNCTION_FAILED_CONVERGENCE:Lorg/apache/commons/math3/exception/util/LocalizedFormats;
iconst_2
anewarray java.lang.Object
dup
iconst_0
dload 0 /* order */
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aastore
dup
iconst_1
dload 2 /* x */
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aastore
invokespecial org.apache.commons.math3.exception.ConvergenceException.<init>:(Lorg/apache/commons/math3/exception/util/Localizable;[Ljava/lang/Object;)V
athrow
end local 8 // org.apache.commons.math3.special.BesselJ$BesselJResult res
end local 7 // int nb
end local 5 // double alpha
end local 4 // int n
end local 2 // double x
end local 0 // double order
LocalVariableTable:
Start End Slot Name Signature
0 11 0 order D
0 11 2 x D
1 11 4 n I
2 11 5 alpha D
3 11 7 nb I
4 11 8 res Lorg/apache/commons/math3/special/BesselJ$BesselJResult;
Exceptions:
throws org.apache.commons.math3.exception.MathIllegalArgumentException, org.apache.commons.math3.exception.ConvergenceException
MethodParameters:
Name Flags
order
x
public static org.apache.commons.math3.special.BesselJ$BesselJResult rjBesl(double, double, int);
descriptor: (DDI)Lorg/apache/commons/math3/special/BesselJ$BesselJResult;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=10, locals=52, args_size=3
start local 0 // double x
start local 2 // double alpha
start local 4 // int nb
0: .line 246
iload 4 /* nb */
newarray 7
astore 5 /* b */
start local 5 // double[] b
1: .line 248
iconst_0
istore 6 /* ncalc */
start local 6 // int ncalc
2: .line 249
dconst_0
dstore 7 /* alpem */
start local 7 // double alpem
3: .line 250
dconst_0
dstore 9 /* alp2em */
start local 9 // double alp2em
4: .line 255
dload 0 /* x */
d2i
istore 11 /* magx */
start local 11 // int magx
5: .line 256
iload 4 /* nb */
ifle 281
dload 0 /* x */
dconst_0
dcmpl
iflt 281
dload 0 /* x */
ldc 10000.0
dcmpg
ifgt 281
dload 2 /* alpha */
dconst_0
dcmpl
iflt 281
6: .line 257
dload 2 /* alpha */
dconst_1
dcmpg
ifge 281
7: .line 261
iload 4 /* nb */
istore 6 /* ncalc */
8: .line 262
iconst_0
istore 12 /* i */
start local 12 // int i
9: goto 12
10: .line 263
StackMap locals: double double int double[] int double double int int
StackMap stack:
aload 5 /* b */
iload 12 /* i */
dconst_0
dastore
11: .line 262
iinc 12 /* i */ 1
StackMap locals:
StackMap stack:
12: iload 12 /* i */
iload 4 /* nb */
if_icmplt 10
end local 12 // int i
13: .line 274
dload 0 /* x */
ldc 1.0E-4
dcmpg
ifge 54
14: .line 278
dconst_1
dstore 12 /* tempa */
start local 12 // double tempa
15: .line 279
dconst_1
dload 2 /* alpha */
dadd
dstore 7 /* alpem */
16: .line 280
dconst_0
dstore 20 /* halfx */
start local 20 // double halfx
17: .line 281
dload 0 /* x */
ldc 8.9E-308
dcmpl
ifle 19
18: .line 282
ldc 0.5
dload 0 /* x */
dmul
dstore 20 /* halfx */
19: .line 284
StackMap locals: double double int double[] int double double int double top top top top top top double
StackMap stack:
dload 2 /* alpha */
dconst_0
dcmpl
ifeq 23
20: .line 285
dload 20 /* halfx */
dload 2 /* alpha */
invokestatic org.apache.commons.math3.util.FastMath.pow:(DD)D
21: .line 286
dload 2 /* alpha */
dload 2 /* alpha */
invokestatic org.apache.commons.math3.special.Gamma.gamma:(D)D
dmul
22: .line 285
ddiv
dstore 12 /* tempa */
23: .line 288
StackMap locals:
StackMap stack:
dconst_0
dstore 14 /* tempb */
start local 14 // double tempb
24: .line 289
dload 0 /* x */
dconst_1
dadd
dconst_1
dcmpl
ifle 26
25: .line 290
dload 20 /* halfx */
dneg
dload 20 /* halfx */
dmul
dstore 14 /* tempb */
26: .line 292
StackMap locals: double double int double[] int double double int double double top top top top double
StackMap stack:
aload 5 /* b */
iconst_0
dload 12 /* tempa */
dload 12 /* tempa */
dload 14 /* tempb */
dmul
dload 7 /* alpem */
ddiv
dadd
dastore
27: .line 293
dload 0 /* x */
dconst_0
dcmpl
ifeq 29
aload 5 /* b */
iconst_0
daload
dconst_0
dcmpl
ifne 29
28: .line 294
iconst_0
istore 6 /* ncalc */
29: .line 296
StackMap locals:
StackMap stack:
iload 4 /* nb */
iconst_1
if_icmpeq 284
30: .line 297
dload 0 /* x */
dconst_0
dcmpg
ifgt 37
31: .line 298
iconst_1
istore 22 /* n */
start local 22 // int n
32: goto 35
33: .line 299
StackMap locals: int
StackMap stack:
aload 5 /* b */
iload 22 /* n */
dconst_0
dastore
34: .line 298
iinc 22 /* n */ 1
StackMap locals:
StackMap stack:
35: iload 22 /* n */
iload 4 /* nb */
if_icmplt 33
end local 22 // int n
36: .line 301
goto 284
37: .line 305
StackMap locals:
StackMap stack:
dload 20 /* halfx */
dstore 16 /* tempc */
start local 16 // double tempc
38: .line 306
dload 14 /* tempb */
dconst_0
dcmpl
ifeq 39
ldc 8.9E-308
dload 14 /* tempb */
ddiv
goto 40
StackMap locals: double double int double[] int double double int double double double top top double
StackMap stack:
39: ldc 1.78E-307
dload 0 /* x */
ddiv
StackMap locals:
StackMap stack: double
40: dstore 18 /* tover */
start local 18 // double tover
41: .line 307
iconst_1
istore 22 /* n */
start local 22 // int n
42: goto 52
43: .line 308
StackMap locals: double double int double[] int double double int double double double double double int
StackMap stack:
dload 12 /* tempa */
dload 7 /* alpem */
ddiv
dstore 12 /* tempa */
44: .line 309
dload 7 /* alpem */
dconst_1
dadd
dstore 7 /* alpem */
45: .line 310
dload 12 /* tempa */
dload 16 /* tempc */
dmul
dstore 12 /* tempa */
46: .line 311
dload 12 /* tempa */
dload 18 /* tover */
dload 7 /* alpem */
dmul
dcmpg
ifgt 48
47: .line 312
dconst_0
dstore 12 /* tempa */
48: .line 314
StackMap locals:
StackMap stack:
aload 5 /* b */
iload 22 /* n */
dload 12 /* tempa */
dload 12 /* tempa */
dload 14 /* tempb */
dmul
dload 7 /* alpem */
ddiv
dadd
dastore
49: .line 315
aload 5 /* b */
iload 22 /* n */
daload
dconst_0
dcmpl
ifne 51
iload 6 /* ncalc */
iload 22 /* n */
if_icmple 51
50: .line 316
iload 22 /* n */
istore 6 /* ncalc */
51: .line 307
StackMap locals:
StackMap stack:
iinc 22 /* n */ 1
StackMap locals:
StackMap stack:
52: iload 22 /* n */
iload 4 /* nb */
if_icmplt 43
end local 22 // int n
end local 20 // double halfx
end local 18 // double tover
end local 16 // double tempc
53: .line 321
goto 284
end local 14 // double tempb
end local 12 // double tempa
StackMap locals: double double int double[] int double double int
StackMap stack:
54: dload 0 /* x */
ldc 25.0
dcmpl
ifle 115
iload 4 /* nb */
iload 11 /* magx */
iconst_1
iadd
if_icmpgt 115
55: .line 325
ldc 0.6366197723675814
dload 0 /* x */
ddiv
invokestatic org.apache.commons.math3.util.FastMath.sqrt:(D)D
dstore 20 /* xc */
start local 20 // double xc
56: .line 326
ldc 0.125
dload 0 /* x */
ddiv
dstore 22 /* mul */
start local 22 // double mul
57: .line 327
dload 22 /* mul */
dload 22 /* mul */
dmul
dstore 24 /* xin */
start local 24 // double xin
58: .line 328
iconst_0
istore 26 /* m */
start local 26 // int m
59: .line 329
dload 0 /* x */
ldc 130.0
dcmpl
iflt 62
60: .line 330
iconst_4
istore 26 /* m */
61: .line 331
goto 66
StackMap locals: double double int double[] int double double int top top top top top top top top double double double int
StackMap stack:
62: dload 0 /* x */
ldc 35.0
dcmpl
iflt 65
63: .line 332
bipush 8
istore 26 /* m */
64: .line 333
goto 66
65: .line 334
StackMap locals:
StackMap stack:
bipush 11
istore 26 /* m */
66: .line 337
StackMap locals:
StackMap stack:
ldc 4.0
iload 26 /* m */
i2d
dmul
dstore 27 /* xm */
start local 27 // double xm
67: .line 341
dload 0 /* x */
ldc 6.283185307179586
ddiv
ldc 0.5
dadd
d2i
i2d
dstore 29 /* t */
start local 29 // double t
68: .line 342
dload 0 /* x */
dload 29 /* t */
ldc 6.28125
dmul
dsub
dload 29 /* t */
ldc 0.001935307179586477
dmul
dsub
dload 2 /* alpha */
ldc 0.5
dadd
ldc 0.6366197723675814
ddiv
dsub
dstore 31 /* z */
start local 31 // double z
69: .line 343
dload 31 /* z */
invokestatic org.apache.commons.math3.util.FastMath.sin:(D)D
dstore 33 /* vsin */
start local 33 // double vsin
70: .line 344
dload 31 /* z */
invokestatic org.apache.commons.math3.util.FastMath.cos:(D)D
dstore 35 /* vcos */
start local 35 // double vcos
71: .line 345
ldc 2.0
dload 2 /* alpha */
dmul
dstore 37 /* gnu */
start local 37 // double gnu
72: .line 351
iconst_1
istore 49 /* i */
start local 49 // int i
73: goto 105
74: .line 352
StackMap locals: double double int double[] int double double int top top top top top top top top double double double int double double double double double double top top top top top top top top top top int
StackMap stack:
dload 27 /* xm */
dconst_1
dsub
dload 37 /* gnu */
dsub
dload 27 /* xm */
dconst_1
dsub
dload 37 /* gnu */
dadd
dmul
dload 24 /* xin */
dmul
ldc 0.5
dmul
dstore 43 /* s */
start local 43 // double s
75: .line 353
dload 37 /* gnu */
dload 27 /* xm */
ldc 3.0
dsub
dsub
dload 37 /* gnu */
dload 27 /* xm */
ldc 3.0
dsub
dadd
dmul
dstore 29 /* t */
76: .line 354
dload 43 /* s */
dload 29 /* t */
dmul
getstatic org.apache.commons.math3.special.BesselJ.FACT:[D
iconst_2
iload 26 /* m */
imul
daload
ddiv
dstore 41 /* capp */
start local 41 // double capp
77: .line 355
dload 37 /* gnu */
dload 27 /* xm */
dconst_1
dadd
dsub
dload 37 /* gnu */
dload 27 /* xm */
dconst_1
dadd
dadd
dmul
dstore 45 /* t1 */
start local 45 // double t1
78: .line 356
dload 43 /* s */
dload 45 /* t1 */
dmul
getstatic org.apache.commons.math3.special.BesselJ.FACT:[D
iconst_2
iload 26 /* m */
imul
iconst_1
iadd
daload
ddiv
dstore 39 /* capq */
start local 39 // double capq
79: .line 357
dload 27 /* xm */
dstore 47 /* xk */
start local 47 // double xk
80: .line 358
iconst_2
iload 26 /* m */
imul
istore 50 /* k */
start local 50 // int k
81: .line 359
dload 29 /* t */
dstore 45 /* t1 */
82: .line 361
iconst_2
istore 51 /* j */
start local 51 // int j
83: goto 92
84: .line 362
StackMap locals: double double int double[] int double double int top top top top top top top top double double double int double double double double double double double double double double double int int int
StackMap stack:
dload 47 /* xk */
ldc 4.0
dsub
dstore 47 /* xk */
85: .line 363
dload 47 /* xk */
dconst_1
dsub
dload 37 /* gnu */
dsub
dload 47 /* xk */
dconst_1
dsub
dload 37 /* gnu */
dadd
dmul
dstore 43 /* s */
86: .line 364
dload 37 /* gnu */
dload 47 /* xk */
ldc 3.0
dsub
dsub
dload 37 /* gnu */
dload 47 /* xk */
ldc 3.0
dsub
dadd
dmul
dstore 29 /* t */
87: .line 365
dload 41 /* capp */
dconst_1
getstatic org.apache.commons.math3.special.BesselJ.FACT:[D
iload 50 /* k */
iconst_2
isub
daload
ddiv
dadd
dload 43 /* s */
dmul
dload 29 /* t */
dmul
dload 24 /* xin */
dmul
dstore 41 /* capp */
88: .line 366
dload 39 /* capq */
dconst_1
getstatic org.apache.commons.math3.special.BesselJ.FACT:[D
iload 50 /* k */
iconst_1
isub
daload
ddiv
dadd
dload 43 /* s */
dmul
dload 45 /* t1 */
dmul
dload 24 /* xin */
dmul
dstore 39 /* capq */
89: .line 367
iinc 50 /* k */ -2
90: .line 368
dload 29 /* t */
dstore 45 /* t1 */
91: .line 361
iinc 51 /* j */ 1
StackMap locals:
StackMap stack:
92: iload 51 /* j */
iload 26 /* m */
if_icmple 84
end local 51 // int j
93: .line 371
dload 41 /* capp */
dconst_1
dadd
dstore 41 /* capp */
94: .line 372
dload 39 /* capq */
dconst_1
dadd
dload 37 /* gnu */
dload 37 /* gnu */
dmul
dconst_1
dsub
dmul
ldc 0.125
dload 0 /* x */
ddiv
dmul
dstore 39 /* capq */
95: .line 373
aload 5 /* b */
iload 49 /* i */
iconst_1
isub
dload 20 /* xc */
dload 41 /* capp */
dload 35 /* vcos */
dmul
dload 39 /* capq */
dload 33 /* vsin */
dmul
dsub
dmul
dastore
96: .line 374
iload 4 /* nb */
iconst_1
if_icmpne 100
97: .line 375
new org.apache.commons.math3.special.BesselJ$BesselJResult
dup
aload 5 /* b */
aload 5 /* b */
arraylength
invokestatic org.apache.commons.math3.util.MathArrays.copyOf:([DI)[D
98: .line 376
iload 6 /* ncalc */
99: .line 375
invokespecial org.apache.commons.math3.special.BesselJ$BesselJResult.<init>:([DI)V
areturn
100: .line 378
StackMap locals:
StackMap stack:
dload 33 /* vsin */
dstore 29 /* t */
101: .line 379
dload 35 /* vcos */
dneg
dstore 33 /* vsin */
102: .line 380
dload 29 /* t */
dstore 35 /* vcos */
103: .line 381
dload 37 /* gnu */
ldc 2.0
dadd
dstore 37 /* gnu */
end local 50 // int k
104: .line 351
iinc 49 /* i */ 1
end local 47 // double xk
end local 45 // double t1
end local 43 // double s
end local 41 // double capp
end local 39 // double capq
StackMap locals: double double int double[] int double double int top top top top top top top top double double double int double double double double double double top top top top top top top top top top int
StackMap stack:
105: iload 49 /* i */
iconst_2
if_icmple 74
end local 49 // int i
106: .line 387
iload 4 /* nb */
iconst_2
if_icmple 284
107: .line 388
ldc 2.0
dload 2 /* alpha */
dmul
ldc 2.0
dadd
dstore 37 /* gnu */
108: .line 389
iconst_2
istore 49 /* j */
start local 49 // int j
109: goto 113
110: .line 390
StackMap locals:
StackMap stack:
aload 5 /* b */
iload 49 /* j */
dload 37 /* gnu */
aload 5 /* b */
iload 49 /* j */
iconst_1
isub
daload
dmul
dload 0 /* x */
ddiv
aload 5 /* b */
iload 49 /* j */
iconst_2
isub
daload
dsub
dastore
111: .line 391
dload 37 /* gnu */
ldc 2.0
dadd
dstore 37 /* gnu */
112: .line 389
iinc 49 /* j */ 1
StackMap locals:
StackMap stack:
113: iload 49 /* j */
iload 4 /* nb */
if_icmplt 110
end local 49 // int j
end local 37 // double gnu
end local 35 // double vcos
end local 33 // double vsin
end local 31 // double z
end local 29 // double t
end local 27 // double xm
end local 26 // int m
end local 24 // double xin
end local 22 // double mul
end local 20 // double xc
114: .line 394
goto 284
115: .line 399
StackMap locals: double double int double[] int double double int
StackMap stack:
iload 4 /* nb */
iload 11 /* magx */
isub
istore 20 /* nbmx */
start local 20 // int nbmx
116: .line 400
iload 11 /* magx */
iconst_1
iadd
istore 21 /* n */
start local 21 // int n
117: .line 401
iconst_0
istore 22 /* nstart */
start local 22 // int nstart
118: .line 402
iconst_0
istore 23 /* nend */
start local 23 // int nend
119: .line 403
ldc 2.0
iload 21 /* n */
i2d
dload 2 /* alpha */
dadd
dmul
dstore 24 /* en */
start local 24 // double en
120: .line 404
dconst_1
dstore 26 /* plast */
start local 26 // double plast
121: .line 405
dload 24 /* en */
dload 0 /* x */
ddiv
dstore 28 /* p */
start local 28 // double p
122: .line 410
ldc 2.0E16
dstore 32 /* test */
start local 32 // double test
123: .line 411
iconst_0
istore 34 /* readyToInitialize */
start local 34 // boolean readyToInitialize
124: .line 412
iload 20 /* nbmx */
iconst_3
if_icmplt 179
125: .line 417
ldc 1.0E292
dstore 18 /* tover */
start local 18 // double tover
126: .line 418
iload 11 /* magx */
iconst_2
iadd
istore 22 /* nstart */
127: .line 419
iload 4 /* nb */
iconst_1
isub
istore 23 /* nend */
128: .line 420
ldc 2.0
iload 22 /* nstart */
iconst_1
isub
i2d
dload 2 /* alpha */
dadd
dmul
dstore 24 /* en */
129: .line 423
iload 22 /* nstart */
istore 39 /* k */
start local 39 // int k
130: goto 172
131: .line 424
StackMap locals: double double int double[] int double double int top top top top top top double int int int int double double double top top double int top top top top int
StackMap stack:
iload 39 /* k */
istore 21 /* n */
132: .line 425
dload 24 /* en */
ldc 2.0
dadd
dstore 24 /* en */
133: .line 426
dload 26 /* plast */
dstore 30 /* pold */
start local 30 // double pold
134: .line 427
dload 28 /* p */
dstore 26 /* plast */
135: .line 428
dload 24 /* en */
dload 26 /* plast */
dmul
dload 0 /* x */
ddiv
dload 30 /* pold */
dsub
dstore 28 /* p */
136: .line 429
dload 28 /* p */
dload 18 /* tover */
dcmpl
ifle 171
137: .line 435
ldc 1.0E308
dstore 18 /* tover */
138: .line 436
dload 28 /* p */
dload 18 /* tover */
ddiv
dstore 28 /* p */
139: .line 437
dload 26 /* plast */
dload 18 /* tover */
ddiv
dstore 26 /* plast */
140: .line 438
dload 28 /* p */
dstore 35 /* psave */
start local 35 // double psave
141: .line 439
dload 26 /* plast */
dstore 37 /* psavel */
start local 37 // double psavel
142: .line 440
iload 21 /* n */
iconst_1
iadd
istore 22 /* nstart */
143: .line 442
StackMap locals: double double int double[] int double double int top top top top top top double int int int int double double double double double int double double int
StackMap stack:
iinc 21 /* n */ 1
144: .line 443
dload 24 /* en */
ldc 2.0
dadd
dstore 24 /* en */
145: .line 444
dload 26 /* plast */
dstore 30 /* pold */
146: .line 445
dload 28 /* p */
dstore 26 /* plast */
147: .line 446
dload 24 /* en */
dload 26 /* plast */
dmul
dload 0 /* x */
ddiv
dload 30 /* pold */
dsub
dstore 28 /* p */
148: .line 447
dload 28 /* p */
dconst_1
149: .line 441
dcmpg
ifle 143
150: .line 448
dload 24 /* en */
dload 0 /* x */
ddiv
dstore 14 /* tempb */
start local 14 // double tempb
151: .line 454
dload 30 /* pold */
dload 26 /* plast */
dmul
ldc 0.5
ldc 0.5
dload 14 /* tempb */
dload 14 /* tempb */
dmul
ddiv
dsub
dmul
dstore 32 /* test */
152: .line 455
dload 32 /* test */
ldc 1.0E16
ddiv
dstore 32 /* test */
153: .line 456
dload 26 /* plast */
dload 18 /* tover */
dmul
dstore 28 /* p */
154: .line 457
iinc 21 /* n */ -1
155: .line 458
dload 24 /* en */
ldc 2.0
dsub
dstore 24 /* en */
156: .line 459
iload 4 /* nb */
iload 21 /* n */
invokestatic org.apache.commons.math3.util.FastMath.min:(II)I
istore 23 /* nend */
157: .line 460
iload 22 /* nstart */
istore 40 /* l */
start local 40 // int l
158: goto 167
159: .line 461
StackMap locals: double double int double[] int double double int top top double top top double int int int int double double double double double int double double int int
StackMap stack:
dload 37 /* psavel */
dstore 30 /* pold */
160: .line 462
dload 35 /* psave */
dstore 37 /* psavel */
161: .line 463
dload 24 /* en */
dload 37 /* psavel */
dmul
dload 0 /* x */
ddiv
dload 30 /* pold */
dsub
dstore 35 /* psave */
162: .line 464
dload 35 /* psave */
dload 37 /* psavel */
dmul
dload 32 /* test */
dcmpl
ifle 166
163: .line 465
iload 40 /* l */
iconst_1
isub
istore 6 /* ncalc */
164: .line 466
iconst_1
istore 34 /* readyToInitialize */
165: .line 467
goto 168
166: .line 460
StackMap locals:
StackMap stack:
iinc 40 /* l */ 1
StackMap locals:
StackMap stack:
167: iload 40 /* l */
iload 23 /* nend */
if_icmple 159
end local 40 // int l
168: .line 470
StackMap locals:
StackMap stack:
iload 23 /* nend */
istore 6 /* ncalc */
169: .line 471
iconst_1
istore 34 /* readyToInitialize */
170: .line 472
goto 173
end local 37 // double psavel
end local 35 // double psave
end local 14 // double tempb
171: .line 423
StackMap locals: double double int double[] int double double int top top top top top top double int int int int double double double double double int top top top top int
StackMap stack:
iinc 39 /* k */ 1
end local 30 // double pold
StackMap locals: double double int double[] int double double int top top top top top top double int int int int double double double top top double int top top top top int
StackMap stack:
172: iload 39 /* k */
iload 23 /* nend */
if_icmple 131
end local 39 // int k
173: .line 475
StackMap locals: double double int double[] int double double int top top top top top top double int int int int double double double top top double int
StackMap stack:
iload 34 /* readyToInitialize */
ifne 179
174: .line 476
iload 23 /* nend */
istore 21 /* n */
175: .line 477
ldc 2.0
iload 21 /* n */
i2d
dload 2 /* alpha */
dadd
dmul
dstore 24 /* en */
176: .line 481
dload 32 /* test */
dload 26 /* plast */
ldc 1.0E16
dmul
invokestatic org.apache.commons.math3.util.FastMath.sqrt:(D)D
177: .line 482
ldc 2.0
dload 28 /* p */
dmul
invokestatic org.apache.commons.math3.util.FastMath.sqrt:(D)D
dmul
178: .line 481
invokestatic org.apache.commons.math3.util.FastMath.max:(DD)D
dstore 32 /* test */
end local 18 // double tover
179: .line 488
StackMap locals: double double int double[] int double double int top top top top top top top top int int int int double double double top top double int
StackMap stack:
iload 34 /* readyToInitialize */
ifne 187
180: .line 490
StackMap locals:
StackMap stack:
iinc 21 /* n */ 1
181: .line 491
dload 24 /* en */
ldc 2.0
dadd
dstore 24 /* en */
182: .line 492
dload 26 /* plast */
dstore 30 /* pold */
start local 30 // double pold
183: .line 493
dload 28 /* p */
dstore 26 /* plast */
184: .line 494
dload 24 /* en */
dload 26 /* plast */
dmul
dload 0 /* x */
ddiv
dload 30 /* pold */
dsub
dstore 28 /* p */
185: .line 495
dload 28 /* p */
dload 32 /* test */
186: .line 489
dcmpg
iflt 180
end local 30 // double pold
187: .line 500
StackMap locals:
StackMap stack:
iinc 21 /* n */ 1
188: .line 501
dload 24 /* en */
ldc 2.0
dadd
dstore 24 /* en */
189: .line 502
dconst_0
dstore 14 /* tempb */
start local 14 // double tempb
190: .line 503
dconst_1
dload 28 /* p */
ddiv
dstore 12 /* tempa */
start local 12 // double tempa
191: .line 504
iconst_2
iload 21 /* n */
imul
iconst_4
iload 21 /* n */
iconst_2
idiv
imul
isub
istore 35 /* m */
start local 35 // int m
192: .line 505
dconst_0
dstore 36 /* sum */
start local 36 // double sum
193: .line 506
iload 21 /* n */
iconst_2
idiv
i2d
dstore 38 /* em */
start local 38 // double em
194: .line 507
dload 38 /* em */
dconst_1
dsub
dload 2 /* alpha */
dadd
dstore 7 /* alpem */
195: .line 508
ldc 2.0
dload 38 /* em */
dmul
dload 2 /* alpha */
dadd
dstore 9 /* alp2em */
196: .line 509
iload 35 /* m */
ifeq 198
197: .line 510
dload 12 /* tempa */
dload 7 /* alpem */
dmul
dload 9 /* alp2em */
dmul
dload 38 /* em */
ddiv
dstore 36 /* sum */
198: .line 512
StackMap locals: double double int double[] int double double int double double top top top top int int int int double double double top top double int int double double
StackMap stack:
iload 21 /* n */
iload 4 /* nb */
isub
istore 23 /* nend */
199: .line 514
iconst_0
istore 40 /* readyToNormalize */
start local 40 // boolean readyToNormalize
200: .line 515
iconst_0
istore 41 /* calculatedB0 */
start local 41 // boolean calculatedB0
201: .line 521
iconst_1
istore 42 /* l */
start local 42 // int l
202: goto 219
203: .line 522
StackMap locals: int int int
StackMap stack:
iinc 21 /* n */ -1
204: .line 523
dload 24 /* en */
ldc 2.0
dsub
dstore 24 /* en */
205: .line 524
dload 14 /* tempb */
dstore 16 /* tempc */
start local 16 // double tempc
206: .line 525
dload 12 /* tempa */
dstore 14 /* tempb */
207: .line 526
dload 24 /* en */
dload 14 /* tempb */
dmul
dload 0 /* x */
ddiv
dload 16 /* tempc */
dsub
dstore 12 /* tempa */
208: .line 527
iconst_2
iload 35 /* m */
isub
istore 35 /* m */
209: .line 528
iload 35 /* m */
ifeq 218
210: .line 529
dload 38 /* em */
dconst_1
dsub
dstore 38 /* em */
211: .line 530
ldc 2.0
dload 38 /* em */
dmul
dload 2 /* alpha */
dadd
dstore 9 /* alp2em */
212: .line 531
iload 21 /* n */
iconst_1
if_icmpne 214
213: .line 532
goto 220
214: .line 534
StackMap locals: double double int double[] int double double int double double double top top int int int int double double double top top double int int double double int int int
StackMap stack:
dload 38 /* em */
dconst_1
dsub
dload 2 /* alpha */
dadd
dstore 7 /* alpem */
215: .line 535
dload 7 /* alpem */
dconst_0
dcmpl
ifne 217
216: .line 536
dconst_1
dstore 7 /* alpem */
217: .line 538
StackMap locals:
StackMap stack:
dload 36 /* sum */
dload 12 /* tempa */
dload 9 /* alp2em */
dmul
dadd
dload 7 /* alpem */
dmul
dload 38 /* em */
ddiv
dstore 36 /* sum */
218: .line 521
StackMap locals:
StackMap stack:
iinc 42 /* l */ 1
end local 16 // double tempc
StackMap locals: double double int double[] int double double int double double top top top top int int int int double double double top top double int int double double int int int
StackMap stack:
219: iload 42 /* l */
iload 23 /* nend */
if_icmple 203
end local 42 // int l
220: .line 545
StackMap locals:
StackMap stack:
aload 5 /* b */
iload 21 /* n */
iconst_1
isub
dload 12 /* tempa */
dastore
221: .line 546
iload 23 /* nend */
iflt 243
222: .line 547
iload 4 /* nb */
iconst_1
if_icmpgt 229
223: .line 548
dload 2 /* alpha */
dstore 9 /* alp2em */
224: .line 549
dload 2 /* alpha */
dconst_1
dadd
dconst_1
dcmpl
ifne 226
225: .line 550
dconst_1
dstore 9 /* alp2em */
226: .line 552
StackMap locals:
StackMap stack:
dload 36 /* sum */
aload 5 /* b */
iconst_0
daload
dload 9 /* alp2em */
dmul
dadd
dstore 36 /* sum */
227: .line 553
iconst_1
istore 40 /* readyToNormalize */
228: .line 554
goto 243
229: .line 558
StackMap locals:
StackMap stack:
iinc 21 /* n */ -1
230: .line 559
dload 24 /* en */
ldc 2.0
dsub
dstore 24 /* en */
231: .line 560
aload 5 /* b */
iload 21 /* n */
iconst_1
isub
dload 24 /* en */
dload 12 /* tempa */
dmul
dload 0 /* x */
ddiv
dload 14 /* tempb */
dsub
dastore
232: .line 561
iload 21 /* n */
iconst_1
if_icmpne 235
233: .line 562
iconst_1
istore 41 /* calculatedB0 */
234: .line 563
goto 243
235: .line 564
StackMap locals:
StackMap stack:
iconst_2
iload 35 /* m */
isub
istore 35 /* m */
236: .line 565
iload 35 /* m */
ifeq 243
237: .line 566
dload 38 /* em */
dconst_1
dsub
dstore 38 /* em */
238: .line 567
ldc 2.0
dload 38 /* em */
dmul
dload 2 /* alpha */
dadd
dstore 9 /* alp2em */
239: .line 568
dload 38 /* em */
dconst_1
dsub
dload 2 /* alpha */
dadd
dstore 7 /* alpem */
240: .line 569
dload 7 /* alpem */
dconst_0
dcmpl
ifne 242
241: .line 570
dconst_1
dstore 7 /* alpem */
242: .line 573
StackMap locals:
StackMap stack:
dload 36 /* sum */
aload 5 /* b */
iload 21 /* n */
iconst_1
isub
daload
dload 9 /* alp2em */
dmul
dadd
dload 7 /* alpem */
dmul
dload 38 /* em */
ddiv
dstore 36 /* sum */
243: .line 578
StackMap locals:
StackMap stack:
iload 40 /* readyToNormalize */
ifne 261
iload 41 /* calculatedB0 */
ifne 261
244: .line 579
iload 21 /* n */
iconst_2
isub
istore 23 /* nend */
245: .line 580
iload 23 /* nend */
ifeq 261
246: .line 586
iconst_1
istore 42 /* l */
start local 42 // int l
247: goto 260
248: .line 587
StackMap locals: int
StackMap stack:
iinc 21 /* n */ -1
249: .line 588
dload 24 /* en */
ldc 2.0
dsub
dstore 24 /* en */
250: .line 589
aload 5 /* b */
iload 21 /* n */
iconst_1
isub
dload 24 /* en */
aload 5 /* b */
iload 21 /* n */
daload
dmul
dload 0 /* x */
ddiv
aload 5 /* b */
iload 21 /* n */
iconst_1
iadd
daload
dsub
dastore
251: .line 590
iconst_2
iload 35 /* m */
isub
istore 35 /* m */
252: .line 591
iload 35 /* m */
ifeq 259
253: .line 592
dload 38 /* em */
dconst_1
dsub
dstore 38 /* em */
254: .line 593
ldc 2.0
dload 38 /* em */
dmul
dload 2 /* alpha */
dadd
dstore 9 /* alp2em */
255: .line 594
dload 38 /* em */
dconst_1
dsub
dload 2 /* alpha */
dadd
dstore 7 /* alpem */
256: .line 595
dload 7 /* alpem */
dconst_0
dcmpl
ifne 258
257: .line 596
dconst_1
dstore 7 /* alpem */
258: .line 599
StackMap locals:
StackMap stack:
dload 36 /* sum */
aload 5 /* b */
iload 21 /* n */
iconst_1
isub
daload
dload 9 /* alp2em */
dmul
dadd
dload 7 /* alpem */
dmul
dload 38 /* em */
ddiv
dstore 36 /* sum */
259: .line 586
StackMap locals:
StackMap stack:
iinc 42 /* l */ 1
StackMap locals:
StackMap stack:
260: iload 42 /* l */
iload 23 /* nend */
if_icmple 248
end local 42 // int l
261: .line 607
StackMap locals:
StackMap stack:
iload 40 /* readyToNormalize */
ifne 269
262: .line 608
iload 41 /* calculatedB0 */
ifne 264
263: .line 609
aload 5 /* b */
iconst_0
ldc 2.0
dload 2 /* alpha */
dconst_1
dadd
dmul
aload 5 /* b */
iconst_1
daload
dmul
dload 0 /* x */
ddiv
aload 5 /* b */
iconst_2
daload
dsub
dastore
264: .line 611
StackMap locals:
StackMap stack:
dload 38 /* em */
dconst_1
dsub
dstore 38 /* em */
265: .line 612
ldc 2.0
dload 38 /* em */
dmul
dload 2 /* alpha */
dadd
dstore 9 /* alp2em */
266: .line 613
dload 9 /* alp2em */
dconst_0
dcmpl
ifne 268
267: .line 614
dconst_1
dstore 9 /* alp2em */
268: .line 616
StackMap locals:
StackMap stack:
dload 36 /* sum */
aload 5 /* b */
iconst_0
daload
dload 9 /* alp2em */
dmul
dadd
dstore 36 /* sum */
269: .line 622
StackMap locals:
StackMap stack:
dload 2 /* alpha */
invokestatic org.apache.commons.math3.util.FastMath.abs:(D)D
ldc 1.0E-16
dcmpl
ifle 271
270: .line 623
dload 36 /* sum */
dload 2 /* alpha */
invokestatic org.apache.commons.math3.special.Gamma.gamma:(D)D
dload 0 /* x */
ldc 0.5
dmul
dload 2 /* alpha */
dneg
invokestatic org.apache.commons.math3.util.FastMath.pow:(DD)D
dmul
dmul
dstore 36 /* sum */
271: .line 625
StackMap locals:
StackMap stack:
ldc 8.9E-308
dstore 12 /* tempa */
272: .line 626
dload 36 /* sum */
dconst_1
dcmpl
ifle 274
273: .line 627
dload 12 /* tempa */
dload 36 /* sum */
dmul
dstore 12 /* tempa */
274: .line 630
StackMap locals:
StackMap stack:
iconst_0
istore 21 /* n */
goto 279
275: .line 631
StackMap locals:
StackMap stack:
aload 5 /* b */
iload 21 /* n */
daload
invokestatic org.apache.commons.math3.util.FastMath.abs:(D)D
dload 12 /* tempa */
dcmpg
ifge 277
276: .line 632
aload 5 /* b */
iload 21 /* n */
dconst_0
dastore
277: .line 634
StackMap locals:
StackMap stack:
aload 5 /* b */
iload 21 /* n */
dup2
daload
dload 36 /* sum */
ddiv
dastore
278: .line 630
iinc 21 /* n */ 1
StackMap locals:
StackMap stack:
279: iload 21 /* n */
iload 4 /* nb */
if_icmplt 275
end local 41 // boolean calculatedB0
end local 40 // boolean readyToNormalize
end local 38 // double em
end local 36 // double sum
end local 35 // int m
end local 34 // boolean readyToInitialize
end local 32 // double test
end local 28 // double p
end local 26 // double plast
end local 24 // double en
end local 23 // int nend
end local 22 // int nstart
end local 21 // int n
end local 20 // int nbmx
end local 14 // double tempb
end local 12 // double tempa
280: .line 640
goto 284
281: .line 641
StackMap locals: double double int double[] int double double int
StackMap stack:
aload 5 /* b */
arraylength
ifle 283
282: .line 642
aload 5 /* b */
iconst_0
dconst_0
dastore
283: .line 644
StackMap locals:
StackMap stack:
iload 4 /* nb */
iconst_0
invokestatic org.apache.commons.math3.util.FastMath.min:(II)I
iconst_1
isub
istore 6 /* ncalc */
284: .line 646
StackMap locals:
StackMap stack:
new org.apache.commons.math3.special.BesselJ$BesselJResult
dup
aload 5 /* b */
aload 5 /* b */
arraylength
invokestatic org.apache.commons.math3.util.MathArrays.copyOf:([DI)[D
iload 6 /* ncalc */
invokespecial org.apache.commons.math3.special.BesselJ$BesselJResult.<init>:([DI)V
areturn
end local 11 // int magx
end local 9 // double alp2em
end local 7 // double alpem
end local 6 // int ncalc
end local 5 // double[] b
end local 4 // int nb
end local 2 // double alpha
end local 0 // double x
LocalVariableTable:
Start End Slot Name Signature
0 285 0 x D
0 285 2 alpha D
0 285 4 nb I
1 285 5 b [D
2 285 6 ncalc I
3 285 7 alpem D
4 285 9 alp2em D
5 285 11 magx I
9 13 12 i I
15 54 12 tempa D
191 280 12 tempa D
24 54 14 tempb D
151 171 14 tempb D
190 280 14 tempb D
38 53 16 tempc D
206 219 16 tempc D
41 53 18 tover D
126 179 18 tover D
17 53 20 halfx D
32 36 22 n I
42 53 22 n I
56 114 20 xc D
57 114 22 mul D
58 114 24 xin D
59 114 26 m I
67 114 27 xm D
68 114 29 t D
69 114 31 z D
70 114 33 vsin D
71 114 35 vcos D
72 114 37 gnu D
79 105 39 capq D
77 105 41 capp D
75 105 43 s D
78 105 45 t1 D
80 105 47 xk D
73 106 49 i I
81 104 50 k I
83 93 51 j I
109 114 49 j I
116 280 20 nbmx I
117 280 21 n I
118 280 22 nstart I
119 280 23 nend I
120 280 24 en D
121 280 26 plast D
122 280 28 p D
134 172 30 pold D
183 187 30 pold D
123 280 32 test D
124 280 34 readyToInitialize Z
141 171 35 psave D
142 171 37 psavel D
130 173 39 k I
158 168 40 l I
192 280 35 m I
193 280 36 sum D
194 280 38 em D
200 280 40 readyToNormalize Z
201 280 41 calculatedB0 Z
202 220 42 l I
247 261 42 l I
MethodParameters:
Name Flags
x
alpha
nb
}
SourceFile: "BesselJ.java"
NestMembers:
org.apache.commons.math3.special.BesselJ$BesselJResult
InnerClasses:
public BesselJResult = org.apache.commons.math3.special.BesselJ$BesselJResult of org.apache.commons.math3.special.BesselJ