public class oadd.org.apache.commons.math.analysis.differentiation.DSCompiler extends java.lang.Object
{
private static java.util.concurrent.atomic.AtomicReference compilers;
private final int parameters;
private final int order;
private final int[][] sizes;
private final int[][] derivativesIndirection;
private final int[] lowerIndirection;
private final int[][][] multIndirection;
private final int[][][] compIndirection;
private void <init>(int, int, oadd.org.apache.commons.math.analysis.differentiation.DSCompiler, oadd.org.apache.commons.math.analysis.differentiation.DSCompiler)
{
int[][] v, v, v, v;
int[][][] v, v;
int[] v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v, v, v;
int v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: int;
v := @parameter: int;
v := @parameter: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int parameters> = v;
v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order> = v;
v = staticinvoke <oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][] compileSizes(int,int,oadd.org.apache.commons.math.analysis.differentiation.DSCompiler)>(v, v, v);
v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][] sizes> = v;
v = staticinvoke <oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][] compileDerivativesIndirection(int,int,oadd.org.apache.commons.math.analysis.differentiation.DSCompiler,oadd.org.apache.commons.math.analysis.differentiation.DSCompiler)>(v, v, v, v);
v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][] derivativesIndirection> = v;
v = staticinvoke <oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[] compileLowerIndirection(int,int,oadd.org.apache.commons.math.analysis.differentiation.DSCompiler,oadd.org.apache.commons.math.analysis.differentiation.DSCompiler)>(v, v, v, v);
v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[] lowerIndirection> = v;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[] lowerIndirection>;
v = staticinvoke <oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][][] compileMultiplicationIndirection(int,int,oadd.org.apache.commons.math.analysis.differentiation.DSCompiler,oadd.org.apache.commons.math.analysis.differentiation.DSCompiler,int[])>(v, v, v, v, v);
v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][][] multIndirection> = v;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][] sizes>;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][] derivativesIndirection>;
v = staticinvoke <oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][][] compileCompositionIndirection(int,int,oadd.org.apache.commons.math.analysis.differentiation.DSCompiler,oadd.org.apache.commons.math.analysis.differentiation.DSCompiler,int[][],int[][])>(v, v, v, v, v, v);
v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][][] compIndirection> = v;
return;
}
public static oadd.org.apache.commons.math.analysis.differentiation.DSCompiler getCompiler(int, int)
{
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler[][] v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler[] v, v, v, v, v, v, v, v, v, v, v, v;
java.util.concurrent.atomic.AtomicReference v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v, v, v, v, v, v, v, v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.Object v;
v := @parameter: int;
v := @parameter: int;
v = <oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: java.util.concurrent.atomic.AtomicReference compilers>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
if v == null goto label;
v = lengthof v;
if v <= v goto label;
v = v[v];
v = lengthof v;
if v <= v goto label;
v = v[v];
v = v[v];
if v == null goto label;
v = v[v];
v = v[v];
return v;
label:
if v != null goto label;
v = 0;
goto label;
label:
v = lengthof v;
label:
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: int max(int,int)>(v, v);
if v != null goto label;
v = 0;
goto label;
label:
v = v[0];
v = lengthof v;
label:
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: int max(int,int)>(v, v);
v = v + 1;
v = v + 1;
v = newmultiarray (oadd.org.apache.commons.math.analysis.differentiation.DSCompiler)[v][v];
if v == null goto label;
v = 0;
label:
v = lengthof v;
if v >= v goto label;
v = v[v];
v = v[v];
v = v[v];
v = lengthof v;
staticinvoke <java.lang.System: void arraycopy(java.lang.Object,int,java.lang.Object,int,int)>(v, 0, v, 0, v);
v = v + 1;
goto label;
label:
v = 0;
label:
v = v + v;
if v > v goto label;
v = v - v;
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: int max(int,int)>(0, v);
label:
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: int min(int,int)>(v, v);
if v > v goto label;
v = v - v;
v = v[v];
v = v[v];
if v != null goto label;
if v != 0 goto label;
v = null;
goto label;
label:
v = v - 1;
v = v[v];
v = v[v];
label:
v = v;
if v != 0 goto label;
v = null;
goto label;
label:
v = v[v];
v = v - 1;
v = v[v];
label:
v = v[v];
v = new oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
specialinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void <init>(int,int,oadd.org.apache.commons.math.analysis.differentiation.DSCompiler,oadd.org.apache.commons.math.analysis.differentiation.DSCompiler)>(v, v, v, v);
v[v] = v;
label:
v = v + 1;
goto label;
label:
v = v + 1;
goto label;
label:
v = <oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: java.util.concurrent.atomic.AtomicReference compilers>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: boolean compareAndSet(java.lang.Object,java.lang.Object)>(v, v);
v = v[v];
v = v[v];
return v;
}
private static int[][] compileSizes(int, int, oadd.org.apache.commons.math.analysis.differentiation.DSCompiler)
{
int[][] v, v;
int[] v, v, v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v, v, v, v;
v := @parameter: int;
v := @parameter: int;
v := @parameter: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v = v + 1;
v = v + 1;
v = newmultiarray (int)[v][v];
if v != 0 goto label;
v = v[0];
staticinvoke <java.util.Arrays: void fill(int[],int)>(v, 1);
goto label;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][] sizes>;
staticinvoke <java.lang.System: void arraycopy(java.lang.Object,int,java.lang.Object,int,int)>(v, 0, v, 0, v);
v = v[v];
v[0] = 1;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = v + 1;
v = v[v];
v = v[v];
v = v - 1;
v = v[v];
v = v + 1;
v = v[v];
v = v + v;
v[v] = v;
v = v + 1;
goto label;
label:
return v;
}
private static int[][] compileDerivativesIndirection(int, int, oadd.org.apache.commons.math.analysis.differentiation.DSCompiler, oadd.org.apache.commons.math.analysis.differentiation.DSCompiler)
{
int[][] v, v, v, v, v, v;
int[] v, v, v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v, v;
int v, v, v, v, v, v, v, v, v, v, v, v, v;
v := @parameter: int;
v := @parameter: int;
v := @parameter: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
if v == 0 goto label;
if v != 0 goto label;
label:
v = newmultiarray (int)[1][v];
return v;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][] derivativesIndirection>;
v = lengthof v;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][] derivativesIndirection>;
v = lengthof v;
v = v + v;
v = newmultiarray (int)[v][v];
v = 0;
label:
if v >= v goto label;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][] derivativesIndirection>;
v = v[v];
v = v[v];
v = v - 1;
staticinvoke <java.lang.System: void arraycopy(java.lang.Object,int,java.lang.Object,int,int)>(v, 0, v, 0, v);
v = v + 1;
goto label;
label:
v = 0;
label:
if v >= v goto label;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][] derivativesIndirection>;
v = v[v];
v = v + v;
v = v[v];
staticinvoke <java.lang.System: void arraycopy(java.lang.Object,int,java.lang.Object,int,int)>(v, 0, v, 0, v);
v = v + v;
v = v[v];
v = v - 1;
v = v[v];
v = v + 1;
v[v] = v;
v = v + 1;
goto label;
label:
return v;
}
private static int[] compileLowerIndirection(int, int, oadd.org.apache.commons.math.analysis.differentiation.DSCompiler, oadd.org.apache.commons.math.analysis.differentiation.DSCompiler)
{
int[] v, v, v, v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v, v;
int v, v, v, v, v, v, v, v, v, v;
v := @parameter: int;
v := @parameter: int;
v := @parameter: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
if v == 0 goto label;
if v > 1 goto label;
label:
v = newarray (int)[1];
v[0] = 0;
return v;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[] lowerIndirection>;
v = lengthof v;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[] lowerIndirection>;
v = lengthof v;
v = v + v;
v = newarray (int)[v];
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[] lowerIndirection>;
staticinvoke <java.lang.System: void arraycopy(java.lang.Object,int,java.lang.Object,int,int)>(v, 0, v, 0, v);
v = 0;
label:
if v >= v goto label;
v = v + v;
v = virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int getSize()>();
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[] lowerIndirection>;
v = v[v];
v = v + v;
v[v] = v;
v = v + 1;
goto label;
label:
return v;
}
private static int[][][] compileMultiplicationIndirection(int, int, oadd.org.apache.commons.math.analysis.differentiation.DSCompiler, oadd.org.apache.commons.math.analysis.differentiation.DSCompiler, int[])
{
int[][] v, v, v;
int[] v, v, v, v, v, v, v, v, v, v;
int[][][] v, v, v, v, v, v;
java.lang.Object[] v;
java.util.ArrayList v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v, v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.Object v, v;
v := @parameter: int;
v := @parameter: int;
v := @parameter: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: int[];
if v == 0 goto label;
if v != 0 goto label;
label:
v = newarray (int[][])[1];
v = newarray (int[])[1];
v = newarray (int)[3];
v[0] = 1;
v[1] = 0;
v[2] = 0;
v[0] = v;
v[0] = v;
return v;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][][] multIndirection>;
v = lengthof v;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][][] multIndirection>;
v = lengthof v;
v = v + v;
v = newarray (int[][])[v];
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][][] multIndirection>;
staticinvoke <java.lang.System: void arraycopy(java.lang.Object,int,java.lang.Object,int,int)>(v, 0, v, 0, v);
v = 0;
label:
if v >= v goto label;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][][] multIndirection>;
v = v[v];
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = 0;
label:
v = lengthof v;
if v >= v goto label;
v = newarray (int)[3];
v = v[v];
v = v[0];
v[0] = v;
v = v[v];
v = v[1];
v = v[v];
v[1] = v;
v = v[v];
v = v[2];
v = v + v;
v[2] = v;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = newarray (int)[3];
v = v[v];
v = v[0];
v[0] = v;
v = v[v];
v = v[1];
v = v + v;
v[1] = v;
v = v[v];
v = v[2];
v = v[v];
v[2] = v;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = v + 1;
goto label;
label:
v = new java.util.ArrayList;
v = interfaceinvoke v.<java.util.List: int size()>();
specialinvoke v.<java.util.ArrayList: void <init>(int)>(v);
v = 0;
label:
v = interfaceinvoke v.<java.util.List: int size()>();
if v >= v goto label;
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(v);
v = v[0];
if v <= 0 goto label;
v = v + 1;
label:
v = interfaceinvoke v.<java.util.List: int size()>();
if v >= v goto label;
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(v);
v = v[1];
v = v[1];
if v != v goto label;
v = v[2];
v = v[2];
if v != v goto label;
v = v[0];
v = v[0];
v = v + v;
v[0] = v;
v[0] = 0;
label:
v = v + 1;
goto label;
label:
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
v = v + 1;
goto label;
label:
v = v + v;
v = interfaceinvoke v.<java.util.List: int size()>();
v = newarray (int[])[v];
v = interfaceinvoke v.<java.util.List: java.lang.Object[] toArray(java.lang.Object[])>(v);
v[v] = v;
v = v + 1;
goto label;
label:
return v;
}
private static int[][][] compileCompositionIndirection(int, int, oadd.org.apache.commons.math.analysis.differentiation.DSCompiler, oadd.org.apache.commons.math.analysis.differentiation.DSCompiler, int[][], int[][])
{
java.lang.Object[] v;
java.util.ArrayList v, v;
int[][] v, v, v, v, v, v, v;
int[] v, v, v, v, v, v;
boolean v, v, v, v;
int[][][] v, v, v, v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v, v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.Object v, v;
v := @parameter: int;
v := @parameter: int;
v := @parameter: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: int[][];
v := @parameter: int[][];
if v == 0 goto label;
if v != 0 goto label;
label:
v = newarray (int[][])[1];
v = newarray (int[])[1];
v = newarray (int)[2];
v[0] = 1;
v[1] = 0;
v[0] = v;
v[0] = v;
return v;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][][] compIndirection>;
v = lengthof v;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][][] compIndirection>;
v = lengthof v;
v = v + v;
v = newarray (int[][])[v];
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][][] compIndirection>;
staticinvoke <java.lang.System: void arraycopy(java.lang.Object,int,java.lang.Object,int,int)>(v, 0, v, 0, v);
v = 0;
label:
if v >= v goto label;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][][] compIndirection>;
v = v[v];
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = lengthof v;
v = v + 1;
v = newarray (int)[v];
v = v[0];
v[0] = v;
v = v[1];
v = v + 1;
v[1] = v;
v = newarray (int)[v];
v = v - 1;
v[v] = 1;
v = lengthof v;
v = staticinvoke <oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int getPartialDerivativeIndex(int,int,int[][],int[])>(v, v, v, v);
v[v] = v;
v = 2;
label:
v = lengthof v;
if v >= v goto label;
v = v[v];
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][] derivativesIndirection>;
v = staticinvoke <oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int convertIndex(int,int,int[][],int,int,int[][])>(v, v, v, v, v, v);
v[v] = v;
v = v + 1;
goto label;
label:
v = lengthof v;
staticinvoke <java.util.Arrays: void sort(int[],int,int)>(v, 2, v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = 2;
label:
v = lengthof v;
if v >= v goto label;
v = lengthof v;
v = newarray (int)[v];
v = v[0];
v[0] = v;
v = v[1];
v[1] = v;
v = 2;
label:
v = lengthof v;
if v >= v goto label;
v = v[v];
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][] derivativesIndirection>;
v = staticinvoke <oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int convertIndex(int,int,int[][],int,int,int[][])>(v, v, v, v, v, v);
v[v] = v;
if v != v goto label;
v = v[v];
v = v[v];
staticinvoke <java.lang.System: void arraycopy(java.lang.Object,int,java.lang.Object,int,int)>(v, 0, v, 0, v);
v = v - 1;
v = v[v];
v = v + 1;
v[v] = v;
v = staticinvoke <oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int getPartialDerivativeIndex(int,int,int[][],int[])>(v, v, v, v);
v[v] = v;
label:
v = v + 1;
goto label;
label:
v = lengthof v;
staticinvoke <java.util.Arrays: void sort(int[],int,int)>(v, 2, v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = v + 1;
goto label;
label:
v = v + 1;
goto label;
label:
v = new java.util.ArrayList;
v = interfaceinvoke v.<java.util.List: int size()>();
specialinvoke v.<java.util.ArrayList: void <init>(int)>(v);
v = 0;
label:
v = interfaceinvoke v.<java.util.List: int size()>();
if v >= v goto label;
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(v);
v = v[0];
if v <= 0 goto label;
v = v + 1;
label:
v = interfaceinvoke v.<java.util.List: int size()>();
if v >= v goto label;
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(v);
v = lengthof v;
v = lengthof v;
if v != v goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = v;
v = 1;
label:
if v == 0 goto label;
v = lengthof v;
if v >= v goto label;
v = v;
v = v[v];
v = v[v];
if v != v goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = v & v;
v = v + 1;
goto label;
label:
if v == 0 goto label;
v = v[0];
v = v[0];
v = v + v;
v[0] = v;
v[0] = 0;
label:
v = v + 1;
goto label;
label:
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
v = v + 1;
goto label;
label:
v = v + v;
v = interfaceinvoke v.<java.util.List: int size()>();
v = newarray (int[])[v];
v = interfaceinvoke v.<java.util.List: java.lang.Object[] toArray(java.lang.Object[])>(v);
v[v] = v;
v = v + 1;
goto label;
label:
return v;
}
public transient int getPartialDerivativeIndex(int[]) throws oadd.org.apache.commons.math.exception.DimensionMismatchException, oadd.org.apache.commons.math.exception.NumberIsTooLargeException
{
int[][] v;
int[] v;
oadd.org.apache.commons.math.exception.DimensionMismatchException v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: int[];
v = lengthof v;
v = virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int getFreeParameters()>();
if v == v goto label;
v = new oadd.org.apache.commons.math.exception.DimensionMismatchException;
v = lengthof v;
v = virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int getFreeParameters()>();
specialinvoke v.<oadd.org.apache.commons.math.exception.DimensionMismatchException: void <init>(int,int)>(v, v);
throw v;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int parameters>;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][] sizes>;
v = staticinvoke <oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int getPartialDerivativeIndex(int,int,int[][],int[])>(v, v, v, v);
return v;
}
private static transient int getPartialDerivativeIndex(int, int, int[][], int[]) throws oadd.org.apache.commons.math.exception.NumberIsTooLargeException
{
int[][] v;
java.lang.Integer v, v;
int[] v, v;
int v, v, v, v, v, v, v, v, v, v;
oadd.org.apache.commons.math.exception.NumberIsTooLargeException v;
v := @parameter: int;
v := @parameter: int;
v := @parameter: int[][];
v := @parameter: int[];
v = 0;
v = v;
v = 0;
v = v - 1;
label:
if v < 0 goto label;
v = v[v];
v = v + v;
if v <= v goto label;
v = new oadd.org.apache.commons.math.exception.NumberIsTooLargeException;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
specialinvoke v.<oadd.org.apache.commons.math.exception.NumberIsTooLargeException: void <init>(java.lang.Number,java.lang.Number,boolean)>(v, v, 1);
throw v;
label:
v = v;
v = v - 1;
if v <= 0 goto label;
v = v[v];
v = v;
v = v - 1;
v = v[v];
v = v + v;
goto label;
label:
v = v - 1;
goto label;
label:
return v;
}
private static int convertIndex(int, int, int[][], int, int, int[][])
{
int[][] v, v;
int[] v, v;
int v, v, v, v, v, v;
v := @parameter: int;
v := @parameter: int;
v := @parameter: int[][];
v := @parameter: int;
v := @parameter: int;
v := @parameter: int[][];
v = newarray (int)[v];
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: int min(int,int)>(v, v);
staticinvoke <java.lang.System: void arraycopy(java.lang.Object,int,java.lang.Object,int,int)>(v, 0, v, 0, v);
v = staticinvoke <oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int getPartialDerivativeIndex(int,int,int[][],int[])>(v, v, v, v);
return v;
}
public int[] getPartialDerivativeOrders(int)
{
int[][] v;
int[] v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: int;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][] derivativesIndirection>;
v = v[v];
return v;
}
public int getFreeParameters()
{
int v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int parameters>;
return v;
}
public int getOrder()
{
int v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
return v;
}
public int getSize()
{
int[][] v;
int[] v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][] sizes>;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int parameters>;
v = v[v];
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = v[v];
return v;
}
public void linearCombination(double, double[], int, double, double[], int, double[], int)
{
double[] v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v;
double v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v = 0;
label:
v = virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int getSize()>();
if v >= v goto label;
v = v + v;
v = v + v;
v = v[v];
v = v + v;
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.MathArrays: double linearCombination(double,double,double,double)>(v, v, v, v);
v[v] = v;
v = v + 1;
goto label;
label:
return;
}
public void linearCombination(double, double[], int, double, double[], int, double, double[], int, double[], int)
{
double[] v, v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v, v, v;
double v, v, v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v = 0;
label:
v = virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int getSize()>();
if v >= v goto label;
v = v + v;
v = v + v;
v = v[v];
v = v + v;
v = v[v];
v = v + v;
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.MathArrays: double linearCombination(double,double,double,double,double,double)>(v, v, v, v, v, v);
v[v] = v;
v = v + 1;
goto label;
label:
return;
}
public void linearCombination(double, double[], int, double, double[], int, double, double[], int, double, double[], int, double[], int)
{
double[] v, v, v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v, v, v, v, v;
double v, v, v, v, v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v = 0;
label:
v = virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int getSize()>();
if v >= v goto label;
v = v + v;
v = v + v;
v = v[v];
v = v + v;
v = v[v];
v = v + v;
v = v[v];
v = v + v;
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.MathArrays: double linearCombination(double,double,double,double,double,double,double,double)>(v, v, v, v, v, v, v, v);
v[v] = v;
v = v + 1;
goto label;
label:
return;
}
public void add(double[], int, double[], int, double[], int)
{
double[] v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v;
double v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v = 0;
label:
v = virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int getSize()>();
if v >= v goto label;
v = v + v;
v = v + v;
v = v[v];
v = v + v;
v = v[v];
v = v + v;
v[v] = v;
v = v + 1;
goto label;
label:
return;
}
public void subtract(double[], int, double[], int, double[], int)
{
double[] v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v;
double v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v = 0;
label:
v = virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int getSize()>();
if v >= v goto label;
v = v + v;
v = v + v;
v = v[v];
v = v + v;
v = v[v];
v = v - v;
v[v] = v;
v = v + 1;
goto label;
label:
return;
}
public void multiply(double[], int, double[], int, double[], int)
{
int[][] v;
double[] v, v, v;
int[] v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v, v, v, v, v, v;
double v, v, v, v, v;
int[][][] v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v = 0;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][][] multIndirection>;
v = lengthof v;
if v >= v goto label;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][][] multIndirection>;
v = v[v];
v = 0.0;
v = 0;
label:
v = lengthof v;
if v >= v goto label;
v = v[v];
v = v[0];
v = v[v];
v = v[1];
v = v + v;
v = v[v];
v = v * v;
v = v[v];
v = v[2];
v = v + v;
v = v[v];
v = v * v;
v = v + v;
v = v + 1;
goto label;
label:
v = v + v;
v[v] = v;
v = v + 1;
goto label;
label:
return;
}
public void divide(double[], int, double[], int, double[], int)
{
double[] v, v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v = virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int getSize()>();
v = newarray (double)[v];
v = (int) -1;
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void pow(double[],int,int,double[],int)>(v, v, v, v, 0);
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void multiply(double[],int,double[],int,double[],int)>(v, v, v, 0, v, v);
return;
}
public void remainder(double[], int, double[], int, double[], int)
{
double[] v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v;
double v, v, v, v, v, v, v, v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v = v[v];
v = v[v];
v = v % v;
v = v[v];
v = v - v;
v = v[v];
v = v / v;
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double rint(double)>(v);
v[v] = v;
v = 1;
label:
v = virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int getSize()>();
if v >= v goto label;
v = v + v;
v = v + v;
v = v[v];
v = v + v;
v = v[v];
v = v * v;
v = v - v;
v[v] = v;
v = v + 1;
goto label;
label:
return;
}
public void pow(double[], int, double, double[], int)
{
double[] v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v;
double v, v, v, v, v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double;
v := @parameter: double[];
v := @parameter: int;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = 1 + v;
v = newarray (double)[v];
v = v[v];
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = v - v;
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double pow(double,double)>(v, v);
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
label:
if v <= 0 goto label;
v[v] = v;
v = v[v];
v = v * v;
v = v - 1;
goto label;
label:
v[0] = v;
v = v;
v = 1;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v > v goto label;
v = v[v];
v = v * v;
v[v] = v;
v = v - v;
v = v * v;
v = v + 1;
goto label;
label:
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void compose(double[],int,double[],double[],int)>(v, v, v, v, v);
return;
}
public void pow(double[], int, int, double[], int)
{
double[] v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
double v, v, v, v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
if v != 0 goto label;
v[v] = 1.0;
v = v + 1;
v = virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int getSize()>();
v = v + v;
staticinvoke <java.util.Arrays: void fill(double[],int,int,double)>(v, v, v, 0.0);
return;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = 1 + v;
v = newarray (double)[v];
if v <= 0 goto label;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: int min(int,int)>(v, v);
v = v[v];
v = v - v;
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double pow(double,int)>(v, v);
v = v;
label:
if v <= 0 goto label;
v[v] = v;
v = v[v];
v = v * v;
v = v - 1;
goto label;
label:
v[0] = v;
goto label;
label:
v = v[v];
v = 1.0 / v;
v = neg v;
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double pow(double,int)>(v, v);
v = 0;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v > v goto label;
v[v] = v;
v = v * v;
v = v + 1;
goto label;
label:
v = 1;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v > v goto label;
v = v[v];
v = v * v;
v[v] = v;
v = v - v;
v = v * v;
v = v + 1;
goto label;
label:
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void compose(double[],int,double[],double[],int)>(v, v, v, v, v);
return;
}
public void pow(double[], int, double[], int, double[], int)
{
double[] v, v, v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v = virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int getSize()>();
v = newarray (double)[v];
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void log(double[],int,double[],int)>(v, v, v, 0);
v = virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int getSize()>();
v = newarray (double)[v];
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void multiply(double[],int,double[],int,double[],int)>(v, 0, v, v, v, 0);
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void exp(double[],int,double[],int)>(v, 0, v, v);
return;
}
public void rootN(double[], int, int, double[], int)
{
double[] v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v;
double v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = 1 + v;
v = newarray (double)[v];
if v != 2 goto label;
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double sqrt(double)>(v);
v[0] = v;
v = v[0];
v = 0.5 / v;
goto label;
label:
if v != 3 goto label;
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double cbrt(double)>(v);
v[0] = v;
v = v[0];
v = 3.0 * v;
v = v[0];
v = v * v;
v = 1.0 / v;
goto label;
label:
v = v[v];
v = 1.0 / v;
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double pow(double,double)>(v, v);
v[0] = v;
v = v[0];
v = v - 1;
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double pow(double,int)>(v, v);
v = v * v;
v = 1.0 / v;
label:
v = 1.0 / v;
v = v[v];
v = 1.0 / v;
v = 1;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v > v goto label;
v[v] = v;
v = v - v;
v = v * v;
v = v * v;
v = v + 1;
goto label;
label:
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void compose(double[],int,double[],double[],int)>(v, v, v, v, v);
return;
}
public void exp(double[], int, double[], int)
{
double[] v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v;
double v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = 1 + v;
v = newarray (double)[v];
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double exp(double)>(v);
staticinvoke <java.util.Arrays: void fill(double[],double)>(v, v);
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void compose(double[],int,double[],double[],int)>(v, v, v, v, v);
return;
}
public void expm1(double[], int, double[], int)
{
double[] v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v;
double v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = 1 + v;
v = newarray (double)[v];
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double expm1(double)>(v);
v[0] = v;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = 1 + v;
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double exp(double)>(v);
staticinvoke <java.util.Arrays: void fill(double[],int,int,double)>(v, 1, v, v);
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void compose(double[],int,double[],double[],int)>(v, v, v, v, v);
return;
}
public void log(double[], int, double[], int)
{
double[] v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v;
double v, v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = 1 + v;
v = newarray (double)[v];
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double log(double)>(v);
v[0] = v;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v <= 0 goto label;
v = v[v];
v = 1.0 / v;
v = v;
v = 1;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v > v goto label;
v[v] = v;
v = neg v;
v = v * v;
v = v * v;
v = v + 1;
goto label;
label:
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void compose(double[],int,double[],double[],int)>(v, v, v, v, v);
return;
}
public void log1p(double[], int, double[], int)
{
double[] v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v;
double v, v, v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = 1 + v;
v = newarray (double)[v];
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double log1p(double)>(v);
v[0] = v;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v <= 0 goto label;
v = v[v];
v = 1.0 + v;
v = 1.0 / v;
v = v;
v = 1;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v > v goto label;
v[v] = v;
v = neg v;
v = v * v;
v = v * v;
v = v + 1;
goto label;
label:
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void compose(double[],int,double[],double[],int)>(v, v, v, v, v);
return;
}
public void log10(double[], int, double[], int)
{
double[] v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v;
double v, v, v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = 1 + v;
v = newarray (double)[v];
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double log10(double)>(v);
v[0] = v;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v <= 0 goto label;
v = v[v];
v = 1.0 / v;
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double log(double)>(10.0);
v = v / v;
v = 1;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v > v goto label;
v[v] = v;
v = neg v;
v = v * v;
v = v * v;
v = v + 1;
goto label;
label:
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void compose(double[],int,double[],double[],int)>(v, v, v, v, v);
return;
}
public void cos(double[], int, double[], int)
{
double[] v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v;
double v, v, v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = 1 + v;
v = newarray (double)[v];
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double cos(double)>(v);
v[0] = v;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v <= 0 goto label;
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double sin(double)>(v);
v = neg v;
v[1] = v;
v = 2;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v > v goto label;
v = v - 2;
v = v[v];
v = neg v;
v[v] = v;
v = v + 1;
goto label;
label:
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void compose(double[],int,double[],double[],int)>(v, v, v, v, v);
return;
}
public void sin(double[], int, double[], int)
{
double[] v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v;
double v, v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = 1 + v;
v = newarray (double)[v];
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double sin(double)>(v);
v[0] = v;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v <= 0 goto label;
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double cos(double)>(v);
v[1] = v;
v = 2;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v > v goto label;
v = v - 2;
v = v[v];
v = neg v;
v[v] = v;
v = v + 1;
goto label;
label:
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void compose(double[],int,double[],double[],int)>(v, v, v, v, v);
return;
}
public void tan(double[], int, double[], int)
{
double[] v, v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
double v, v, v, v, v, v, v, v, v, v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = 1 + v;
v = newarray (double)[v];
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double tan(double)>(v);
v[0] = v;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v <= 0 goto label;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = v + 2;
v = newarray (double)[v];
v[1] = 1.0;
v = v * v;
v = 1;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v > v goto label;
v = 0.0;
v = v + 1;
v = v[v];
v = v * v;
v[v] = v;
v = v + 1;
label:
if v < 0 goto label;
v = v * v;
v = v[v];
v = v + v;
if v <= 2 goto label;
v = v - 2;
v = v - 1;
v = v - 1;
v = v[v];
v = v * v;
v = v - 3;
v = v - 3;
v = v[v];
v = v * v;
v = v + v;
v[v] = v;
goto label;
label:
if v != 2 goto label;
v = v[1];
v[0] = v;
label:
v = v - 2;
goto label;
label:
v = v & 1;
if v != 0 goto label;
v = v * v;
label:
v[v] = v;
v = v + 1;
goto label;
label:
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void compose(double[],int,double[],double[],int)>(v, v, v, v, v);
return;
}
public void acos(double[], int, double[], int)
{
double[] v, v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
double v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = 1 + v;
v = newarray (double)[v];
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double acos(double)>(v);
v[0] = v;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v <= 0 goto label;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = newarray (double)[v];
v[0] = -1.0;
v = v * v;
v = 1.0 - v;
v = 1.0 / v;
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double sqrt(double)>(v);
v = v[0];
v = v * v;
v[1] = v;
v = 2;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v > v goto label;
v = 0.0;
v = v - 1;
v = v - 1;
v = v - 2;
v = v[v];
v = v * v;
v[v] = v;
v = v - 1;
label:
if v < 0 goto label;
v = v * v;
v = v[v];
v = v + v;
if v <= 2 goto label;
v = v - 2;
v = v - 1;
v = v - 1;
v = v[v];
v = v * v;
v = 2 * v;
v = v - v;
v = v - 3;
v = v[v];
v = v * v;
v = v + v;
v[v] = v;
goto label;
label:
if v != 2 goto label;
v = v[1];
v[0] = v;
label:
v = v - 2;
goto label;
label:
v = v & 1;
if v != 0 goto label;
v = v * v;
label:
v = v * v;
v = v * v;
v[v] = v;
v = v + 1;
goto label;
label:
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void compose(double[],int,double[],double[],int)>(v, v, v, v, v);
return;
}
public void asin(double[], int, double[], int)
{
double[] v, v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
double v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = 1 + v;
v = newarray (double)[v];
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double asin(double)>(v);
v[0] = v;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v <= 0 goto label;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = newarray (double)[v];
v[0] = 1.0;
v = v * v;
v = 1.0 - v;
v = 1.0 / v;
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double sqrt(double)>(v);
v = v[0];
v = v * v;
v[1] = v;
v = 2;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v > v goto label;
v = 0.0;
v = v - 1;
v = v - 1;
v = v - 2;
v = v[v];
v = v * v;
v[v] = v;
v = v - 1;
label:
if v < 0 goto label;
v = v * v;
v = v[v];
v = v + v;
if v <= 2 goto label;
v = v - 2;
v = v - 1;
v = v - 1;
v = v[v];
v = v * v;
v = 2 * v;
v = v - v;
v = v - 3;
v = v[v];
v = v * v;
v = v + v;
v[v] = v;
goto label;
label:
if v != 2 goto label;
v = v[1];
v[0] = v;
label:
v = v - 2;
goto label;
label:
v = v & 1;
if v != 0 goto label;
v = v * v;
label:
v = v * v;
v = v * v;
v[v] = v;
v = v + 1;
goto label;
label:
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void compose(double[],int,double[],double[],int)>(v, v, v, v, v);
return;
}
public void atan(double[], int, double[], int)
{
double[] v, v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
double v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = 1 + v;
v = newarray (double)[v];
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double atan(double)>(v);
v[0] = v;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v <= 0 goto label;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = newarray (double)[v];
v[0] = 1.0;
v = v * v;
v = 1.0 + v;
v = 1.0 / v;
v = v;
v = v[0];
v = v * v;
v[1] = v;
v = 2;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v > v goto label;
v = 0.0;
v = v - 1;
v = neg v;
v = v - 2;
v = v[v];
v = v * v;
v[v] = v;
v = v - 1;
label:
if v < 0 goto label;
v = v * v;
v = v[v];
v = v + v;
if v <= 2 goto label;
v = v - 2;
v = v - 1;
v = v - 1;
v = v[v];
v = v * v;
v = v - 1;
v = 2 * v;
v = v - v;
v = v - 3;
v = v[v];
v = v * v;
v = v + v;
v[v] = v;
goto label;
label:
if v != 2 goto label;
v = v[1];
v[0] = v;
label:
v = v - 2;
goto label;
label:
v = v & 1;
if v != 0 goto label;
v = v * v;
label:
v = v * v;
v = v * v;
v[v] = v;
v = v + 1;
goto label;
label:
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void compose(double[],int,double[],double[],int)>(v, v, v, v, v);
return;
}
public void atan2(double[], int, double[], int, double[], int)
{
double[] v, v, v, v, v;
byte v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v, v, v, v;
double v, v, v, v, v, v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v = virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int getSize()>();
v = newarray (double)[v];
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void multiply(double[],int,double[],int,double[],int)>(v, v, v, v, v, 0);
v = virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int getSize()>();
v = newarray (double)[v];
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void multiply(double[],int,double[],int,double[],int)>(v, v, v, v, v, 0);
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void add(double[],int,double[],int,double[],int)>(v, 0, v, 0, v, 0);
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void rootN(double[],int,int,double[],int)>(v, 0, 2, v, 0);
v = v[v];
v = v cmpl 0.0;
if v < 0 goto label;
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void add(double[],int,double[],int,double[],int)>(v, 0, v, v, v, 0);
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void divide(double[],int,double[],int,double[],int)>(v, v, v, 0, v, 0);
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void atan(double[],int,double[],int)>(v, 0, v, 0);
v = 0;
label:
v = lengthof v;
if v >= v goto label;
v = v + v;
v = v[v];
v = 2.0 * v;
v[v] = v;
v = v + 1;
goto label;
label:
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void subtract(double[],int,double[],int,double[],int)>(v, 0, v, v, v, 0);
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void divide(double[],int,double[],int,double[],int)>(v, v, v, 0, v, 0);
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void atan(double[],int,double[],int)>(v, 0, v, 0);
v = v[0];
v = v cmpg 0.0;
if v > 0 goto label;
v = -3.141592653589793;
goto label;
label:
v = 3.141592653589793;
label:
v = v[0];
v = 2.0 * v;
v = v - v;
v[v] = v;
v = 1;
label:
v = lengthof v;
if v >= v goto label;
v = v + v;
v = v[v];
v = -2.0 * v;
v[v] = v;
v = v + 1;
goto label;
label:
return;
}
public void cosh(double[], int, double[], int)
{
double[] v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v;
double v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = 1 + v;
v = newarray (double)[v];
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double cosh(double)>(v);
v[0] = v;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v <= 0 goto label;
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double sinh(double)>(v);
v[1] = v;
v = 2;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v > v goto label;
v = v - 2;
v = v[v];
v[v] = v;
v = v + 1;
goto label;
label:
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void compose(double[],int,double[],double[],int)>(v, v, v, v, v);
return;
}
public void sinh(double[], int, double[], int)
{
double[] v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v;
double v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = 1 + v;
v = newarray (double)[v];
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double sinh(double)>(v);
v[0] = v;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v <= 0 goto label;
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double cosh(double)>(v);
v[1] = v;
v = 2;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v > v goto label;
v = v - 2;
v = v[v];
v[v] = v;
v = v + 1;
goto label;
label:
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void compose(double[],int,double[],double[],int)>(v, v, v, v, v);
return;
}
public void tanh(double[], int, double[], int)
{
double[] v, v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
double v, v, v, v, v, v, v, v, v, v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = 1 + v;
v = newarray (double)[v];
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double tanh(double)>(v);
v[0] = v;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v <= 0 goto label;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = v + 2;
v = newarray (double)[v];
v[1] = 1.0;
v = v * v;
v = 1;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v > v goto label;
v = 0.0;
v = v + 1;
v = neg v;
v = v[v];
v = v * v;
v[v] = v;
v = v + 1;
label:
if v < 0 goto label;
v = v * v;
v = v[v];
v = v + v;
if v <= 2 goto label;
v = v - 2;
v = v - 1;
v = v - 1;
v = v[v];
v = v * v;
v = v - 3;
v = v - 3;
v = v[v];
v = v * v;
v = v - v;
v[v] = v;
goto label;
label:
if v != 2 goto label;
v = v[1];
v[0] = v;
label:
v = v - 2;
goto label;
label:
v = v & 1;
if v != 0 goto label;
v = v * v;
label:
v[v] = v;
v = v + 1;
goto label;
label:
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void compose(double[],int,double[],double[],int)>(v, v, v, v, v);
return;
}
public void acosh(double[], int, double[], int)
{
double[] v, v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
double v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = 1 + v;
v = newarray (double)[v];
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double acosh(double)>(v);
v[0] = v;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v <= 0 goto label;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = newarray (double)[v];
v[0] = 1.0;
v = v * v;
v = v - 1.0;
v = 1.0 / v;
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double sqrt(double)>(v);
v = v[0];
v = v * v;
v[1] = v;
v = 2;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v > v goto label;
v = 0.0;
v = v - 1;
v = 1 - v;
v = v - 2;
v = v[v];
v = v * v;
v[v] = v;
v = v - 1;
label:
if v < 0 goto label;
v = v * v;
v = v[v];
v = v + v;
if v <= 2 goto label;
v = v - 2;
v = 1 - v;
v = v - 1;
v = v[v];
v = v * v;
v = 2 * v;
v = v - v;
v = v - 3;
v = v[v];
v = v * v;
v = v + v;
v[v] = v;
goto label;
label:
if v != 2 goto label;
v = v[1];
v = neg v;
v[0] = v;
label:
v = v - 2;
goto label;
label:
v = v & 1;
if v != 0 goto label;
v = v * v;
label:
v = v * v;
v = v * v;
v[v] = v;
v = v + 1;
goto label;
label:
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void compose(double[],int,double[],double[],int)>(v, v, v, v, v);
return;
}
public void asinh(double[], int, double[], int)
{
double[] v, v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
double v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = 1 + v;
v = newarray (double)[v];
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double asinh(double)>(v);
v[0] = v;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v <= 0 goto label;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = newarray (double)[v];
v[0] = 1.0;
v = v * v;
v = 1.0 + v;
v = 1.0 / v;
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double sqrt(double)>(v);
v = v[0];
v = v * v;
v[1] = v;
v = 2;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v > v goto label;
v = 0.0;
v = v - 1;
v = 1 - v;
v = v - 2;
v = v[v];
v = v * v;
v[v] = v;
v = v - 1;
label:
if v < 0 goto label;
v = v * v;
v = v[v];
v = v + v;
if v <= 2 goto label;
v = v - 2;
v = v - 1;
v = v - 1;
v = v[v];
v = v * v;
v = 2 * v;
v = v - v;
v = v - 3;
v = v[v];
v = v * v;
v = v + v;
v[v] = v;
goto label;
label:
if v != 2 goto label;
v = v[1];
v[0] = v;
label:
v = v - 2;
goto label;
label:
v = v & 1;
if v != 0 goto label;
v = v * v;
label:
v = v * v;
v = v * v;
v[v] = v;
v = v + 1;
goto label;
label:
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void compose(double[],int,double[],double[],int)>(v, v, v, v, v);
return;
}
public void atanh(double[], int, double[], int)
{
double[] v, v, v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
double v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: int;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = 1 + v;
v = newarray (double)[v];
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double atanh(double)>(v);
v[0] = v;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v <= 0 goto label;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = newarray (double)[v];
v[0] = 1.0;
v = v * v;
v = 1.0 - v;
v = 1.0 / v;
v = v;
v = v[0];
v = v * v;
v[1] = v;
v = 2;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v > v goto label;
v = 0.0;
v = v - 1;
v = v - 2;
v = v[v];
v = v * v;
v[v] = v;
v = v - 1;
label:
if v < 0 goto label;
v = v * v;
v = v[v];
v = v + v;
if v <= 2 goto label;
v = v - 2;
v = v - 1;
v = v - 1;
v = v[v];
v = v * v;
v = 2 * v;
v = v - v;
v = v + 1;
v = v - 3;
v = v[v];
v = v * v;
v = v + v;
v[v] = v;
goto label;
label:
if v != 2 goto label;
v = v[1];
v[0] = v;
label:
v = v - 2;
goto label;
label:
v = v & 1;
if v != 0 goto label;
v = v * v;
label:
v = v * v;
v = v * v;
v[v] = v;
v = v + 1;
goto label;
label:
virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: void compose(double[],int,double[],double[],int)>(v, v, v, v, v);
return;
}
public void compose(double[], int, double[], double[], int)
{
int[][] v;
double[] v, v, v;
int[] v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v, v, v, v, v, v;
double v, v, v, v;
int[][][] v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v := @parameter: double[];
v := @parameter: int;
v = 0;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][][] compIndirection>;
v = lengthof v;
if v >= v goto label;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[][][] compIndirection>;
v = v[v];
v = 0.0;
v = 0;
label:
v = lengthof v;
if v >= v goto label;
v = v[v];
v = v[0];
v = v[1];
v = v[v];
v = v * v;
v = 2;
label:
v = lengthof v;
if v >= v goto label;
v = v[v];
v = v + v;
v = v[v];
v = v * v;
v = v + 1;
goto label;
label:
v = v + v;
v = v + 1;
goto label;
label:
v = v + v;
v[v] = v;
v = v + 1;
goto label;
label:
return;
}
public transient double taylor(double[], int, double[])
{
double[] v, v;
long v;
int[] v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v;
int v, v, v, v, v, v, v, v, v;
double v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: double[];
v := @parameter: int;
v := @parameter: double[];
v = 0.0;
v = virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int getSize()>();
v = v - 1;
label:
if v < 0 goto label;
v = virtualinvoke v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int[] getPartialDerivativeOrders(int)>(v);
v = v + v;
v = v[v];
v = 0;
label:
v = lengthof v;
if v >= v goto label;
v = v[v];
if v <= 0 goto label;
v = v[v];
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double pow(double,int)>(v, v);
v = v[v];
v = staticinvoke <oadd.org.apache.commons.math.util.ArithmeticUtils: long factorial(int)>(v);
v = v / v;
v = v * v;
label:
v = v + 1;
goto label;
label:
v = v + v;
v = v - 1;
goto label;
label:
return v;
}
public void checkCompatibility(oadd.org.apache.commons.math.analysis.differentiation.DSCompiler) throws oadd.org.apache.commons.math.exception.DimensionMismatchException
{
oadd.org.apache.commons.math.exception.DimensionMismatchException v, v;
oadd.org.apache.commons.math.analysis.differentiation.DSCompiler v, v;
int v, v, v, v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v := @parameter: oadd.org.apache.commons.math.analysis.differentiation.DSCompiler;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int parameters>;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int parameters>;
if v == v goto label;
v = new oadd.org.apache.commons.math.exception.DimensionMismatchException;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int parameters>;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int parameters>;
specialinvoke v.<oadd.org.apache.commons.math.exception.DimensionMismatchException: void <init>(int,int)>(v, v);
throw v;
label:
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
if v == v goto label;
v = new oadd.org.apache.commons.math.exception.DimensionMismatchException;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
v = v.<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: int order>;
specialinvoke v.<oadd.org.apache.commons.math.exception.DimensionMismatchException: void <init>(int,int)>(v, v);
throw v;
label:
return;
}
static void <clinit>()
{
java.util.concurrent.atomic.AtomicReference v;
v = new java.util.concurrent.atomic.AtomicReference;
specialinvoke v.<java.util.concurrent.atomic.AtomicReference: void <init>(java.lang.Object)>(null);
<oadd.org.apache.commons.math.analysis.differentiation.DSCompiler: java.util.concurrent.atomic.AtomicReference compilers> = v;
return;
}
}