public class oadd.org.apache.commons.math.random.EmpiricalDistributionImpl extends java.lang.Object implements java.io.Serializable, oadd.org.apache.commons.math.random.EmpiricalDistribution
{
private static final long serialVersionUID;
private final java.util.List binStats;
private oadd.org.apache.commons.math.stat.descriptive.SummaryStatistics sampleStats;
private double max;
private double min;
private double delta;
private final int binCount;
private boolean loaded;
private double[] upperBounds;
private final oadd.org.apache.commons.math.random.RandomData randomData;
public void <init>()
{
oadd.org.apache.commons.math.random.RandomDataImpl v;
oadd.org.apache.commons.math.random.EmpiricalDistributionImpl v;
java.util.ArrayList v;
v := @this: oadd.org.apache.commons.math.random.EmpiricalDistributionImpl;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: oadd.org.apache.commons.math.stat.descriptive.SummaryStatistics sampleStats> = null;
v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: double max> = #-Infinity;
v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: double min> = #Infinity;
v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: double delta> = 0.0;
v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: boolean loaded> = 0;
v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: double[] upperBounds> = null;
v = new oadd.org.apache.commons.math.random.RandomDataImpl;
specialinvoke v.<oadd.org.apache.commons.math.random.RandomDataImpl: void <init>()>();
v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: oadd.org.apache.commons.math.random.RandomData randomData> = v;
v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: int binCount> = 1000;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: java.util.List binStats> = v;
return;
}
public void <init>(int)
{
oadd.org.apache.commons.math.random.RandomDataImpl v;
oadd.org.apache.commons.math.random.EmpiricalDistributionImpl v;
int v;
java.util.ArrayList v;
v := @this: oadd.org.apache.commons.math.random.EmpiricalDistributionImpl;
v := @parameter: int;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: oadd.org.apache.commons.math.stat.descriptive.SummaryStatistics sampleStats> = null;
v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: double max> = #-Infinity;
v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: double min> = #Infinity;
v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: double delta> = 0.0;
v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: boolean loaded> = 0;
v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: double[] upperBounds> = null;
v = new oadd.org.apache.commons.math.random.RandomDataImpl;
specialinvoke v.<oadd.org.apache.commons.math.random.RandomDataImpl: void <init>()>();
v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: oadd.org.apache.commons.math.random.RandomData randomData> = v;
v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: int binCount> = v;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: java.util.List binStats> = v;
return;
}
public void load(double[])
{
oadd.org.apache.commons.math.random.EmpiricalDistributionImpl v;
oadd.org.apache.commons.math.random.EmpiricalDistributionImpl$ArrayDataAdapter v;
double[] v;
java.io.IOException v;
oadd.org.apache.commons.math.MathRuntimeException v;
v := @this: oadd.org.apache.commons.math.random.EmpiricalDistributionImpl;
v := @parameter: double[];
v = new oadd.org.apache.commons.math.random.EmpiricalDistributionImpl$ArrayDataAdapter;
specialinvoke v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl$ArrayDataAdapter: void <init>(oadd.org.apache.commons.math.random.EmpiricalDistributionImpl,double[])>(v, v);
label:
virtualinvoke v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl$DataAdapter: void computeStats()>();
specialinvoke v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: void fillBinStats(java.lang.Object)>(v);
label:
goto label;
label:
v := @caughtexception;
v = new oadd.org.apache.commons.math.MathRuntimeException;
specialinvoke v.<oadd.org.apache.commons.math.MathRuntimeException: void <init>(java.lang.Throwable)>(v);
throw v;
label:
v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: boolean loaded> = 1;
return;
catch java.io.IOException from label to label with label;
}
public void load(java.net.URL) throws java.io.IOException
{
java.lang.Throwable v;
java.lang.Object[] v;
java.net.URL v;
long v;
byte v;
oadd.org.apache.commons.math.exception.util.LocalizedFormats v;
oadd.org.apache.commons.math.random.EmpiricalDistributionImpl$StreamDataAdapter v;
oadd.org.apache.commons.math.stat.descriptive.SummaryStatistics v;
java.io.EOFException v;
java.io.InputStreamReader v, v;
oadd.org.apache.commons.math.random.EmpiricalDistributionImpl v;
java.io.BufferedReader v, v;
java.io.InputStream v, v;
v := @this: oadd.org.apache.commons.math.random.EmpiricalDistributionImpl;
v := @parameter: java.net.URL;
v = new java.io.BufferedReader;
v = new java.io.InputStreamReader;
v = virtualinvoke v.<java.net.URL: java.io.InputStream openStream()>();
specialinvoke v.<java.io.InputStreamReader: void <init>(java.io.InputStream)>(v);
specialinvoke v.<java.io.BufferedReader: void <init>(java.io.Reader)>(v);
label:
v = new oadd.org.apache.commons.math.random.EmpiricalDistributionImpl$StreamDataAdapter;
specialinvoke v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl$StreamDataAdapter: void <init>(oadd.org.apache.commons.math.random.EmpiricalDistributionImpl,java.io.BufferedReader)>(v, v);
virtualinvoke v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl$DataAdapter: void computeStats()>();
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: oadd.org.apache.commons.math.stat.descriptive.SummaryStatistics sampleStats>;
v = virtualinvoke v.<oadd.org.apache.commons.math.stat.descriptive.SummaryStatistics: long getN()>();
v = v cmp 0L;
if v != 0 goto label;
v = <oadd.org.apache.commons.math.exception.util.LocalizedFormats: oadd.org.apache.commons.math.exception.util.LocalizedFormats URL_CONTAINS_NO_DATA>;
v = newarray (java.lang.Object)[1];
v[0] = v;
v = staticinvoke <oadd.org.apache.commons.math.MathRuntimeException: java.io.EOFException createEOFException(oadd.org.apache.commons.math.exception.util.Localizable,java.lang.Object[])>(v, v);
throw v;
label:
v = new java.io.BufferedReader;
v = new java.io.InputStreamReader;
v = virtualinvoke v.<java.net.URL: java.io.InputStream openStream()>();
specialinvoke v.<java.io.InputStreamReader: void <init>(java.io.InputStream)>(v);
specialinvoke v.<java.io.BufferedReader: void <init>(java.io.Reader)>(v);
specialinvoke v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: void fillBinStats(java.lang.Object)>(v);
v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: boolean loaded> = 1;
label:
goto label;
label:
v := @caughtexception;
throw v;
label:
return;
catch java.lang.Throwable from label to label with label;
}
public void load(java.io.File) throws java.io.IOException
{
java.lang.Throwable v;
oadd.org.apache.commons.math.random.EmpiricalDistributionImpl$StreamDataAdapter v;
java.io.File v;
oadd.org.apache.commons.math.random.EmpiricalDistributionImpl v;
java.io.BufferedReader v, v;
java.io.FileReader v, v;
v := @this: oadd.org.apache.commons.math.random.EmpiricalDistributionImpl;
v := @parameter: java.io.File;
v = new java.io.BufferedReader;
v = new java.io.FileReader;
specialinvoke v.<java.io.FileReader: void <init>(java.io.File)>(v);
specialinvoke v.<java.io.BufferedReader: void <init>(java.io.Reader)>(v);
label:
v = new oadd.org.apache.commons.math.random.EmpiricalDistributionImpl$StreamDataAdapter;
specialinvoke v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl$StreamDataAdapter: void <init>(oadd.org.apache.commons.math.random.EmpiricalDistributionImpl,java.io.BufferedReader)>(v, v);
virtualinvoke v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl$DataAdapter: void computeStats()>();
v = new java.io.BufferedReader;
v = new java.io.FileReader;
specialinvoke v.<java.io.FileReader: void <init>(java.io.File)>(v);
specialinvoke v.<java.io.BufferedReader: void <init>(java.io.Reader)>(v);
specialinvoke v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: void fillBinStats(java.lang.Object)>(v);
v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: boolean loaded> = 1;
label:
goto label;
label:
v := @caughtexception;
throw v;
label:
return;
catch java.lang.Throwable from label to label with label;
}
private void fillBinStats(java.lang.Object) throws java.io.IOException
{
oadd.org.apache.commons.math.random.EmpiricalDistributionImpl$DataAdapter v;
boolean v;
oadd.org.apache.commons.math.stat.descriptive.SummaryStatistics v, v, v, v, v;
java.util.List v, v, v, v, v;
oadd.org.apache.commons.math.random.EmpiricalDistributionImpl v;
java.lang.Double v;
double[] v, v, v, v, v;
long v, v, v, v;
int v, v, v, v, v, v, v, v, v, v;
double v, v, v, v, v, v, v, v, v, v, v;
oadd.org.apache.commons.math.random.EmpiricalDistributionImpl$DataAdapterFactory v;
java.lang.Object v, v, v;
v := @this: oadd.org.apache.commons.math.random.EmpiricalDistributionImpl;
v := @parameter: java.lang.Object;
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: oadd.org.apache.commons.math.stat.descriptive.SummaryStatistics sampleStats>;
v = virtualinvoke v.<oadd.org.apache.commons.math.stat.descriptive.SummaryStatistics: double getMin()>();
v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: double min> = v;
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: oadd.org.apache.commons.math.stat.descriptive.SummaryStatistics sampleStats>;
v = virtualinvoke v.<oadd.org.apache.commons.math.stat.descriptive.SummaryStatistics: double getMax()>();
v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: double max> = v;
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: double max>;
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: double min>;
v = v - v;
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: int binCount>;
v = staticinvoke <java.lang.Double: java.lang.Double valueOf(double)>(v);
v = virtualinvoke v.<java.lang.Double: double doubleValue()>();
v = v / v;
v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: double delta> = v;
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: java.util.List binStats>;
v = interfaceinvoke v.<java.util.List: boolean isEmpty()>();
if v != 0 goto label;
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: java.util.List binStats>;
interfaceinvoke v.<java.util.List: void clear()>();
label:
v = 0;
label:
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: int binCount>;
if v >= v goto label;
v = new oadd.org.apache.commons.math.stat.descriptive.SummaryStatistics;
specialinvoke v.<oadd.org.apache.commons.math.stat.descriptive.SummaryStatistics: void <init>()>();
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: java.util.List binStats>;
interfaceinvoke v.<java.util.List: void add(int,java.lang.Object)>(v, v);
v = v + 1;
goto label;
label:
v = new oadd.org.apache.commons.math.random.EmpiricalDistributionImpl$DataAdapterFactory;
specialinvoke v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl$DataAdapterFactory: void <init>(oadd.org.apache.commons.math.random.EmpiricalDistributionImpl)>(v);
v = virtualinvoke v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl$DataAdapterFactory: oadd.org.apache.commons.math.random.EmpiricalDistributionImpl$DataAdapter getAdapter(java.lang.Object)>(v);
virtualinvoke v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl$DataAdapter: void computeBinStats()>();
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: int binCount>;
v = newarray (double)[v];
v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: double[] upperBounds> = v;
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: double[] upperBounds>;
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: java.util.List binStats>;
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(0);
v = virtualinvoke v.<oadd.org.apache.commons.math.stat.descriptive.SummaryStatistics: long getN()>();
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: oadd.org.apache.commons.math.stat.descriptive.SummaryStatistics sampleStats>;
v = virtualinvoke v.<oadd.org.apache.commons.math.stat.descriptive.SummaryStatistics: long getN()>();
v = v / v;
v[0] = v;
v = 1;
label:
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: int binCount>;
v = v - 1;
if v >= v goto label;
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: double[] upperBounds>;
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: double[] upperBounds>;
v = v - 1;
v = v[v];
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: java.util.List binStats>;
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(v);
v = virtualinvoke v.<oadd.org.apache.commons.math.stat.descriptive.SummaryStatistics: long getN()>();
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: oadd.org.apache.commons.math.stat.descriptive.SummaryStatistics sampleStats>;
v = virtualinvoke v.<oadd.org.apache.commons.math.stat.descriptive.SummaryStatistics: long getN()>();
v = v / v;
v = v + v;
v[v] = v;
v = v + 1;
goto label;
label:
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: double[] upperBounds>;
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: int binCount>;
v = v - 1;
v[v] = 1.0;
return;
}
private int findBin(double)
{
oadd.org.apache.commons.math.random.EmpiricalDistributionImpl v;
int v, v, v, v, v;
double v, v, v, v, v, v;
v := @this: oadd.org.apache.commons.math.random.EmpiricalDistributionImpl;
v := @parameter: double;
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: double min>;
v = v - v;
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: double delta>;
v = v / v;
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double ceil(double)>(v);
v = v - 1;
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: int max(int,int)>(v, 0);
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: int binCount>;
v = v - 1;
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: int min(int,int)>(v, v);
return v;
}
public double getNextValue() throws java.lang.IllegalStateException
{
java.lang.IllegalStateException v;
java.lang.Object[] v, v;
double[] v;
long v;
byte v, v, v;
oadd.org.apache.commons.math.random.RandomData v;
int v, v;
oadd.org.apache.commons.math.exception.util.LocalizedFormats v, v;
oadd.org.apache.commons.math.MathRuntimeException v;
boolean v;
double v, v, v, v, v, v, v;
java.util.List v;
oadd.org.apache.commons.math.random.EmpiricalDistributionImpl v;
java.lang.Object v;
v := @this: oadd.org.apache.commons.math.random.EmpiricalDistributionImpl;
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: boolean loaded>;
if v != 0 goto label;
v = <oadd.org.apache.commons.math.exception.util.LocalizedFormats: oadd.org.apache.commons.math.exception.util.LocalizedFormats DISTRIBUTION_NOT_LOADED>;
v = newarray (java.lang.Object)[0];
v = staticinvoke <oadd.org.apache.commons.math.MathRuntimeException: java.lang.IllegalStateException createIllegalStateException(oadd.org.apache.commons.math.exception.util.Localizable,java.lang.Object[])>(v, v);
throw v;
label:
v = staticinvoke <oadd.org.apache.commons.math.util.FastMath: double random()>();
v = 0;
label:
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: int binCount>;
if v >= v goto label;
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: double[] upperBounds>;
v = v[v];
v = v cmpg v;
if v > 0 goto label;
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: java.util.List binStats>;
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(v);
v = virtualinvoke v.<oadd.org.apache.commons.math.stat.descriptive.SummaryStatistics: long getN()>();
v = v cmp 0L;
if v <= 0 goto label;
v = virtualinvoke v.<oadd.org.apache.commons.math.stat.descriptive.SummaryStatistics: double getStandardDeviation()>();
v = v cmpl 0.0;
if v <= 0 goto label;
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: oadd.org.apache.commons.math.random.RandomData randomData>;
v = virtualinvoke v.<oadd.org.apache.commons.math.stat.descriptive.SummaryStatistics: double getMean()>();
v = virtualinvoke v.<oadd.org.apache.commons.math.stat.descriptive.SummaryStatistics: double getStandardDeviation()>();
v = interfaceinvoke v.<oadd.org.apache.commons.math.random.RandomData: double nextGaussian(double,double)>(v, v);
return v;
label:
v = virtualinvoke v.<oadd.org.apache.commons.math.stat.descriptive.SummaryStatistics: double getMean()>();
return v;
label:
v = v + 1;
goto label;
label:
v = new oadd.org.apache.commons.math.MathRuntimeException;
v = <oadd.org.apache.commons.math.exception.util.LocalizedFormats: oadd.org.apache.commons.math.exception.util.LocalizedFormats NO_BIN_SELECTED>;
v = newarray (java.lang.Object)[0];
specialinvoke v.<oadd.org.apache.commons.math.MathRuntimeException: void <init>(oadd.org.apache.commons.math.exception.util.Localizable,java.lang.Object[])>(v, v);
throw v;
}
public oadd.org.apache.commons.math.stat.descriptive.StatisticalSummary getSampleStats()
{
oadd.org.apache.commons.math.stat.descriptive.SummaryStatistics v;
oadd.org.apache.commons.math.random.EmpiricalDistributionImpl v;
v := @this: oadd.org.apache.commons.math.random.EmpiricalDistributionImpl;
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: oadd.org.apache.commons.math.stat.descriptive.SummaryStatistics sampleStats>;
return v;
}
public int getBinCount()
{
int v;
oadd.org.apache.commons.math.random.EmpiricalDistributionImpl v;
v := @this: oadd.org.apache.commons.math.random.EmpiricalDistributionImpl;
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: int binCount>;
return v;
}
public java.util.List getBinStats()
{
java.util.List v;
oadd.org.apache.commons.math.random.EmpiricalDistributionImpl v;
v := @this: oadd.org.apache.commons.math.random.EmpiricalDistributionImpl;
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: java.util.List binStats>;
return v;
}
public double[] getUpperBounds()
{
double[] v;
int v, v, v, v, v, v, v;
double v, v, v, v, v, v, v;
oadd.org.apache.commons.math.random.EmpiricalDistributionImpl v;
v := @this: oadd.org.apache.commons.math.random.EmpiricalDistributionImpl;
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: int binCount>;
v = newarray (double)[v];
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: double min>;
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: double delta>;
v = v + v;
v[0] = v;
v = 1;
label:
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: int binCount>;
v = v - 1;
if v >= v goto label;
v = v - 1;
v = v[v];
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: double delta>;
v = v + v;
v[v] = v;
v = v + 1;
goto label;
label:
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: int binCount>;
v = v - 1;
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: double max>;
v[v] = v;
return v;
}
public double[] getGeneratorUpperBounds()
{
oadd.org.apache.commons.math.random.EmpiricalDistributionImpl v;
double[] v, v, v;
int v;
v := @this: oadd.org.apache.commons.math.random.EmpiricalDistributionImpl;
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: double[] upperBounds>;
v = lengthof v;
v = newarray (double)[v];
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: double[] upperBounds>;
staticinvoke <java.lang.System: void arraycopy(java.lang.Object,int,java.lang.Object,int,int)>(v, 0, v, 0, v);
return v;
}
public boolean isLoaded()
{
oadd.org.apache.commons.math.random.EmpiricalDistributionImpl v;
boolean v;
v := @this: oadd.org.apache.commons.math.random.EmpiricalDistributionImpl;
v = v.<oadd.org.apache.commons.math.random.EmpiricalDistributionImpl: boolean loaded>;
return v;
}
}