jhplot.math
Class Random
- java.lang.Object
-
- jhplot.math.Random
-
public class Random extends java.lang.Object
BSD License
-
-
Field Summary
Fields Modifier and Type Field and Description static RandomSeedable
RandEngine
-
Constructor Summary
Constructors Constructor and Description Random()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method and Description static double
beta(double a, double b)
Generate a random number from a beta random variable.static double
cauchy(double mu, double sigma)
Generate a random number from a Cauchy random variable (Mean = Inf, and Variance = Inf).static double
chi2(int n)
Generate a random number from a Chi-2 random variable.static double
dirac(double[] values, double[] prob)
Generate a random number from a discrete random variable.static double
exponential(double lambda)
Generate a random number from an exponantial random variable (Mean = 1/lambda, variance = 1/lambda^2).static double
logNormal(double mu, double sigma)
Generate a random number from a LogNormal random variable.static double
normal(double mu, double sigma)
Generate a random number from a Gaussian (Normal) random variable.static double
rand()
Generate a random number between 0 and 1.static int
randInt(int i0, int i1)
Generate a random integer.static double
raw()
Generate a random number between 0 and 1.static double
rejection(Expression fun, double maxFun, double min, double max)
Generate a random number from a random variable definied by its density function, using the rejection technic.static double
rejection(Function fun, double maxFun, double min, double max)
Generate a random number from a random variable definied by its density function, using the rejection technic.static double
triangular(double min, double max)
Generate a random number from a symetric triangular random variable.static double
triangular(double min, double med, double max)
Generate a random number from a non-symetric triangular random variable.static double
uniform(double min, double max)
Generate a random number from a uniform random variable.static double
weibull(double lambda, double c)
Generate a random number from a Weibull random variable.
-
-
-
Field Detail
-
RandEngine
public static RandomSeedable RandEngine
-
-
Method Detail
-
rand
public static double rand()
Generate a random number between 0 and 1. maybe changed for a better random number generator if needed.- Returns:
- A double between 0 and 1.
-
raw
public static double raw()
Generate a random number between 0 and 1. maybe changed for a better random number generator if needed.- Returns:
- A double between 0 and 1.
-
randInt
public static int randInt(int i0, int i1)
Generate a random integer.- Parameters:
i0
- Min of the random variable.i1
- Max of the random variable.- Returns:
- An int between i0 and i1.
-
uniform
public static double uniform(double min, double max)
Generate a random number from a uniform random variable.- Parameters:
min
- Min of the random variable.max
- Max of the random variable.- Returns:
- A double.
-
dirac
public static double dirac(double[] values, double[] prob)
Generate a random number from a discrete random variable.- Parameters:
values
- Discrete values.prob
- Probability of each value.- Returns:
- A double.
-
normal
public static double normal(double mu, double sigma)
Generate a random number from a Gaussian (Normal) random variable.- Parameters:
mu
- Mean of the random variable.sigma
- Standard deviation of the random variable.- Returns:
- A double.
-
chi2
public static double chi2(int n)
Generate a random number from a Chi-2 random variable.- Parameters:
n
- Degrees of freedom of the chi2 random variable.- Returns:
- A double.
-
logNormal
public static double logNormal(double mu, double sigma)
Generate a random number from a LogNormal random variable.- Parameters:
mu
- Mean of the Normal random variable.sigma
- Standard deviation of the Normal random variable.- Returns:
- A double.
-
exponential
public static double exponential(double lambda)
Generate a random number from an exponantial random variable (Mean = 1/lambda, variance = 1/lambda^2).- Parameters:
lambda
- Parmaeter of the exponential random variable.- Returns:
- A double.
-
triangular
public static double triangular(double min, double max)
Generate a random number from a symetric triangular random variable.- Parameters:
min
- Min of the random variable.max
- Max of the random variable.- Returns:
- A double.
-
triangular
public static double triangular(double min, double med, double max)
Generate a random number from a non-symetric triangular random variable.- Parameters:
min
- Min of the random variable.med
- Value of the random variable with max density.max
- Max of the random variable.- Returns:
- A double.
-
beta
public static double beta(double a, double b)
Generate a random number from a beta random variable.- Parameters:
a
- First parameter of the Beta random variable.b
- Second parameter of the Beta random variable.- Returns:
- A double.
-
cauchy
public static double cauchy(double mu, double sigma)
Generate a random number from a Cauchy random variable (Mean = Inf, and Variance = Inf).- Parameters:
mu
- Median of the Weibull random variablesigma
- Second parameter of the Cauchy random variable.- Returns:
- A double.
-
weibull
public static double weibull(double lambda, double c)
Generate a random number from a Weibull random variable.- Parameters:
lambda
- First parameter of the Weibull random variable.c
- Second parameter of the Weibull random variable.- Returns:
- A double.
-
rejection
public static double rejection(Function fun, double maxFun, double min, double max)
Generate a random number from a random variable definied by its density function, using the rejection technic. !!! WARNING : this simulation technic can take a very long time !!!- Parameters:
fun
- Density function (may be not normalized) of the random variable.maxFun
- Max of the function.min
- Min of the random variable.max
- Max of the random variable.- Returns:
- A double.
-
rejection
public static double rejection(Expression fun, double maxFun, double min, double max)
Generate a random number from a random variable definied by its density function, using the rejection technic. !!! WARNING : this simulation technic can take a very long time !!!- Parameters:
fun
- Density function (may be not normalized) of the random variable.maxFun
- Max of the function.min
- Min of the random variable.max
- Max of the random variable.- Returns:
- A double.
-
-
DMelt 3.0 © DataMelt by jWork.ORG