final class org.apache.commons.math3.distribution.BetaDistribution$ChengBetaSampler
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: org.apache.commons.math3.distribution.BetaDistribution$ChengBetaSampler
super_class: java.lang.Object
{
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 // org.apache.commons.math3.distribution.BetaDistribution$ChengBetaSampler this
0: .line 293
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // org.apache.commons.math3.distribution.BetaDistribution$ChengBetaSampler this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/math3/distribution/BetaDistribution$ChengBetaSampler;
static double sample(org.apache.commons.math3.random.RandomGenerator, double, double);
descriptor: (Lorg/apache/commons/math3/random/RandomGenerator;DD)D
flags: (0x0008) ACC_STATIC
Code:
stack=7, locals=9, args_size=3
start local 0 // org.apache.commons.math3.random.RandomGenerator random
start local 1 // double alpha
start local 3 // double beta
0: .line 303
dload 1 /* alpha */
dload 3 /* beta */
invokestatic org.apache.commons.math3.util.FastMath.min:(DD)D
dstore 5 /* a */
start local 5 // double a
1: .line 304
dload 1 /* alpha */
dload 3 /* beta */
invokestatic org.apache.commons.math3.util.FastMath.max:(DD)D
dstore 7 /* b */
start local 7 // double b
2: .line 306
dload 5 /* a */
dconst_1
dcmpl
ifle 4
3: .line 307
aload 0 /* random */
dload 1 /* alpha */
dload 5 /* a */
dload 7 /* b */
invokestatic org.apache.commons.math3.distribution.BetaDistribution$ChengBetaSampler.algorithmBB:(Lorg/apache/commons/math3/random/RandomGenerator;DDD)D
dreturn
4: .line 309
StackMap locals: double double
StackMap stack:
aload 0 /* random */
dload 1 /* alpha */
dload 7 /* b */
dload 5 /* a */
invokestatic org.apache.commons.math3.distribution.BetaDistribution$ChengBetaSampler.algorithmBC:(Lorg/apache/commons/math3/random/RandomGenerator;DDD)D
dreturn
end local 7 // double b
end local 5 // double a
end local 3 // double beta
end local 1 // double alpha
end local 0 // org.apache.commons.math3.random.RandomGenerator random
LocalVariableTable:
Start End Slot Name Signature
0 5 0 random Lorg/apache/commons/math3/random/RandomGenerator;
0 5 1 alpha D
0 5 3 beta D
1 5 5 a D
2 5 7 b D
MethodParameters:
Name Flags
random
alpha final
beta final
private static double algorithmBB(org.apache.commons.math3.random.RandomGenerator, double, double, double);
descriptor: (Lorg/apache/commons/math3/random/RandomGenerator;DDD)D
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=10, locals=29, args_size=4
start local 0 // org.apache.commons.math3.random.RandomGenerator random
start local 1 // double a0
start local 3 // double a
start local 5 // double b
0: .line 325
dload 3 /* a */
dload 5 /* b */
dadd
dstore 7 /* alpha */
start local 7 // double alpha
1: .line 326
dload 7 /* alpha */
ldc 2.0
dsub
ldc 2.0
dload 3 /* a */
dmul
dload 5 /* b */
dmul
dload 7 /* alpha */
dsub
ddiv
invokestatic org.apache.commons.math3.util.FastMath.sqrt:(D)D
dstore 9 /* beta */
start local 9 // double beta
2: .line 327
dload 3 /* a */
dconst_1
dload 9 /* beta */
ddiv
dadd
dstore 11 /* gamma */
start local 11 // double gamma
3: .line 333
StackMap locals: double double double
StackMap stack:
aload 0 /* random */
invokeinterface org.apache.commons.math3.random.RandomGenerator.nextDouble:()D
dstore 19 /* u1 */
start local 19 // double u1
4: .line 334
aload 0 /* random */
invokeinterface org.apache.commons.math3.random.RandomGenerator.nextDouble:()D
dstore 21 /* u2 */
start local 21 // double u2
5: .line 335
dload 9 /* beta */
dload 19 /* u1 */
invokestatic org.apache.commons.math3.util.FastMath.log:(D)D
dload 19 /* u1 */
dneg
invokestatic org.apache.commons.math3.util.FastMath.log1p:(D)D
dsub
dmul
dstore 23 /* v */
start local 23 // double v
6: .line 336
dload 3 /* a */
dload 23 /* v */
invokestatic org.apache.commons.math3.util.FastMath.exp:(D)D
dmul
dstore 15 /* w */
start local 15 // double w
7: .line 337
dload 19 /* u1 */
dload 19 /* u1 */
dmul
dload 21 /* u2 */
dmul
dstore 25 /* z */
start local 25 // double z
8: .line 338
dload 11 /* gamma */
dload 23 /* v */
dmul
ldc 1.3862944
dsub
dstore 13 /* r */
start local 13 // double r
9: .line 339
dload 3 /* a */
dload 13 /* r */
dadd
dload 15 /* w */
dsub
dstore 27 /* s */
start local 27 // double s
10: .line 340
dload 27 /* s */
ldc 2.609438
dadd
ldc 5.0
dload 25 /* z */
dmul
dcmpl
iflt 12
11: .line 341
goto 17
12: .line 344
StackMap locals: org.apache.commons.math3.random.RandomGenerator double double double double double double double double top top double double double double double
StackMap stack:
dload 25 /* z */
invokestatic org.apache.commons.math3.util.FastMath.log:(D)D
dstore 17 /* t */
start local 17 // double t
13: .line 345
dload 27 /* s */
dload 17 /* t */
dcmpl
iflt 15
14: .line 346
goto 17
end local 27 // double s
end local 25 // double z
end local 23 // double v
end local 21 // double u2
end local 19 // double u1
15: .line 348
StackMap locals: org.apache.commons.math3.random.RandomGenerator double double double double double double double double double
StackMap stack:
dload 13 /* r */
dload 7 /* alpha */
dload 7 /* alpha */
invokestatic org.apache.commons.math3.util.FastMath.log:(D)D
dload 5 /* b */
dload 15 /* w */
dadd
invokestatic org.apache.commons.math3.util.FastMath.log:(D)D
dsub
dmul
dadd
dload 17 /* t */
16: .line 332
dcmpg
iflt 3
end local 17 // double t
17: .line 350
StackMap locals:
StackMap stack:
dload 15 /* w */
ldc 1.7976931348623157E308
invokestatic org.apache.commons.math3.util.FastMath.min:(DD)D
dstore 15 /* w */
18: .line 351
dload 3 /* a */
dload 1 /* a0 */
invokestatic org.apache.commons.math3.util.Precision.equals:(DD)Z
ifeq 19
dload 15 /* w */
dload 5 /* b */
dload 15 /* w */
dadd
ddiv
goto 20
StackMap locals:
StackMap stack:
19: dload 5 /* b */
dload 5 /* b */
dload 15 /* w */
dadd
ddiv
StackMap locals:
StackMap stack: double
20: dreturn
end local 15 // double w
end local 13 // double r
end local 11 // double gamma
end local 9 // double beta
end local 7 // double alpha
end local 5 // double b
end local 3 // double a
end local 1 // double a0
end local 0 // org.apache.commons.math3.random.RandomGenerator random
LocalVariableTable:
Start End Slot Name Signature
0 21 0 random Lorg/apache/commons/math3/random/RandomGenerator;
0 21 1 a0 D
0 21 3 a D
0 21 5 b D
1 21 7 alpha D
2 21 9 beta D
3 21 11 gamma D
9 21 13 r D
7 21 15 w D
13 17 17 t D
4 15 19 u1 D
5 15 21 u2 D
6 15 23 v D
8 15 25 z D
10 15 27 s D
MethodParameters:
Name Flags
random
a0 final
a final
b final
private static double algorithmBC(org.apache.commons.math3.random.RandomGenerator, double, double, double);
descriptor: (Lorg/apache/commons/math3/random/RandomGenerator;DDD)D
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=8, locals=29, args_size=4
start local 0 // org.apache.commons.math3.random.RandomGenerator random
start local 1 // double a0
start local 3 // double a
start local 5 // double b
0: .line 366
dload 3 /* a */
dload 5 /* b */
dadd
dstore 7 /* alpha */
start local 7 // double alpha
1: .line 367
dconst_1
dload 5 /* b */
ddiv
dstore 9 /* beta */
start local 9 // double beta
2: .line 368
dconst_1
dload 3 /* a */
dadd
dload 5 /* b */
dsub
dstore 11 /* delta */
start local 11 // double delta
3: .line 369
dload 11 /* delta */
ldc 0.0138889
ldc 0.0416667
dload 5 /* b */
dmul
dadd
dmul
dload 3 /* a */
dload 9 /* beta */
dmul
ldc 0.777778
dsub
ddiv
dstore 13 /* k1 */
start local 13 // double k1
4: .line 370
ldc 0.25
ldc 0.5
ldc 0.25
dload 11 /* delta */
ddiv
dadd
dload 5 /* b */
dmul
dadd
dstore 15 /* k2 */
start local 15 // double k2
5: .line 374
StackMap locals: org.apache.commons.math3.random.RandomGenerator double double double double double double double double
StackMap stack:
aload 0 /* random */
invokeinterface org.apache.commons.math3.random.RandomGenerator.nextDouble:()D
dstore 19 /* u1 */
start local 19 // double u1
6: .line 375
aload 0 /* random */
invokeinterface org.apache.commons.math3.random.RandomGenerator.nextDouble:()D
dstore 21 /* u2 */
start local 21 // double u2
7: .line 376
dload 19 /* u1 */
dload 21 /* u2 */
dmul
dstore 23 /* y */
start local 23 // double y
8: .line 377
dload 19 /* u1 */
dload 23 /* y */
dmul
dstore 25 /* z */
start local 25 // double z
9: .line 378
dload 19 /* u1 */
ldc 0.5
dcmpg
ifge 12
10: .line 379
ldc 0.25
dload 21 /* u2 */
dmul
dload 25 /* z */
dadd
dload 23 /* y */
dsub
dload 13 /* k1 */
dcmpl
iflt 18
11: .line 380
goto 5
12: .line 383
StackMap locals: org.apache.commons.math3.random.RandomGenerator double double double double double double double double top top double double double double
StackMap stack:
dload 25 /* z */
ldc 0.25
dcmpg
ifgt 16
13: .line 384
dload 9 /* beta */
dload 19 /* u1 */
invokestatic org.apache.commons.math3.util.FastMath.log:(D)D
dload 19 /* u1 */
dneg
invokestatic org.apache.commons.math3.util.FastMath.log1p:(D)D
dsub
dmul
dstore 27 /* v */
start local 27 // double v
14: .line 385
dload 3 /* a */
dload 27 /* v */
invokestatic org.apache.commons.math3.util.FastMath.exp:(D)D
dmul
dstore 17 /* w */
start local 17 // double w
15: .line 386
goto 21
end local 27 // double v
end local 17 // double w
16: .line 389
StackMap locals:
StackMap stack:
dload 25 /* z */
dload 15 /* k2 */
dcmpl
iflt 18
17: .line 390
goto 5
18: .line 394
StackMap locals:
StackMap stack:
dload 9 /* beta */
dload 19 /* u1 */
invokestatic org.apache.commons.math3.util.FastMath.log:(D)D
dload 19 /* u1 */
dneg
invokestatic org.apache.commons.math3.util.FastMath.log1p:(D)D
dsub
dmul
dstore 27 /* v */
start local 27 // double v
19: .line 395
dload 3 /* a */
dload 27 /* v */
invokestatic org.apache.commons.math3.util.FastMath.exp:(D)D
dmul
dstore 17 /* w */
start local 17 // double w
20: .line 396
dload 7 /* alpha */
dload 7 /* alpha */
invokestatic org.apache.commons.math3.util.FastMath.log:(D)D
dload 5 /* b */
dload 17 /* w */
dadd
invokestatic org.apache.commons.math3.util.FastMath.log:(D)D
dsub
dload 27 /* v */
dadd
dmul
ldc 1.3862944
dsub
dload 25 /* z */
invokestatic org.apache.commons.math3.util.FastMath.log:(D)D
dcmpl
iflt 5
end local 27 // double v
end local 25 // double z
end local 23 // double y
end local 21 // double u2
end local 19 // double u1
21: .line 401
StackMap locals: org.apache.commons.math3.random.RandomGenerator double double double double double double double double double
StackMap stack:
dload 17 /* w */
ldc 1.7976931348623157E308
invokestatic org.apache.commons.math3.util.FastMath.min:(DD)D
dstore 17 /* w */
22: .line 402
dload 3 /* a */
dload 1 /* a0 */
invokestatic org.apache.commons.math3.util.Precision.equals:(DD)Z
ifeq 23
dload 17 /* w */
dload 5 /* b */
dload 17 /* w */
dadd
ddiv
goto 24
StackMap locals:
StackMap stack:
23: dload 5 /* b */
dload 5 /* b */
dload 17 /* w */
dadd
ddiv
StackMap locals:
StackMap stack: double
24: dreturn
end local 17 // double w
end local 15 // double k2
end local 13 // double k1
end local 11 // double delta
end local 9 // double beta
end local 7 // double alpha
end local 5 // double b
end local 3 // double a
end local 1 // double a0
end local 0 // org.apache.commons.math3.random.RandomGenerator random
LocalVariableTable:
Start End Slot Name Signature
0 25 0 random Lorg/apache/commons/math3/random/RandomGenerator;
0 25 1 a0 D
0 25 3 a D
0 25 5 b D
1 25 7 alpha D
2 25 9 beta D
3 25 11 delta D
4 25 13 k1 D
5 25 15 k2 D
15 16 17 w D
20 25 17 w D
6 21 19 u1 D
7 21 21 u2 D
8 21 23 y D
9 21 25 z D
14 16 27 v D
19 21 27 v D
MethodParameters:
Name Flags
random
a0 final
a final
b final
}
SourceFile: "BetaDistribution.java"
NestHost: org.apache.commons.math3.distribution.BetaDistribution
InnerClasses:
private final ChengBetaSampler = org.apache.commons.math3.distribution.BetaDistribution$ChengBetaSampler of org.apache.commons.math3.distribution.BetaDistribution