public class org.apache.commons.math3.analysis.integration.gauss.LegendreRuleFactory extends org.apache.commons.math3.analysis.integration.gauss.BaseRuleFactory<java.lang.Double>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.commons.math3.analysis.integration.gauss.LegendreRuleFactory
super_class: org.apache.commons.math3.analysis.integration.gauss.BaseRuleFactory
{
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // org.apache.commons.math3.analysis.integration.gauss.LegendreRuleFactory this
0: .line 32
aload 0 /* this */
invokespecial org.apache.commons.math3.analysis.integration.gauss.BaseRuleFactory.<init>:()V
return
end local 0 // org.apache.commons.math3.analysis.integration.gauss.LegendreRuleFactory this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/math3/analysis/integration/gauss/LegendreRuleFactory;
protected org.apache.commons.math3.util.Pair<java.lang.Double[], java.lang.Double[]> computeRule(int);
descriptor: (I)Lorg/apache/commons/math3/util/Pair;
flags: (0x0004) ACC_PROTECTED
Code:
stack=8, locals=31, args_size=2
start local 0 // org.apache.commons.math3.analysis.integration.gauss.LegendreRuleFactory this
start local 1 // int numberOfPoints
0: .line 38
iload 1 /* numberOfPoints */
iconst_1
if_icmpne 4
1: .line 40
new org.apache.commons.math3.util.Pair
dup
iconst_1
anewarray java.lang.Double
dup
iconst_0
dconst_0
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aastore
2: .line 41
iconst_1
anewarray java.lang.Double
dup
iconst_0
ldc 2.0
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aastore
3: .line 40
invokespecial org.apache.commons.math3.util.Pair.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
areturn
4: .line 47
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 1 /* numberOfPoints */
iconst_1
isub
invokevirtual org.apache.commons.math3.analysis.integration.gauss.LegendreRuleFactory.getRuleInternal:(I)Lorg/apache/commons/math3/util/Pair;
invokevirtual org.apache.commons.math3.util.Pair.getFirst:()Ljava/lang/Object;
checkcast java.lang.Double[]
astore 2 /* previousPoints */
start local 2 // java.lang.Double[] previousPoints
5: .line 50
iload 1 /* numberOfPoints */
anewarray java.lang.Double
astore 3 /* points */
start local 3 // java.lang.Double[] points
6: .line 51
iload 1 /* numberOfPoints */
anewarray java.lang.Double
astore 4 /* weights */
start local 4 // java.lang.Double[] weights
7: .line 54
iload 1 /* numberOfPoints */
iconst_2
idiv
istore 5 /* iMax */
start local 5 // int iMax
8: .line 55
iconst_0
istore 6 /* i */
start local 6 // int i
9: goto 68
10: .line 57
StackMap locals: org.apache.commons.math3.analysis.integration.gauss.LegendreRuleFactory int java.lang.Double[] java.lang.Double[] java.lang.Double[] int int
StackMap stack:
iload 6 /* i */
ifne 11
ldc -1.0
goto 12
StackMap locals:
StackMap stack:
11: aload 2 /* previousPoints */
iload 6 /* i */
iconst_1
isub
aaload
invokevirtual java.lang.Double.doubleValue:()D
StackMap locals:
StackMap stack: double
12: dstore 7 /* a */
start local 7 // double a
13: .line 59
iload 5 /* iMax */
iconst_1
if_icmpne 14
dconst_1
goto 15
StackMap locals: double
StackMap stack:
14: aload 2 /* previousPoints */
iload 6 /* i */
aaload
invokevirtual java.lang.Double.doubleValue:()D
StackMap locals:
StackMap stack: double
15: dstore 9 /* b */
start local 9 // double b
16: .line 61
dconst_1
dstore 11 /* pma */
start local 11 // double pma
17: .line 63
dload 7 /* a */
dstore 13 /* pa */
start local 13 // double pa
18: .line 65
dconst_1
dstore 15 /* pmb */
start local 15 // double pmb
19: .line 67
dload 9 /* b */
dstore 17 /* pb */
start local 17 // double pb
20: .line 68
iconst_1
istore 19 /* j */
start local 19 // int j
21: goto 31
22: .line 69
StackMap locals: org.apache.commons.math3.analysis.integration.gauss.LegendreRuleFactory int java.lang.Double[] java.lang.Double[] java.lang.Double[] int int double double double double double double int
StackMap stack:
iconst_2
iload 19 /* j */
imul
iconst_1
iadd
istore 20 /* two_j_p_1 */
start local 20 // int two_j_p_1
23: .line 70
iload 19 /* j */
iconst_1
iadd
istore 21 /* j_p_1 */
start local 21 // int j_p_1
24: .line 72
iload 20 /* two_j_p_1 */
i2d
dload 7 /* a */
dmul
dload 13 /* pa */
dmul
iload 19 /* j */
i2d
dload 11 /* pma */
dmul
dsub
iload 21 /* j_p_1 */
i2d
ddiv
dstore 22 /* ppa */
start local 22 // double ppa
25: .line 74
iload 20 /* two_j_p_1 */
i2d
dload 9 /* b */
dmul
dload 17 /* pb */
dmul
iload 19 /* j */
i2d
dload 15 /* pmb */
dmul
dsub
iload 21 /* j_p_1 */
i2d
ddiv
dstore 24 /* ppb */
start local 24 // double ppb
26: .line 75
dload 13 /* pa */
dstore 11 /* pma */
27: .line 76
dload 22 /* ppa */
dstore 13 /* pa */
28: .line 77
dload 17 /* pb */
dstore 15 /* pmb */
29: .line 78
dload 24 /* ppb */
dstore 17 /* pb */
end local 24 // double ppb
end local 22 // double ppa
end local 21 // int j_p_1
end local 20 // int two_j_p_1
30: .line 68
iinc 19 /* j */ 1
StackMap locals:
StackMap stack:
31: iload 19 /* j */
iload 1 /* numberOfPoints */
if_icmplt 22
end local 19 // int j
32: .line 82
ldc 0.5
dload 7 /* a */
dload 9 /* b */
dadd
dmul
dstore 19 /* c */
start local 19 // double c
33: .line 84
dconst_1
dstore 21 /* pmc */
start local 21 // double pmc
34: .line 86
dload 19 /* c */
dstore 23 /* pc */
start local 23 // double pc
35: .line 87
iconst_0
istore 25 /* done */
start local 25 // boolean done
36: .line 88
goto 59
37: .line 89
StackMap locals: org.apache.commons.math3.analysis.integration.gauss.LegendreRuleFactory int java.lang.Double[] java.lang.Double[] java.lang.Double[] int int double double double double double double double double double int
StackMap stack:
dload 9 /* b */
dload 7 /* a */
dsub
dload 19 /* c */
invokestatic java.lang.Math.ulp:(D)D
dcmpg
ifgt 38
iconst_1
goto 39
StackMap locals:
StackMap stack:
38: iconst_0
StackMap locals:
StackMap stack: int
39: istore 25 /* done */
40: .line 90
dconst_1
dstore 21 /* pmc */
41: .line 91
dload 19 /* c */
dstore 23 /* pc */
42: .line 92
iconst_1
istore 26 /* j */
start local 26 // int j
43: goto 48
44: .line 94
StackMap locals: int
StackMap stack:
iconst_2
iload 26 /* j */
imul
iconst_1
iadd
i2d
dload 19 /* c */
dmul
dload 23 /* pc */
dmul
iload 26 /* j */
i2d
dload 21 /* pmc */
dmul
dsub
iload 26 /* j */
iconst_1
iadd
i2d
ddiv
dstore 27 /* ppc */
start local 27 // double ppc
45: .line 95
dload 23 /* pc */
dstore 21 /* pmc */
46: .line 96
dload 27 /* ppc */
dstore 23 /* pc */
end local 27 // double ppc
47: .line 92
iinc 26 /* j */ 1
StackMap locals:
StackMap stack:
48: iload 26 /* j */
iload 1 /* numberOfPoints */
if_icmplt 44
end local 26 // int j
49: .line 99
iload 25 /* done */
ifne 59
50: .line 100
dload 13 /* pa */
dload 23 /* pc */
dmul
dconst_0
dcmpg
ifgt 55
51: .line 101
dload 19 /* c */
dstore 9 /* b */
52: .line 102
dload 21 /* pmc */
dstore 15 /* pmb */
53: .line 103
dload 23 /* pc */
dstore 17 /* pb */
54: .line 104
goto 58
55: .line 105
StackMap locals:
StackMap stack:
dload 19 /* c */
dstore 7 /* a */
56: .line 106
dload 21 /* pmc */
dstore 11 /* pma */
57: .line 107
dload 23 /* pc */
dstore 13 /* pa */
58: .line 109
StackMap locals:
StackMap stack:
ldc 0.5
dload 7 /* a */
dload 9 /* b */
dadd
dmul
dstore 19 /* c */
59: .line 88
StackMap locals:
StackMap stack:
iload 25 /* done */
ifeq 37
60: .line 112
iload 1 /* numberOfPoints */
i2d
dload 21 /* pmc */
dload 19 /* c */
dload 23 /* pc */
dmul
dsub
dmul
dstore 26 /* d */
start local 26 // double d
61: .line 113
ldc 2.0
dconst_1
dload 19 /* c */
dload 19 /* c */
dmul
dsub
dmul
dload 26 /* d */
dload 26 /* d */
dmul
ddiv
dstore 28 /* w */
start local 28 // double w
62: .line 115
aload 3 /* points */
iload 6 /* i */
dload 19 /* c */
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aastore
63: .line 116
aload 4 /* weights */
iload 6 /* i */
dload 28 /* w */
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aastore
64: .line 118
iload 1 /* numberOfPoints */
iload 6 /* i */
isub
iconst_1
isub
istore 30 /* idx */
start local 30 // int idx
65: .line 119
aload 3 /* points */
iload 30 /* idx */
dload 19 /* c */
dneg
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aastore
66: .line 120
aload 4 /* weights */
iload 30 /* idx */
dload 28 /* w */
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aastore
end local 30 // int idx
end local 28 // double w
end local 26 // double d
end local 25 // boolean done
end local 23 // double pc
end local 21 // double pmc
end local 19 // double c
end local 17 // double pb
end local 15 // double pmb
end local 13 // double pa
end local 11 // double pma
end local 9 // double b
end local 7 // double a
67: .line 55
iinc 6 /* i */ 1
StackMap locals: org.apache.commons.math3.analysis.integration.gauss.LegendreRuleFactory int java.lang.Double[] java.lang.Double[] java.lang.Double[] int int
StackMap stack:
68: iload 6 /* i */
iload 5 /* iMax */
if_icmplt 10
end local 6 // int i
69: .line 126
iload 1 /* numberOfPoints */
iconst_2
irem
ifeq 80
70: .line 127
dconst_1
dstore 6 /* pmc */
start local 6 // double pmc
71: .line 128
iconst_1
istore 8 /* j */
start local 8 // int j
72: goto 75
73: .line 129
StackMap locals: org.apache.commons.math3.analysis.integration.gauss.LegendreRuleFactory int java.lang.Double[] java.lang.Double[] java.lang.Double[] int double int
StackMap stack:
iload 8 /* j */
ineg
i2d
dload 6 /* pmc */
dmul
iload 8 /* j */
iconst_1
iadd
i2d
ddiv
dstore 6 /* pmc */
74: .line 128
iinc 8 /* j */ 2
StackMap locals:
StackMap stack:
75: iload 8 /* j */
iload 1 /* numberOfPoints */
if_icmplt 73
end local 8 // int j
76: .line 131
iload 1 /* numberOfPoints */
i2d
dload 6 /* pmc */
dmul
dstore 8 /* d */
start local 8 // double d
77: .line 132
ldc 2.0
dload 8 /* d */
dload 8 /* d */
dmul
ddiv
dstore 10 /* w */
start local 10 // double w
78: .line 134
aload 3 /* points */
iload 5 /* iMax */
dconst_0
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aastore
79: .line 135
aload 4 /* weights */
iload 5 /* iMax */
dload 10 /* w */
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aastore
end local 10 // double w
end local 8 // double d
end local 6 // double pmc
80: .line 138
StackMap locals:
StackMap stack:
new org.apache.commons.math3.util.Pair
dup
aload 3 /* points */
aload 4 /* weights */
invokespecial org.apache.commons.math3.util.Pair.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
areturn
end local 5 // int iMax
end local 4 // java.lang.Double[] weights
end local 3 // java.lang.Double[] points
end local 2 // java.lang.Double[] previousPoints
end local 1 // int numberOfPoints
end local 0 // org.apache.commons.math3.analysis.integration.gauss.LegendreRuleFactory this
LocalVariableTable:
Start End Slot Name Signature
0 81 0 this Lorg/apache/commons/math3/analysis/integration/gauss/LegendreRuleFactory;
0 81 1 numberOfPoints I
5 81 2 previousPoints [Ljava/lang/Double;
6 81 3 points [Ljava/lang/Double;
7 81 4 weights [Ljava/lang/Double;
8 81 5 iMax I
9 69 6 i I
13 67 7 a D
16 67 9 b D
17 67 11 pma D
18 67 13 pa D
19 67 15 pmb D
20 67 17 pb D
21 32 19 j I
23 30 20 two_j_p_1 I
24 30 21 j_p_1 I
25 30 22 ppa D
26 30 24 ppb D
33 67 19 c D
34 67 21 pmc D
35 67 23 pc D
36 67 25 done Z
43 49 26 j I
45 47 27 ppc D
61 67 26 d D
62 67 28 w D
65 67 30 idx I
71 80 6 pmc D
72 76 8 j I
77 80 8 d D
78 80 10 w D
Exceptions:
throws org.apache.commons.math3.exception.DimensionMismatchException
Signature: (I)Lorg/apache/commons/math3/util/Pair<[Ljava/lang/Double;[Ljava/lang/Double;>;
MethodParameters:
Name Flags
numberOfPoints
}
Signature: Lorg/apache/commons/math3/analysis/integration/gauss/BaseRuleFactory<Ljava/lang/Double;>;
SourceFile: "LegendreRuleFactory.java"