public class org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator implements org.apache.commons.math3.analysis.differentiation.UnivariateFunctionDifferentiator, org.apache.commons.math3.analysis.differentiation.UnivariateVectorFunctionDifferentiator, org.apache.commons.math3.analysis.differentiation.UnivariateMatrixFunctionDifferentiator, java.io.Serializable
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator
super_class: java.lang.Object
{
private static final long serialVersionUID;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 20120917
private final int nbPoints;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final double stepSize;
descriptor: D
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final double halfSampleSpan;
descriptor: D
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final double tMin;
descriptor: D
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final double tMax;
descriptor: D
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(int, double);
descriptor: (ID)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
dload 2
ldc -Infinity
ldc Infinity
invokespecial org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator.<init>:(IDDD)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/commons/math3/analysis/differentiation/FiniteDifferencesDifferentiator;
0 2 1 nbPoints I
0 2 2 stepSize D
Exceptions:
throws org.apache.commons.math3.exception.NotPositiveException, org.apache.commons.math3.exception.NumberIsTooSmallException
MethodParameters:
Name Flags
nbPoints final
stepSize final
public void <init>(int, double, double, double);
descriptor: (IDDD)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=10, args_size=5
start local 0 start local 1 start local 2 start local 4 start local 6 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: iload 1
iconst_1
if_icmpgt 3
2: new org.apache.commons.math3.exception.NumberIsTooSmallException
dup
dload 2
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
iconst_1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
iconst_0
invokespecial org.apache.commons.math3.exception.NumberIsTooSmallException.<init>:(Ljava/lang/Number;Ljava/lang/Number;Z)V
athrow
3: StackMap locals: org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator int double double double
StackMap stack:
aload 0
iload 1
putfield org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator.nbPoints:I
4: dload 2
dconst_0
dcmpg
ifgt 6
5: new org.apache.commons.math3.exception.NotPositiveException
dup
dload 2
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
invokespecial org.apache.commons.math3.exception.NotPositiveException.<init>:(Ljava/lang/Number;)V
athrow
6: StackMap locals:
StackMap stack:
aload 0
dload 2
putfield org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator.stepSize:D
7: aload 0
ldc 0.5
dload 2
dmul
iload 1
iconst_1
isub
i2d
dmul
putfield org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator.halfSampleSpan:D
8: ldc 2.0
aload 0
getfield org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator.halfSampleSpan:D
dmul
dload 6
dload 4
dsub
dcmpl
iflt 10
9: new org.apache.commons.math3.exception.NumberIsTooLargeException
dup
ldc 2.0
aload 0
getfield org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator.halfSampleSpan:D
dmul
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
dload 6
dload 4
dsub
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
iconst_0
invokespecial org.apache.commons.math3.exception.NumberIsTooLargeException.<init>:(Ljava/lang/Number;Ljava/lang/Number;Z)V
athrow
10: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator.halfSampleSpan:D
invokestatic org.apache.commons.math3.util.FastMath.ulp:(D)D
dstore 8
start local 8 11: aload 0
dload 4
aload 0
getfield org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator.halfSampleSpan:D
dadd
dload 8
dadd
putfield org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator.tMin:D
12: aload 0
dload 6
aload 0
getfield org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator.halfSampleSpan:D
dsub
dload 8
dsub
putfield org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator.tMax:D
13: return
end local 8 end local 6 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/apache/commons/math3/analysis/differentiation/FiniteDifferencesDifferentiator;
0 14 1 nbPoints I
0 14 2 stepSize D
0 14 4 tLower D
0 14 6 tUpper D
11 14 8 safety D
Exceptions:
throws org.apache.commons.math3.exception.NotPositiveException, org.apache.commons.math3.exception.NumberIsTooSmallException, org.apache.commons.math3.exception.NumberIsTooLargeException
MethodParameters:
Name Flags
nbPoints final
stepSize final
tLower final
tUpper final
public int getNbPoints();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator.nbPoints:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/math3/analysis/differentiation/FiniteDifferencesDifferentiator;
public double getStepSize();
descriptor: ()D
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator.stepSize:D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/math3/analysis/differentiation/FiniteDifferencesDifferentiator;
private org.apache.commons.math3.analysis.differentiation.DerivativeStructure evaluate(org.apache.commons.math3.analysis.differentiation.DerivativeStructure, double, double[]);
descriptor: (Lorg/apache/commons/math3/analysis/differentiation/DerivativeStructure;D[D)Lorg/apache/commons/math3/analysis/differentiation/DerivativeStructure;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=16, args_size=4
start local 0 start local 1 start local 2 start local 4 0: aload 0
getfield org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator.nbPoints:I
newarray 7
astore 5
start local 5 1: aload 0
getfield org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator.nbPoints:I
newarray 7
astore 6
start local 6 2: iconst_0
istore 7
start local 7 3: goto 12
4: StackMap locals: double[] double[] int
StackMap stack:
aload 6
iload 7
aload 4
iload 7
daload
dastore
5: iconst_1
istore 8
start local 8 6: goto 9
7: StackMap locals: int
StackMap stack:
aload 6
iload 7
iload 8
isub
aload 6
iload 7
iload 8
isub
iconst_1
iadd
daload
aload 6
iload 7
iload 8
isub
daload
dsub
iload 8
i2d
aload 0
getfield org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator.stepSize:D
dmul
ddiv
dastore
8: iinc 8 1
StackMap locals:
StackMap stack:
9: iload 8
iload 7
if_icmple 7
end local 8 10: aload 5
iload 7
aload 6
iconst_0
daload
dastore
11: iinc 7 1
StackMap locals:
StackMap stack:
12: iload 7
aload 0
getfield org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator.nbPoints:I
if_icmplt 4
end local 7 13: aload 1
invokevirtual org.apache.commons.math3.analysis.differentiation.DerivativeStructure.getOrder:()I
istore 7
start local 7 14: aload 1
invokevirtual org.apache.commons.math3.analysis.differentiation.DerivativeStructure.getFreeParameters:()I
istore 8
start local 8 15: aload 1
invokevirtual org.apache.commons.math3.analysis.differentiation.DerivativeStructure.getAllDerivatives:()[D
astore 9
start local 9 16: aload 1
invokevirtual org.apache.commons.math3.analysis.differentiation.DerivativeStructure.getValue:()D
dload 2
dsub
dstore 10
start local 10 17: new org.apache.commons.math3.analysis.differentiation.DerivativeStructure
dup
iload 8
iload 7
dconst_0
invokespecial org.apache.commons.math3.analysis.differentiation.DerivativeStructure.<init>:(IID)V
astore 12
start local 12 18: aconst_null
astore 13
start local 13 19: iconst_0
istore 14
start local 14 20: goto 29
21: StackMap locals: org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator org.apache.commons.math3.analysis.differentiation.DerivativeStructure double double[] double[] double[] int int double[] double org.apache.commons.math3.analysis.differentiation.DerivativeStructure org.apache.commons.math3.analysis.differentiation.DerivativeStructure int
StackMap stack:
iload 14
ifne 24
22: new org.apache.commons.math3.analysis.differentiation.DerivativeStructure
dup
iload 8
iload 7
dconst_1
invokespecial org.apache.commons.math3.analysis.differentiation.DerivativeStructure.<init>:(IID)V
astore 13
23: goto 27
24: StackMap locals:
StackMap stack:
aload 9
iconst_0
dload 10
iload 14
iconst_1
isub
i2d
aload 0
getfield org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator.stepSize:D
dmul
dsub
dastore
25: new org.apache.commons.math3.analysis.differentiation.DerivativeStructure
dup
iload 8
iload 7
aload 9
invokespecial org.apache.commons.math3.analysis.differentiation.DerivativeStructure.<init>:(II[D)V
astore 15
start local 15 26: aload 13
aload 15
invokevirtual org.apache.commons.math3.analysis.differentiation.DerivativeStructure.multiply:(Lorg/apache/commons/math3/analysis/differentiation/DerivativeStructure;)Lorg/apache/commons/math3/analysis/differentiation/DerivativeStructure;
astore 13
end local 15 27: StackMap locals:
StackMap stack:
aload 12
aload 13
aload 5
iload 14
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;
astore 12
28: iinc 14 1
StackMap locals:
StackMap stack:
29: iload 14
aload 0
getfield org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator.nbPoints:I
if_icmplt 21
end local 14 30: aload 12
areturn
end local 13 end local 12 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 this Lorg/apache/commons/math3/analysis/differentiation/FiniteDifferencesDifferentiator;
0 31 1 t Lorg/apache/commons/math3/analysis/differentiation/DerivativeStructure;
0 31 2 t0 D
0 31 4 y [D
1 31 5 top [D
2 31 6 bottom [D
3 13 7 i I
6 10 8 j I
14 31 7 order I
15 31 8 parameters I
16 31 9 derivatives [D
17 31 10 dt0 D
18 31 12 interpolation Lorg/apache/commons/math3/analysis/differentiation/DerivativeStructure;
19 31 13 monomial Lorg/apache/commons/math3/analysis/differentiation/DerivativeStructure;
20 30 14 i I
26 27 15 deltaX Lorg/apache/commons/math3/analysis/differentiation/DerivativeStructure;
Exceptions:
throws org.apache.commons.math3.exception.NumberIsTooLargeException
MethodParameters:
Name Flags
t final
t0 final
y final
public org.apache.commons.math3.analysis.differentiation.UnivariateDifferentiableFunction differentiate(org.apache.commons.math3.analysis.UnivariateFunction);
descriptor: (Lorg/apache/commons/math3/analysis/UnivariateFunction;)Lorg/apache/commons/math3/analysis/differentiation/UnivariateDifferentiableFunction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: new org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator$1
dup
aload 0
aload 1
invokespecial org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator$1.<init>:(Lorg/apache/commons/math3/analysis/differentiation/FiniteDifferencesDifferentiator;Lorg/apache/commons/math3/analysis/UnivariateFunction;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/math3/analysis/differentiation/FiniteDifferencesDifferentiator;
0 1 1 function Lorg/apache/commons/math3/analysis/UnivariateFunction;
MethodParameters:
Name Flags
function final
public org.apache.commons.math3.analysis.differentiation.UnivariateDifferentiableVectorFunction differentiate(org.apache.commons.math3.analysis.UnivariateVectorFunction);
descriptor: (Lorg/apache/commons/math3/analysis/UnivariateVectorFunction;)Lorg/apache/commons/math3/analysis/differentiation/UnivariateDifferentiableVectorFunction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: new org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator$2
dup
aload 0
aload 1
invokespecial org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator$2.<init>:(Lorg/apache/commons/math3/analysis/differentiation/FiniteDifferencesDifferentiator;Lorg/apache/commons/math3/analysis/UnivariateVectorFunction;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/math3/analysis/differentiation/FiniteDifferencesDifferentiator;
0 1 1 function Lorg/apache/commons/math3/analysis/UnivariateVectorFunction;
MethodParameters:
Name Flags
function final
public org.apache.commons.math3.analysis.differentiation.UnivariateDifferentiableMatrixFunction differentiate(org.apache.commons.math3.analysis.UnivariateMatrixFunction);
descriptor: (Lorg/apache/commons/math3/analysis/UnivariateMatrixFunction;)Lorg/apache/commons/math3/analysis/differentiation/UnivariateDifferentiableMatrixFunction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: new org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator$3
dup
aload 0
aload 1
invokespecial org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator$3.<init>:(Lorg/apache/commons/math3/analysis/differentiation/FiniteDifferencesDifferentiator;Lorg/apache/commons/math3/analysis/UnivariateMatrixFunction;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/math3/analysis/differentiation/FiniteDifferencesDifferentiator;
0 1 1 function Lorg/apache/commons/math3/analysis/UnivariateMatrixFunction;
MethodParameters:
Name Flags
function final
}
SourceFile: "FiniteDifferencesDifferentiator.java"
NestMembers:
org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator$1 org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator$2 org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator$3
InnerClasses:
org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator$1
org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator$2
org.apache.commons.math3.analysis.differentiation.FiniteDifferencesDifferentiator$3