org.apache.commons.math3.exception.MathArithmeticException Java Examples
The following examples show how to use
org.apache.commons.math3.exception.MathArithmeticException.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: Arja_00170_s.java From coming with MIT License | 6 votes |
/** * Create a discrete distribution using the given random number generator * and probability mass function definition. * * @param rng random number generator. * @param samples definition of probability mass function in the format of * list of pairs. * @throws NotPositiveException if probability of at least one value is * negative. * @throws MathArithmeticException if the probabilities sum to zero. * @throws MathIllegalArgumentException if probability of at least one value * is infinite. */ public DiscreteDistribution(final RandomGenerator rng, final List<Pair<T, Double>> samples) throws NotPositiveException, MathArithmeticException, MathIllegalArgumentException { random = rng; singletons = new ArrayList<T>(samples.size()); final double[] probs = new double[samples.size()]; for (int i = 0; i < samples.size(); i++) { final Pair<T, Double> sample = samples.get(i); singletons.add(sample.getKey()); if (sample.getValue() < 0) { throw new NotPositiveException(sample.getValue()); } probs[i] = sample.getValue(); } probabilities = MathArrays.normalizeArray(probs, 1.0); }
Example #2
Source File: Cardumen_00110_t.java From coming with MIT License | 6 votes |
/** Compute the angular separation between two vectors. * <p>This method computes the angular separation between two * vectors using the dot product for well separated vectors and the * cross product for almost aligned vectors. This allows to have a * good accuracy in all cases, even for vectors very close to each * other.</p> * @param v1 first vector * @param v2 second vector * @return angular separation between v1 and v2 * @exception MathArithmeticException if either vector has a null norm */ public static double angle(Vector3D v1, Vector3D v2) { double normProduct = v1.getNorm() * v2.getNorm(); if (normProduct == 0) { throw new MathArithmeticException(LocalizedFormats.ZERO_NORM); } double dot = v1.dotProduct(v2); double threshold = normProduct * 0.9999; if ((dot < -threshold) || (dot > threshold)) { // the vectors are almost aligned, compute using the sine Vector3D v3 = crossProduct(v1, v2); if (dot >= 0) { return FastMath.asin(v3.getNorm() / normProduct); } return FastMath.PI - FastMath.asin(v3.getNorm() / normProduct); } // the vectors are sufficiently separated to use the cosine return FastMath.acos(dot / normProduct); }
Example #3
Source File: 1_DiscreteDistribution.java From SimFix with GNU General Public License v2.0 | 6 votes |
/** * Create a discrete distribution using the given random number generator * and probability mass function definition. * * @param rng random number generator. * @param samples definition of probability mass function in the format of * list of pairs. * @throws NotPositiveException if probability of at least one value is * negative. * @throws MathArithmeticException if the probabilities sum to zero. * @throws MathIllegalArgumentException if probability of at least one value * is infinite. */ public DiscreteDistribution(final RandomGenerator rng, final List<Pair<T, Double>> samples) throws NotPositiveException, MathArithmeticException, MathIllegalArgumentException { random = rng; singletons = new ArrayList<T>(samples.size()); final double[] probs = new double[samples.size()]; for (int i = 0; i < samples.size(); i++) { final Pair<T, Double> sample = samples.get(i); singletons.add(sample.getKey()); if (sample.getValue() < 0) { throw new NotPositiveException(sample.getValue()); } probs[i] = sample.getValue(); } probabilities = MathArrays.normalizeArray(probs, 1.0); }
Example #4
Source File: Cardumen_0040_s.java From coming with MIT License | 6 votes |
/** Compute the angular separation between two vectors. * <p>This method computes the angular separation between two * vectors using the dot product for well separated vectors and the * cross product for almost aligned vectors. This allows to have a * good accuracy in all cases, even for vectors very close to each * other.</p> * @param v1 first vector * @param v2 second vector * @return angular separation between v1 and v2 * @exception MathArithmeticException if either vector has a null norm */ public static double angle(Vector3D v1, Vector3D v2) { double normProduct = v1.getNorm() * v2.getNorm(); if (normProduct == 0) { throw new MathArithmeticException(LocalizedFormats.ZERO_NORM); } double dot = v1.dotProduct(v2); double threshold = normProduct * 0.9999; if ((dot < -threshold) || (dot > threshold)) { // the vectors are almost aligned, compute using the sine Vector3D v3 = crossProduct(v1, v2); if (dot >= 0) { return FastMath.asin(v3.getNorm() / normProduct); } return FastMath.PI - FastMath.asin(v3.getNorm() / normProduct); } // the vectors are sufficiently separated to use the cosine return FastMath.acos(dot / normProduct); }
Example #5
Source File: Arja_00158_s.java From coming with MIT License | 6 votes |
/** * Create a discrete distribution using the given random number generator * and probability mass function definition. * * @param rng random number generator. * @param samples definition of probability mass function in the format of * list of pairs. * @throws NotPositiveException if probability of at least one value is * negative. * @throws MathArithmeticException if the probabilities sum to zero. * @throws MathIllegalArgumentException if probability of at least one value * is infinite. */ public DiscreteDistribution(final RandomGenerator rng, final List<Pair<T, Double>> samples) throws NotPositiveException, MathArithmeticException, MathIllegalArgumentException { random = rng; singletons = new ArrayList<T>(samples.size()); final double[] probs = new double[samples.size()]; for (int i = 0; i < samples.size(); i++) { final Pair<T, Double> sample = samples.get(i); singletons.add(sample.getKey()); if (sample.getValue() < 0) { throw new NotPositiveException(sample.getValue()); } probs[i] = sample.getValue(); } probabilities = MathArrays.normalizeArray(probs, 1.0); }
Example #6
Source File: JGenProg2017_0035_s.java From coming with MIT License | 6 votes |
/** * Create a discrete distribution using the given random number generator * and probability mass function definition. * * @param rng random number generator. * @param samples definition of probability mass function in the format of * list of pairs. * @throws NotPositiveException if probability of at least one value is * negative. * @throws MathArithmeticException if the probabilities sum to zero. * @throws MathIllegalArgumentException if probability of at least one value * is infinite. */ public DiscreteDistribution(final RandomGenerator rng, final List<Pair<T, Double>> samples) throws NotPositiveException, MathArithmeticException, MathIllegalArgumentException { random = rng; singletons = new ArrayList<T>(samples.size()); final double[] probs = new double[samples.size()]; for (int i = 0; i < samples.size(); i++) { final Pair<T, Double> sample = samples.get(i); singletons.add(sample.getKey()); if (sample.getValue() < 0) { throw new NotPositiveException(sample.getValue()); } probs[i] = sample.getValue(); } probabilities = MathArrays.normalizeArray(probs, 1.0); }
Example #7
Source File: JGenProg2017_0070_t.java From coming with MIT License | 6 votes |
/** * Create a discrete distribution using the given random number generator * and probability mass function definition. * * @param rng random number generator. * @param samples definition of probability mass function in the format of * list of pairs. * @throws NotPositiveException if probability of at least one value is * negative. * @throws MathArithmeticException if the probabilities sum to zero. * @throws MathIllegalArgumentException if probability of at least one value * is infinite. */ public DiscreteDistribution(final RandomGenerator rng, final List<Pair<T, Double>> samples) throws NotPositiveException, MathArithmeticException, MathIllegalArgumentException { random = rng; singletons = new ArrayList<T>(samples.size()); final double[] probs = new double[samples.size()]; for (int i = 0; i < samples.size(); i++) { final Pair<T, Double> sample = samples.get(i); singletons.add(sample.getKey()); if (sample.getValue() < 0) { throw new NotPositiveException(sample.getValue()); } probs[i] = sample.getValue(); } probabilities = MathArrays.normalizeArray(probs, 1.0); }
Example #8
Source File: JGenProg2017_0070_s.java From coming with MIT License | 6 votes |
/** * Create a discrete distribution using the given random number generator * and probability mass function definition. * * @param rng random number generator. * @param samples definition of probability mass function in the format of * list of pairs. * @throws NotPositiveException if probability of at least one value is * negative. * @throws MathArithmeticException if the probabilities sum to zero. * @throws MathIllegalArgumentException if probability of at least one value * is infinite. */ public DiscreteDistribution(final RandomGenerator rng, final List<Pair<T, Double>> samples) throws NotPositiveException, MathArithmeticException, MathIllegalArgumentException { random = rng; singletons = new ArrayList<T>(samples.size()); final double[] probs = new double[samples.size()]; for (int i = 0; i < samples.size(); i++) { final Pair<T, Double> sample = samples.get(i); singletons.add(sample.getKey()); if (sample.getValue() < 0) { throw new NotPositiveException(sample.getValue()); } probs[i] = sample.getValue(); } probabilities = MathArrays.normalizeArray(probs, 1.0); }
Example #9
Source File: 1_DiscreteDistribution.java From SimFix with GNU General Public License v2.0 | 6 votes |
/** * Create a discrete distribution using the given random number generator * and probability mass function definition. * * @param rng random number generator. * @param samples definition of probability mass function in the format of * list of pairs. * @throws NotPositiveException if probability of at least one value is * negative. * @throws MathArithmeticException if the probabilities sum to zero. * @throws MathIllegalArgumentException if probability of at least one value * is infinite. */ public DiscreteDistribution(final RandomGenerator rng, final List<Pair<T, Double>> samples) throws NotPositiveException, MathArithmeticException, MathIllegalArgumentException { random = rng; singletons = new ArrayList<T>(samples.size()); final double[] probs = new double[samples.size()]; for (int i = 0; i < samples.size(); i++) { final Pair<T, Double> sample = samples.get(i); singletons.add(sample.getKey()); if (sample.getValue() < 0) { throw new NotPositiveException(sample.getValue()); } probs[i] = sample.getValue(); } probabilities = MathArrays.normalizeArray(probs, 1.0); }
Example #10
Source File: JGenProg2017_0061_s.java From coming with MIT License | 6 votes |
/** Compute the angular separation between two vectors. * <p>This method computes the angular separation between two * vectors using the dot product for well separated vectors and the * cross product for almost aligned vectors. This allows to have a * good accuracy in all cases, even for vectors very close to each * other.</p> * @param v1 first vector * @param v2 second vector * @return angular separation between v1 and v2 * @exception MathArithmeticException if either vector has a null norm */ public static double angle(Vector3D v1, Vector3D v2) { double normProduct = v1.getNorm() * v2.getNorm(); if (normProduct == 0) { throw new MathArithmeticException(LocalizedFormats.ZERO_NORM); } double dot = v1.dotProduct(v2); double threshold = normProduct * 0.9999; if ((dot < -threshold) || (dot > threshold)) { // the vectors are almost aligned, compute using the sine Vector3D v3 = crossProduct(v1, v2); if (dot >= 0) { return FastMath.asin(v3.getNorm() / normProduct); } return FastMath.PI - FastMath.asin(v3.getNorm() / normProduct); } // the vectors are sufficiently separated to use the cosine return FastMath.acos(dot / normProduct); }
Example #11
Source File: 1_Vector3D.java From SimFix with GNU General Public License v2.0 | 6 votes |
/** Compute the angular separation between two vectors. * <p>This method computes the angular separation between two * vectors using the dot product for well separated vectors and the * cross product for almost aligned vectors. This allows to have a * good accuracy in all cases, even for vectors very close to each * other.</p> * @param v1 first vector * @param v2 second vector * @return angular separation between v1 and v2 * @exception MathArithmeticException if either vector has a null norm */ public static double angle(Vector3D v1, Vector3D v2) throws MathArithmeticException { double normProduct = v1.getNorm() * v2.getNorm(); if (normProduct == 0) { throw new MathArithmeticException(LocalizedFormats.ZERO_NORM); } double dot = v1.dotProduct(v2); double threshold = normProduct * 0.9999; if ((dot < -threshold) || (dot > threshold)) { // the vectors are almost aligned, compute using the sine Vector3D v3 = crossProduct(v1, v2); if (dot >= 0) { return FastMath.asin(v3.getNorm() / normProduct); } return FastMath.PI - FastMath.asin(v3.getNorm() / normProduct); } // the vectors are sufficiently separated to use the cosine return FastMath.acos(dot / normProduct); }
Example #12
Source File: JGenProg2017_0035_t.java From coming with MIT License | 6 votes |
/** * Create a discrete distribution using the given random number generator * and probability mass function definition. * * @param rng random number generator. * @param samples definition of probability mass function in the format of * list of pairs. * @throws NotPositiveException if probability of at least one value is * negative. * @throws MathArithmeticException if the probabilities sum to zero. * @throws MathIllegalArgumentException if probability of at least one value * is infinite. */ public DiscreteDistribution(final RandomGenerator rng, final List<Pair<T, Double>> samples) throws NotPositiveException, MathArithmeticException, MathIllegalArgumentException { random = rng; singletons = new ArrayList<T>(samples.size()); final double[] probs = new double[samples.size()]; for (int i = 0; i < samples.size(); i++) { final Pair<T, Double> sample = samples.get(i); singletons.add(sample.getKey()); if (sample.getValue() < 0) { throw new NotPositiveException(sample.getValue()); } probs[i] = sample.getValue(); } probabilities = MathArrays.normalizeArray(probs, 1.0); }
Example #13
Source File: StrassenMatrix.java From yuzhouwan with Apache License 2.0 | 6 votes |
public double[][] beforeStrassen(double[][] matrixA, double[][] matrixB) { if (matrixA.length < 1) { throw new RuntimeException("Cannot input a empty matrix"); } int sameSize = matrixA[0].length; int sameSize2 = matrixB.length; if (sameSize != sameSize2) { throw new MathArithmeticException(); } int rowSize = matrixA.length; int cloSize = matrixB[0].length; double[][] matrixC = new double[rowSize][cloSize]; return matrixC; }
Example #14
Source File: Arja_00158_t.java From coming with MIT License | 6 votes |
/** * Create a discrete distribution using the given random number generator * and probability mass function definition. * * @param rng random number generator. * @param samples definition of probability mass function in the format of * list of pairs. * @throws NotPositiveException if probability of at least one value is * negative. * @throws MathArithmeticException if the probabilities sum to zero. * @throws MathIllegalArgumentException if probability of at least one value * is infinite. */ public DiscreteDistribution(final RandomGenerator rng, final List<Pair<T, Double>> samples) throws NotPositiveException, MathArithmeticException, MathIllegalArgumentException { random = rng; singletons = new ArrayList<T>(samples.size()); final double[] probs = new double[samples.size()]; for (int i = 0; i < samples.size(); i++) { final Pair<T, Double> sample = samples.get(i); singletons.add(sample.getKey()); if (sample.getValue() < 0) { throw new NotPositiveException(sample.getValue()); } probs[i] = sample.getValue(); } probabilities = MathArrays.normalizeArray(probs, 1.0); }
Example #15
Source File: Arja_00170_t.java From coming with MIT License | 6 votes |
/** * Create a discrete distribution using the given random number generator * and probability mass function definition. * * @param rng random number generator. * @param samples definition of probability mass function in the format of * list of pairs. * @throws NotPositiveException if probability of at least one value is * negative. * @throws MathArithmeticException if the probabilities sum to zero. * @throws MathIllegalArgumentException if probability of at least one value * is infinite. */ public DiscreteDistribution(final RandomGenerator rng, final List<Pair<T, Double>> samples) throws NotPositiveException, MathArithmeticException, MathIllegalArgumentException { random = rng; singletons = new ArrayList<T>(samples.size()); final double[] probs = new double[samples.size()]; for (int i = 0; i < samples.size(); i++) { final Pair<T, Double> sample = samples.get(i); singletons.add(sample.getKey()); if (sample.getValue() < 0) { throw new NotPositiveException(sample.getValue()); } probs[i] = sample.getValue(); } probabilities = MathArrays.normalizeArray(probs, 1.0); }
Example #16
Source File: Cardumen_00127_s.java From coming with MIT License | 6 votes |
/** * Create a discrete distribution using the given random number generator * and probability mass function definition. * * @param rng random number generator. * @param samples definition of probability mass function in the format of * list of pairs. * @throws NotPositiveException if probability of at least one value is * negative. * @throws MathArithmeticException if the probabilities sum to zero. * @throws MathIllegalArgumentException if probability of at least one value * is infinite. */ public DiscreteDistribution(final RandomGenerator rng, final List<Pair<T, Double>> samples) throws NotPositiveException, MathArithmeticException, MathIllegalArgumentException { random = rng; singletons = new ArrayList<T>(samples.size()); final double[] probs = new double[samples.size()]; for (int i = 0; i < samples.size(); i++) { final Pair<T, Double> sample = samples.get(i); singletons.add(sample.getKey()); if (sample.getValue() < 0) { throw new NotPositiveException(sample.getValue()); } probs[i] = sample.getValue(); } probabilities = MathArrays.normalizeArray(probs, 1.0); }
Example #17
Source File: Arja_00144_s.java From coming with MIT License | 6 votes |
/** * Create a discrete distribution using the given random number generator * and probability mass function definition. * * @param rng random number generator. * @param samples definition of probability mass function in the format of * list of pairs. * @throws NotPositiveException if probability of at least one value is * negative. * @throws MathArithmeticException if the probabilities sum to zero. * @throws MathIllegalArgumentException if probability of at least one value * is infinite. */ public DiscreteDistribution(final RandomGenerator rng, final List<Pair<T, Double>> samples) throws NotPositiveException, MathArithmeticException, MathIllegalArgumentException { random = rng; singletons = new ArrayList<T>(samples.size()); final double[] probs = new double[samples.size()]; for (int i = 0; i < samples.size(); i++) { final Pair<T, Double> sample = samples.get(i); singletons.add(sample.getKey()); if (sample.getValue() < 0) { throw new NotPositiveException(sample.getValue()); } probs[i] = sample.getValue(); } probabilities = MathArrays.normalizeArray(probs, 1.0); }
Example #18
Source File: Arja_00144_t.java From coming with MIT License | 6 votes |
/** * Create a discrete distribution using the given random number generator * and probability mass function definition. * * @param rng random number generator. * @param samples definition of probability mass function in the format of * list of pairs. * @throws NotPositiveException if probability of at least one value is * negative. * @throws MathArithmeticException if the probabilities sum to zero. * @throws MathIllegalArgumentException if probability of at least one value * is infinite. */ public DiscreteDistribution(final RandomGenerator rng, final List<Pair<T, Double>> samples) throws NotPositiveException, MathArithmeticException, MathIllegalArgumentException { random = rng; singletons = new ArrayList<T>(samples.size()); final double[] probs = new double[samples.size()]; for (int i = 0; i < samples.size(); i++) { final Pair<T, Double> sample = samples.get(i); singletons.add(sample.getKey()); if (sample.getValue() < 0) { throw new NotPositiveException(sample.getValue()); } probs[i] = sample.getValue(); } probabilities = MathArrays.normalizeArray(probs, 1.0); }
Example #19
Source File: Cardumen_00179_s.java From coming with MIT License | 6 votes |
/** * Create a discrete distribution using the given random number generator * and probability mass function definition. * * @param rng random number generator. * @param samples definition of probability mass function in the format of * list of pairs. * @throws NotPositiveException if probability of at least one value is * negative. * @throws MathArithmeticException if the probabilities sum to zero. * @throws MathIllegalArgumentException if probability of at least one value * is infinite. */ public DiscreteDistribution(final RandomGenerator rng, final List<Pair<T, Double>> samples) throws NotPositiveException, MathArithmeticException, MathIllegalArgumentException { random = rng; singletons = new ArrayList<T>(samples.size()); final double[] probs = new double[samples.size()]; for (int i = 0; i < samples.size(); i++) { final Pair<T, Double> sample = samples.get(i); singletons.add(sample.getKey()); if (sample.getValue() < 0) { throw new NotPositiveException(sample.getValue()); } probs[i] = sample.getValue(); } probabilities = MathArrays.normalizeArray(probs, 1.0); }
Example #20
Source File: Arja_00127_t.java From coming with MIT License | 6 votes |
/** * Create a discrete distribution using the given random number generator * and probability mass function definition. * * @param rng random number generator. * @param samples definition of probability mass function in the format of * list of pairs. * @throws NotPositiveException if probability of at least one value is * negative. * @throws MathArithmeticException if the probabilities sum to zero. * @throws MathIllegalArgumentException if probability of at least one value * is infinite. */ public DiscreteDistribution(final RandomGenerator rng, final List<Pair<T, Double>> samples) throws NotPositiveException, MathArithmeticException, MathIllegalArgumentException { random = rng; singletons = new ArrayList<T>(samples.size()); final double[] probs = new double[samples.size()]; for (int i = 0; i < samples.size(); i++) { final Pair<T, Double> sample = samples.get(i); singletons.add(sample.getKey()); if (sample.getValue() < 0) { throw new NotPositiveException(sample.getValue()); } probs[i] = sample.getValue(); } probabilities = MathArrays.normalizeArray(probs, 1.0); }
Example #21
Source File: Cardumen_00272_t.java From coming with MIT License | 6 votes |
/** * Create a discrete distribution using the given random number generator * and probability mass function definition. * * @param rng random number generator. * @param samples definition of probability mass function in the format of * list of pairs. * @throws NotPositiveException if probability of at least one value is * negative. * @throws MathArithmeticException if the probabilities sum to zero. * @throws MathIllegalArgumentException if probability of at least one value * is infinite. */ public DiscreteDistribution(final RandomGenerator rng, final List<Pair<T, Double>> samples) throws NotPositiveException, MathArithmeticException, MathIllegalArgumentException { random = rng; singletons = new ArrayList<T>(samples.size()); final double[] probs = new double[samples.size()]; for (int i = 0; i < samples.size(); i++) { final Pair<T, Double> sample = samples.get(i); singletons.add(sample.getKey()); if (sample.getValue() < 0) { throw new NotPositiveException(sample.getValue()); } probs[i] = sample.getValue(); } probabilities = MathArrays.normalizeArray(probs, 1.0); }
Example #22
Source File: Arja_00127_s.java From coming with MIT License | 6 votes |
/** * Create a discrete distribution using the given random number generator * and probability mass function definition. * * @param rng random number generator. * @param samples definition of probability mass function in the format of * list of pairs. * @throws NotPositiveException if probability of at least one value is * negative. * @throws MathArithmeticException if the probabilities sum to zero. * @throws MathIllegalArgumentException if probability of at least one value * is infinite. */ public DiscreteDistribution(final RandomGenerator rng, final List<Pair<T, Double>> samples) throws NotPositiveException, MathArithmeticException, MathIllegalArgumentException { random = rng; singletons = new ArrayList<T>(samples.size()); final double[] probs = new double[samples.size()]; for (int i = 0; i < samples.size(); i++) { final Pair<T, Double> sample = samples.get(i); singletons.add(sample.getKey()); if (sample.getValue() < 0) { throw new NotPositiveException(sample.getValue()); } probs[i] = sample.getValue(); } probabilities = MathArrays.normalizeArray(probs, 1.0); }
Example #23
Source File: Math_8_DiscreteDistribution_t.java From coming with MIT License | 6 votes |
/** * Create a discrete distribution using the given random number generator * and probability mass function definition. * * @param rng random number generator. * @param samples definition of probability mass function in the format of * list of pairs. * @throws NotPositiveException if probability of at least one value is * negative. * @throws MathArithmeticException if the probabilities sum to zero. * @throws MathIllegalArgumentException if probability of at least one value * is infinite. */ public DiscreteDistribution(final RandomGenerator rng, final List<Pair<T, Double>> samples) throws NotPositiveException, MathArithmeticException, MathIllegalArgumentException { random = rng; singletons = new ArrayList<T>(samples.size()); final double[] probs = new double[samples.size()]; for (int i = 0; i < samples.size(); i++) { final Pair<T, Double> sample = samples.get(i); singletons.add(sample.getKey()); if (sample.getValue() < 0) { throw new NotPositiveException(sample.getValue()); } probs[i] = sample.getValue(); } probabilities = MathArrays.normalizeArray(probs, 1.0); }
Example #24
Source File: Arja_0085_s.java From coming with MIT License | 6 votes |
/** * Create a discrete distribution using the given random number generator * and probability mass function definition. * * @param rng random number generator. * @param samples definition of probability mass function in the format of * list of pairs. * @throws NotPositiveException if probability of at least one value is * negative. * @throws MathArithmeticException if the probabilities sum to zero. * @throws MathIllegalArgumentException if probability of at least one value * is infinite. */ public DiscreteDistribution(final RandomGenerator rng, final List<Pair<T, Double>> samples) throws NotPositiveException, MathArithmeticException, MathIllegalArgumentException { random = rng; singletons = new ArrayList<T>(samples.size()); final double[] probs = new double[samples.size()]; for (int i = 0; i < samples.size(); i++) { final Pair<T, Double> sample = samples.get(i); singletons.add(sample.getKey()); if (sample.getValue() < 0) { throw new NotPositiveException(sample.getValue()); } probs[i] = sample.getValue(); } probabilities = MathArrays.normalizeArray(probs, 1.0); }
Example #25
Source File: Cardumen_00272_s.java From coming with MIT License | 6 votes |
/** * Create a discrete distribution using the given random number generator * and probability mass function definition. * * @param rng random number generator. * @param samples definition of probability mass function in the format of * list of pairs. * @throws NotPositiveException if probability of at least one value is * negative. * @throws MathArithmeticException if the probabilities sum to zero. * @throws MathIllegalArgumentException if probability of at least one value * is infinite. */ public DiscreteDistribution(final RandomGenerator rng, final List<Pair<T, Double>> samples) throws NotPositiveException, MathArithmeticException, MathIllegalArgumentException { random = rng; singletons = new ArrayList<T>(samples.size()); final double[] probs = new double[samples.size()]; for (int i = 0; i < samples.size(); i++) { final Pair<T, Double> sample = samples.get(i); singletons.add(sample.getKey()); if (sample.getValue() < 0) { throw new NotPositiveException(sample.getValue()); } probs[i] = sample.getValue(); } probabilities = MathArrays.normalizeArray(probs, 1.0); }
Example #26
Source File: Arja_00108_t.java From coming with MIT License | 6 votes |
/** * Create a discrete distribution using the given random number generator * and probability mass function definition. * * @param rng random number generator. * @param samples definition of probability mass function in the format of * list of pairs. * @throws NotPositiveException if probability of at least one value is * negative. * @throws MathArithmeticException if the probabilities sum to zero. * @throws MathIllegalArgumentException if probability of at least one value * is infinite. */ public DiscreteDistribution(final RandomGenerator rng, final List<Pair<T, Double>> samples) throws NotPositiveException, MathArithmeticException, MathIllegalArgumentException { random = rng; singletons = new ArrayList<T>(samples.size()); final double[] probs = new double[samples.size()]; for (int i = 0; i < samples.size(); i++) { final Pair<T, Double> sample = samples.get(i); singletons.add(sample.getKey()); if (sample.getValue() < 0) { throw new NotPositiveException(sample.getValue()); } probs[i] = sample.getValue(); } probabilities = MathArrays.normalizeArray(probs, 1.0); }
Example #27
Source File: Cardumen_00229_t.java From coming with MIT License | 6 votes |
/** * Create a discrete distribution using the given random number generator * and probability mass function definition. * * @param rng random number generator. * @param samples definition of probability mass function in the format of * list of pairs. * @throws NotPositiveException if probability of at least one value is * negative. * @throws MathArithmeticException if the probabilities sum to zero. * @throws MathIllegalArgumentException if probability of at least one value * is infinite. */ public DiscreteDistribution(final RandomGenerator rng, final List<Pair<T, Double>> samples) throws NotPositiveException, MathArithmeticException, MathIllegalArgumentException { random = rng; singletons = new ArrayList<T>(samples.size()); final double[] probs = new double[samples.size()]; for (int i = 0; i < samples.size(); i++) { final Pair<T, Double> sample = samples.get(i); singletons.add(sample.getKey()); if (sample.getValue() < 0) { throw new NotPositiveException(sample.getValue()); } probs[i] = sample.getValue(); } probabilities = MathArrays.normalizeArray(probs, 1.0); }
Example #28
Source File: Arja_00108_s.java From coming with MIT License | 6 votes |
/** * Create a discrete distribution using the given random number generator * and probability mass function definition. * * @param rng random number generator. * @param samples definition of probability mass function in the format of * list of pairs. * @throws NotPositiveException if probability of at least one value is * negative. * @throws MathArithmeticException if the probabilities sum to zero. * @throws MathIllegalArgumentException if probability of at least one value * is infinite. */ public DiscreteDistribution(final RandomGenerator rng, final List<Pair<T, Double>> samples) throws NotPositiveException, MathArithmeticException, MathIllegalArgumentException { random = rng; singletons = new ArrayList<T>(samples.size()); final double[] probs = new double[samples.size()]; for (int i = 0; i < samples.size(); i++) { final Pair<T, Double> sample = samples.get(i); singletons.add(sample.getKey()); if (sample.getValue() < 0) { throw new NotPositiveException(sample.getValue()); } probs[i] = sample.getValue(); } probabilities = MathArrays.normalizeArray(probs, 1.0); }
Example #29
Source File: Cardumen_0060_s.java From coming with MIT License | 6 votes |
/** * Create a discrete distribution using the given random number generator * and probability mass function definition. * * @param rng random number generator. * @param samples definition of probability mass function in the format of * list of pairs. * @throws NotPositiveException if probability of at least one value is * negative. * @throws MathArithmeticException if the probabilities sum to zero. * @throws MathIllegalArgumentException if probability of at least one value * is infinite. */ public DiscreteDistribution(final RandomGenerator rng, final List<Pair<T, Double>> samples) throws NotPositiveException, MathArithmeticException, MathIllegalArgumentException { random = rng; singletons = new ArrayList<T>(samples.size()); final double[] probs = new double[samples.size()]; for (int i = 0; i < samples.size(); i++) { final Pair<T, Double> sample = samples.get(i); singletons.add(sample.getKey()); if (sample.getValue() < 0) { throw new NotPositiveException(sample.getValue()); } probs[i] = sample.getValue(); } probabilities = MathArrays.normalizeArray(probs, 1.0); }
Example #30
Source File: Cardumen_0060_t.java From coming with MIT License | 6 votes |
/** * Create a discrete distribution using the given random number generator * and probability mass function definition. * * @param rng random number generator. * @param samples definition of probability mass function in the format of * list of pairs. * @throws NotPositiveException if probability of at least one value is * negative. * @throws MathArithmeticException if the probabilities sum to zero. * @throws MathIllegalArgumentException if probability of at least one value * is infinite. */ public DiscreteDistribution(final RandomGenerator rng, final List<Pair<T, Double>> samples) throws NotPositiveException, MathArithmeticException, MathIllegalArgumentException { random = rng; singletons = new ArrayList<T>(samples.size()); final double[] probs = new double[samples.size()]; for (int i = 0; i < samples.size(); i++) { final Pair<T, Double> sample = samples.get(i); singletons.add(sample.getKey()); if (sample.getValue() < 0) { throw new NotPositiveException(sample.getValue()); } probs[i] = sample.getValue(); } probabilities = MathArrays.normalizeArray(probs, 1.0); }