public class org.apache.commons.math3.analysis.interpolation.HermiteInterpolator implements org.apache.commons.math3.analysis.differentiation.UnivariateDifferentiableVectorFunction
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.commons.math3.analysis.interpolation.HermiteInterpolator
super_class: java.lang.Object
{
private final java.util.List<java.lang.Double> abscissae;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Ljava/lang/Double;>;
private final java.util.List<double[]> topDiagonal;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<[D>;
private final java.util.List<double[]> bottomDiagonal;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<[D>;
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.abscissae:Ljava/util/List;
2: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.topDiagonal:Ljava/util/List;
3: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.bottomDiagonal:Ljava/util/List;
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/commons/math3/analysis/interpolation/HermiteInterpolator;
public void addSamplePoint(double, double[][]);
descriptor: (D[[D)V
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=8, locals=13, args_size=3
start local 0 start local 1 start local 3 0: iconst_0
istore 4
start local 4 1: goto 30
2: StackMap locals: int
StackMap stack:
aload 3
iload 4
aaload
invokevirtual double[].clone:()Ljava/lang/Object;
checkcast double[]
astore 5
start local 5 3: iload 4
iconst_1
if_icmple 10
4: dconst_1
iload 4
invokestatic org.apache.commons.math3.util.CombinatoricsUtils.factorial:(I)J
l2d
ddiv
dstore 6
start local 6 5: iconst_0
istore 8
start local 8 6: goto 9
7: StackMap locals: double[] double int
StackMap stack:
aload 5
iload 8
dup2
daload
dload 6
dmul
dastore
8: iinc 8 1
StackMap locals:
StackMap stack:
9: iload 8
aload 5
arraylength
if_icmplt 7
end local 8 end local 6 10: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.abscissae:Ljava/util/List;
invokeinterface java.util.List.size:()I
istore 6
start local 6 11: aload 0
getfield org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.bottomDiagonal:Ljava/util/List;
iload 6
iload 4
isub
aload 5
invokeinterface java.util.List.add:(ILjava/lang/Object;)V
12: aload 5
astore 7
start local 7 13: iload 4
istore 8
start local 8 14: goto 26
15: StackMap locals: int double[] int
StackMap stack:
aload 0
getfield org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.bottomDiagonal:Ljava/util/List;
iload 6
iload 8
iconst_1
iadd
isub
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast double[]
astore 9
start local 9 16: dconst_1
dload 1
aload 0
getfield org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.abscissae:Ljava/util/List;
iload 6
iload 8
iconst_1
iadd
isub
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.Double
invokevirtual java.lang.Double.doubleValue:()D
dsub
ddiv
dstore 10
start local 10 17: dload 10
invokestatic java.lang.Double.isInfinite:(D)Z
ifeq 19
18: new org.apache.commons.math3.exception.ZeroException
dup
getstatic org.apache.commons.math3.exception.util.LocalizedFormats.DUPLICATED_ABSCISSA_DIVISION_BY_ZERO:Lorg/apache/commons/math3/exception/util/LocalizedFormats;
iconst_1
anewarray java.lang.Object
dup
iconst_0
dload 1
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aastore
invokespecial org.apache.commons.math3.exception.ZeroException.<init>:(Lorg/apache/commons/math3/exception/util/Localizable;[Ljava/lang/Object;)V
athrow
19: StackMap locals: double[] double
StackMap stack:
iconst_0
istore 12
start local 12 20: goto 23
21: StackMap locals: int
StackMap stack:
aload 9
iload 12
dload 10
aload 7
iload 12
daload
aload 9
iload 12
daload
dsub
dmul
dastore
22: iinc 12 1
StackMap locals:
StackMap stack:
23: iload 12
aload 5
arraylength
if_icmplt 21
end local 12 24: aload 9
astore 7
end local 10 end local 9 25: iinc 8 1
StackMap locals:
StackMap stack:
26: iload 8
iload 6
if_icmplt 15
end local 8 27: aload 0
getfield org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.topDiagonal:Ljava/util/List;
aload 7
invokevirtual double[].clone:()Ljava/lang/Object;
checkcast double[]
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
28: aload 0
getfield org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.abscissae:Ljava/util/List;
dload 1
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 7 end local 6 end local 5 29: iinc 4 1
StackMap locals: org.apache.commons.math3.analysis.interpolation.HermiteInterpolator double double[][] int
StackMap stack:
30: iload 4
aload 3
arraylength
if_icmplt 2
end local 4 31: return
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 32 0 this Lorg/apache/commons/math3/analysis/interpolation/HermiteInterpolator;
0 32 1 x D
0 32 3 value [[D
1 31 4 i I
3 29 5 y [D
5 10 6 inv D
6 10 8 j I
11 29 6 n I
13 29 7 bottom0 [D
14 27 8 j I
16 25 9 bottom1 [D
17 25 10 inv D
20 24 12 k I
Exceptions:
throws org.apache.commons.math3.exception.ZeroException, org.apache.commons.math3.exception.MathArithmeticException
MethodParameters:
Name Flags
x final
value final
public org.apache.commons.math3.analysis.polynomials.PolynomialFunction[] getPolynomials();
descriptor: ()[Lorg/apache/commons/math3/analysis/polynomials/PolynomialFunction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=10, locals=7, args_size=1
start local 0 0: aload 0
invokevirtual org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.checkInterpolation:()V
1: aload 0
iconst_1
newarray 7
dup
iconst_0
dconst_0
dastore
invokevirtual org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.polynomial:([D)Lorg/apache/commons/math3/analysis/polynomials/PolynomialFunction;
astore 1
start local 1 2: aload 0
getfield org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.topDiagonal:Ljava/util/List;
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast double[]
arraylength
anewarray org.apache.commons.math3.analysis.polynomials.PolynomialFunction
astore 2
start local 2 3: iconst_0
istore 3
start local 3 4: goto 7
5: StackMap locals: org.apache.commons.math3.analysis.polynomials.PolynomialFunction org.apache.commons.math3.analysis.polynomials.PolynomialFunction[] int
StackMap stack:
aload 2
iload 3
aload 1
aastore
6: iinc 3 1
StackMap locals:
StackMap stack:
7: iload 3
aload 2
arraylength
if_icmplt 5
end local 3 8: aload 0
iconst_1
newarray 7
dup
iconst_0
dconst_1
dastore
invokevirtual org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.polynomial:([D)Lorg/apache/commons/math3/analysis/polynomials/PolynomialFunction;
astore 3
start local 3 9: iconst_0
istore 4
start local 4 10: goto 19
11: StackMap locals: org.apache.commons.math3.analysis.interpolation.HermiteInterpolator org.apache.commons.math3.analysis.polynomials.PolynomialFunction org.apache.commons.math3.analysis.polynomials.PolynomialFunction[] org.apache.commons.math3.analysis.polynomials.PolynomialFunction int
StackMap stack:
aload 0
getfield org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.topDiagonal:Ljava/util/List;
iload 4
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast double[]
astore 5
start local 5 12: iconst_0
istore 6
start local 6 13: goto 16
14: StackMap locals: double[] int
StackMap stack:
aload 2
iload 6
aload 2
iload 6
aaload
aload 3
aload 0
iconst_1
newarray 7
dup
iconst_0
aload 5
iload 6
daload
dastore
invokevirtual org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.polynomial:([D)Lorg/apache/commons/math3/analysis/polynomials/PolynomialFunction;
invokevirtual org.apache.commons.math3.analysis.polynomials.PolynomialFunction.multiply:(Lorg/apache/commons/math3/analysis/polynomials/PolynomialFunction;)Lorg/apache/commons/math3/analysis/polynomials/PolynomialFunction;
invokevirtual org.apache.commons.math3.analysis.polynomials.PolynomialFunction.add:(Lorg/apache/commons/math3/analysis/polynomials/PolynomialFunction;)Lorg/apache/commons/math3/analysis/polynomials/PolynomialFunction;
aastore
15: iinc 6 1
StackMap locals:
StackMap stack:
16: iload 6
aload 2
arraylength
if_icmplt 14
end local 6 17: aload 3
aload 0
iconst_2
newarray 7
dup
iconst_0
aload 0
getfield org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.abscissae:Ljava/util/List;
iload 4
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.Double
invokevirtual java.lang.Double.doubleValue:()D
dneg
dastore
dup
iconst_1
dconst_1
dastore
invokevirtual org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.polynomial:([D)Lorg/apache/commons/math3/analysis/polynomials/PolynomialFunction;
invokevirtual org.apache.commons.math3.analysis.polynomials.PolynomialFunction.multiply:(Lorg/apache/commons/math3/analysis/polynomials/PolynomialFunction;)Lorg/apache/commons/math3/analysis/polynomials/PolynomialFunction;
astore 3
end local 5 18: iinc 4 1
StackMap locals:
StackMap stack:
19: iload 4
aload 0
getfield org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.topDiagonal:Ljava/util/List;
invokeinterface java.util.List.size:()I
if_icmplt 11
end local 4 20: aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lorg/apache/commons/math3/analysis/interpolation/HermiteInterpolator;
2 21 1 zero Lorg/apache/commons/math3/analysis/polynomials/PolynomialFunction;
3 21 2 polynomials [Lorg/apache/commons/math3/analysis/polynomials/PolynomialFunction;
4 8 3 i I
9 21 3 coeff Lorg/apache/commons/math3/analysis/polynomials/PolynomialFunction;
10 20 4 i I
12 18 5 tdi [D
13 17 6 k I
Exceptions:
throws org.apache.commons.math3.exception.NoDataException
public double[] value(double);
descriptor: (D)[D
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=10, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.checkInterpolation:()V
1: aload 0
getfield org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.topDiagonal:Ljava/util/List;
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast double[]
arraylength
newarray 7
astore 3
start local 3 2: dconst_1
dstore 4
start local 4 3: iconst_0
istore 6
start local 6 4: goto 14
5: StackMap locals: double[] double int
StackMap stack:
aload 0
getfield org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.topDiagonal:Ljava/util/List;
iload 6
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast double[]
astore 7
start local 7 6: iconst_0
istore 8
start local 8 7: goto 10
8: StackMap locals: double[] int
StackMap stack:
aload 3
iload 8
dup2
daload
aload 7
iload 8
daload
dload 4
dmul
dadd
dastore
9: iinc 8 1
StackMap locals:
StackMap stack:
10: iload 8
aload 3
arraylength
if_icmplt 8
end local 8 11: dload 1
aload 0
getfield org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.abscissae:Ljava/util/List;
iload 6
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.Double
invokevirtual java.lang.Double.doubleValue:()D
dsub
dstore 8
start local 8 12: dload 4
dload 8
dmul
dstore 4
end local 8 end local 7 13: iinc 6 1
StackMap locals:
StackMap stack:
14: iload 6
aload 0
getfield org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.topDiagonal:Ljava/util/List;
invokeinterface java.util.List.size:()I
if_icmplt 5
end local 6 15: aload 3
areturn
end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/apache/commons/math3/analysis/interpolation/HermiteInterpolator;
0 16 1 x D
2 16 3 value [D
3 16 4 valueCoeff D
4 15 6 i I
6 13 7 dividedDifference [D
7 11 8 k I
12 13 8 deltaX D
Exceptions:
throws org.apache.commons.math3.exception.NoDataException
MethodParameters:
Name Flags
x
public org.apache.commons.math3.analysis.differentiation.DerivativeStructure[] value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure);
descriptor: (Lorg/apache/commons/math3/analysis/differentiation/DerivativeStructure;)[Lorg/apache/commons/math3/analysis/differentiation/DerivativeStructure;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=7, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.checkInterpolation:()V
1: aload 0
getfield org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.topDiagonal:Ljava/util/List;
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast double[]
arraylength
anewarray org.apache.commons.math3.analysis.differentiation.DerivativeStructure
astore 2
start local 2 2: aload 2
aload 1
invokevirtual org.apache.commons.math3.analysis.differentiation.DerivativeStructure.getField:()Lorg/apache/commons/math3/Field;
invokeinterface org.apache.commons.math3.Field.getZero:()Ljava/lang/Object;
invokestatic java.util.Arrays.fill:([Ljava/lang/Object;Ljava/lang/Object;)V
3: aload 1
invokevirtual org.apache.commons.math3.analysis.differentiation.DerivativeStructure.getField:()Lorg/apache/commons/math3/Field;
invokeinterface org.apache.commons.math3.Field.getOne:()Ljava/lang/Object;
checkcast org.apache.commons.math3.analysis.differentiation.DerivativeStructure
astore 3
start local 3 4: iconst_0
istore 4
start local 4 5: goto 15
6: StackMap locals: org.apache.commons.math3.analysis.differentiation.DerivativeStructure[] org.apache.commons.math3.analysis.differentiation.DerivativeStructure int
StackMap stack:
aload 0
getfield org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.topDiagonal:Ljava/util/List;
iload 4
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast double[]
astore 5
start local 5 7: iconst_0
istore 6
start local 6 8: goto 11
9: StackMap locals: double[] int
StackMap stack:
aload 2
iload 6
aload 2
iload 6
aaload
aload 3
aload 5
iload 6
daload
invokevirtual org.apache.commons.math3.analysis.differentiation.DerivativeStructure.multiply:(D)Lorg/apache/commons/math3/analysis/differentiation/DerivativeStructure;
invokevirtual org.apache.commons.math3.analysis.differentiation.DerivativeStructure.add:(Lorg/apache/commons/math3/analysis/differentiation/DerivativeStructure;)Lorg/apache/commons/math3/analysis/differentiation/DerivativeStructure;
aastore
10: iinc 6 1
StackMap locals:
StackMap stack:
11: iload 6
aload 2
arraylength
if_icmplt 9
end local 6 12: aload 1
aload 0
getfield org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.abscissae:Ljava/util/List;
iload 4
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.Double
invokevirtual java.lang.Double.doubleValue:()D
invokevirtual org.apache.commons.math3.analysis.differentiation.DerivativeStructure.subtract:(D)Lorg/apache/commons/math3/analysis/differentiation/DerivativeStructure;
astore 6
start local 6 13: aload 3
aload 6
invokevirtual org.apache.commons.math3.analysis.differentiation.DerivativeStructure.multiply:(Lorg/apache/commons/math3/analysis/differentiation/DerivativeStructure;)Lorg/apache/commons/math3/analysis/differentiation/DerivativeStructure;
astore 3
end local 6 end local 5 14: iinc 4 1
StackMap locals:
StackMap stack:
15: iload 4
aload 0
getfield org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.topDiagonal:Ljava/util/List;
invokeinterface java.util.List.size:()I
if_icmplt 6
end local 4 16: aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/apache/commons/math3/analysis/interpolation/HermiteInterpolator;
0 17 1 x Lorg/apache/commons/math3/analysis/differentiation/DerivativeStructure;
2 17 2 value [Lorg/apache/commons/math3/analysis/differentiation/DerivativeStructure;
4 17 3 valueCoeff Lorg/apache/commons/math3/analysis/differentiation/DerivativeStructure;
5 16 4 i I
7 14 5 dividedDifference [D
8 12 6 k I
13 14 6 deltaX Lorg/apache/commons/math3/analysis/differentiation/DerivativeStructure;
Exceptions:
throws org.apache.commons.math3.exception.NoDataException
MethodParameters:
Name Flags
x final
private void checkInterpolation();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.commons.math3.analysis.interpolation.HermiteInterpolator.abscissae:Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifeq 2
1: new org.apache.commons.math3.exception.NoDataException
dup
getstatic org.apache.commons.math3.exception.util.LocalizedFormats.EMPTY_INTERPOLATION_SAMPLE:Lorg/apache/commons/math3/exception/util/LocalizedFormats;
invokespecial org.apache.commons.math3.exception.NoDataException.<init>:(Lorg/apache/commons/math3/exception/util/Localizable;)V
athrow
2: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/commons/math3/analysis/interpolation/HermiteInterpolator;
Exceptions:
throws org.apache.commons.math3.exception.NoDataException
private org.apache.commons.math3.analysis.polynomials.PolynomialFunction polynomial(double[]);
descriptor: ([D)Lorg/apache/commons/math3/analysis/polynomials/PolynomialFunction;
flags: (0x0082) ACC_PRIVATE, ACC_VARARGS
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: new org.apache.commons.math3.analysis.polynomials.PolynomialFunction
dup
aload 1
invokespecial org.apache.commons.math3.analysis.polynomials.PolynomialFunction.<init>:([D)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/math3/analysis/interpolation/HermiteInterpolator;
0 1 1 c [D
MethodParameters:
Name Flags
c
}
SourceFile: "HermiteInterpolator.java"