List of usage examples for org.apache.commons.math.distribution FDistributionImpl FDistributionImpl
public FDistributionImpl(double numeratorDegreesOfFreedom, double denominatorDegreesOfFreedom)
From source file:geogebra.kernel.statistics.AlgoDistribution.java
FDistribution getFDistribution(double param, double param2) { if (f == null) f = new FDistributionImpl(param, param2); else {//from w w w. ja v a2 s. c om f.setNumeratorDegreesOfFreedom(param); f.setDenominatorDegreesOfFreedom(param2); } return f; }
From source file:edu.utexas.cs.tactex.servercustomers.factoredcustomer.ProbabilityDistribution.java
ProbabilityDistribution(FactoredCustomerService service, Element xml) {
if (null == randomSeedRepo)
randomSeedRepo = (RandomSeedRepo) SpringApplicationContext.getBean("randomSeedRepo");
type = Enum.valueOf(DistType.class, xml.getAttribute("distribution"));
switch (type) {
case POINTMASS:
case DEGENERATE:
param1 = Double.parseDouble(xml.getAttribute("value"));
sampler = new DegenerateSampler(param1);
break;/* w w w .ja v a 2 s . co m*/
case UNIFORM:
param1 = Double.parseDouble(xml.getAttribute("low"));
param2 = Double.parseDouble(xml.getAttribute("high"));
sampler = new UniformSampler(param1, param2);
break;
case INTERVAL:
param1 = Double.parseDouble(xml.getAttribute("mean"));
param2 = Double.parseDouble(xml.getAttribute("stdDev"));
param3 = Double.parseDouble(xml.getAttribute("low"));
param4 = Double.parseDouble(xml.getAttribute("high"));
sampler = new IntervalSampler(param1, param2, param3, param4);
break;
case NORMAL:
case GAUSSIAN:
param1 = Double.parseDouble(xml.getAttribute("mean"));
param2 = Double.parseDouble(xml.getAttribute("stdDev"));
sampler = new ContinuousSampler(new NormalDistributionImpl(param1, param2));
break;
case STDNORMAL:
param1 = 0;
param2 = 1;
sampler = new ContinuousSampler(new NormalDistributionImpl(param1, param2));
break;
case LOGNORMAL:
param1 = Double.parseDouble(xml.getAttribute("expMean"));
param2 = Double.parseDouble(xml.getAttribute("expStdDev"));
sampler = new LogNormalSampler(param1, param2);
break;
case CAUCHY:
param1 = Double.parseDouble(xml.getAttribute("median"));
param2 = Double.parseDouble(xml.getAttribute("scale"));
sampler = new ContinuousSampler(new CauchyDistributionImpl(param1, param2));
break;
case BETA:
param1 = Double.parseDouble(xml.getAttribute("alpha"));
param2 = Double.parseDouble(xml.getAttribute("beta"));
sampler = new ContinuousSampler(new BetaDistributionImpl(param1, param2));
break;
case BINOMIAL:
param1 = Double.parseDouble(xml.getAttribute("trials"));
param2 = Double.parseDouble(xml.getAttribute("success"));
sampler = new DiscreteSampler(new BinomialDistributionImpl((int) param1, param2));
break;
case POISSON:
param1 = Double.parseDouble(xml.getAttribute("lambda"));
sampler = new DiscreteSampler(new PoissonDistributionImpl(param1));
break;
case CHISQUARED:
param1 = Double.parseDouble(xml.getAttribute("dof"));
sampler = new ContinuousSampler(new ChiSquaredDistributionImpl(param1));
break;
case EXPONENTIAL:
param1 = Double.parseDouble(xml.getAttribute("mean"));
sampler = new ContinuousSampler(new ExponentialDistributionImpl(param1));
break;
case GAMMA:
param1 = Double.parseDouble(xml.getAttribute("alpha"));
param2 = Double.parseDouble(xml.getAttribute("beta"));
sampler = new ContinuousSampler(new GammaDistributionImpl(param1, param2));
break;
case WEIBULL:
param1 = Double.parseDouble(xml.getAttribute("alpha"));
param2 = Double.parseDouble(xml.getAttribute("beta"));
sampler = new ContinuousSampler(new WeibullDistributionImpl(param1, param2));
break;
case STUDENT:
param1 = Double.parseDouble(xml.getAttribute("dof"));
sampler = new ContinuousSampler(new TDistributionImpl(param1));
break;
case SNEDECOR:
param1 = Double.parseDouble(xml.getAttribute("d1"));
param2 = Double.parseDouble(xml.getAttribute("d2"));
sampler = new ContinuousSampler(new FDistributionImpl(param1, param2));
break;
default:
throw new Error("Invalid probability distribution type!");
}
sampler.reseedRandomGenerator(service.getRandomSeedRepo()
.getRandomSeed("factoredcustomer.ProbabilityDistribution", SeedIdGenerator.getId(), "Sampler")
.getValue());
}
From source file:geogebra.common.kernel.statistics.AlgoDistribution.java
/** * @param param// w w w . j a v a 2 s . c o m * degrees of freedom (numerator) * @param param2 * degrees of freedom (denominator) * @return F-distribution */ protected FDistribution getFDistribution(double param, double param2) { if (f == null || f.getDenominatorDegreesOfFreedom() != param2 || f.getNumeratorDegreesOfFreedom() != param) f = new FDistributionImpl(param, param2); return f; }
From source file:org.renjin.Distributions.java
public static double df(final double x, final double df1, final double df2, boolean log) { return d(new FDistributionImpl(df1, df2), x, log); }
From source file:org.renjin.Distributions.java
public static double pf(final double q, final double df1, final double df2, boolean lowerTail, boolean logP) { return p(new FDistributionImpl(df1, df2), q, lowerTail, logP); }
From source file:org.renjin.Distributions.java
public static double qf(final double p, final double df1, final double df2, boolean lowerTail, boolean logP) { return q(new FDistributionImpl(df1, df2), p, lowerTail, logP); }
From source file:org.renjin.primitives.random.Distributions.java
public static double df(@Recycle double x, @Recycle double df1, @Recycle double df2, boolean log) { return d(new FDistributionImpl(df1, df2), x, log); }
From source file:org.renjin.primitives.random.Distributions.java
public static double pf(@Recycle double q, @Recycle double df1, @Recycle double df2, boolean lowerTail, boolean logP) { return p(new FDistributionImpl(df1, df2), q, lowerTail, logP); }
From source file:org.renjin.primitives.random.Distributions.java
public static double qf(@Recycle double p, @Recycle double df1, @Recycle double df2, boolean lowerTail, boolean logP) { return q(new FDistributionImpl(df1, df2), p, lowerTail, logP); }
From source file:org.renjin.stats.internals.Distributions.java
@DataParallel @Internal//from w w w . j a va 2 s .com public static double df(@Recycle double x, @Recycle double df1, @Recycle double df2, boolean log) { return d(new FDistributionImpl(df1, df2), x, log); }