Java Code Examples for org.apache.commons.math3.exception.util.LocalizedFormats#NUMBER_OF_SUCCESS_LARGER_THAN_POPULATION_SIZE
The following examples show how to use
org.apache.commons.math3.exception.util.LocalizedFormats#NUMBER_OF_SUCCESS_LARGER_THAN_POPULATION_SIZE .
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: IntervalUtils.java From astor with GNU General Public License v2.0 | 6 votes |
/** * Verifies that parameters satisfy preconditions. * * @param numberOfTrials number of trials (must be positive) * @param numberOfSuccesses number of successes (must not exceed numberOfTrials) * @param confidenceLevel confidence level (must be strictly between 0 and 1) * @throws NotStrictlyPositiveException if {@code numberOfTrials <= 0}. * @throws NotPositiveException if {@code numberOfSuccesses < 0}. * @throws NumberIsTooLargeException if {@code numberOfSuccesses > numberOfTrials}. * @throws OutOfRangeException if {@code confidenceLevel} is not in the interval {@code (0, 1)}. */ static void checkParameters(int numberOfTrials, int numberOfSuccesses, double confidenceLevel) { if (numberOfTrials <= 0) { throw new NotStrictlyPositiveException(LocalizedFormats.NUMBER_OF_TRIALS, numberOfTrials); } if (numberOfSuccesses < 0) { throw new NotPositiveException(LocalizedFormats.NEGATIVE_NUMBER_OF_SUCCESSES, numberOfSuccesses); } if (numberOfSuccesses > numberOfTrials) { throw new NumberIsTooLargeException(LocalizedFormats.NUMBER_OF_SUCCESS_LARGER_THAN_POPULATION_SIZE, numberOfSuccesses, numberOfTrials, true); } if (confidenceLevel <= 0 || confidenceLevel >= 1) { throw new OutOfRangeException(LocalizedFormats.OUT_OF_BOUNDS_CONFIDENCE_LEVEL, confidenceLevel, 0, 1); } }
Example 2
Source File: IntervalUtils.java From astor with GNU General Public License v2.0 | 6 votes |
/** * Verifies that parameters satisfy preconditions. * * @param numberOfTrials number of trials (must be positive) * @param numberOfSuccesses number of successes (must not exceed numberOfTrials) * @param confidenceLevel confidence level (must be strictly between 0 and 1) * @throws NotStrictlyPositiveException if {@code numberOfTrials <= 0}. * @throws NotPositiveException if {@code numberOfSuccesses < 0}. * @throws NumberIsTooLargeException if {@code numberOfSuccesses > numberOfTrials}. * @throws OutOfRangeException if {@code confidenceLevel} is not in the interval {@code (0, 1)}. */ static void checkParameters(int numberOfTrials, int numberOfSuccesses, double confidenceLevel) { if (numberOfTrials <= 0) { throw new NotStrictlyPositiveException(LocalizedFormats.NUMBER_OF_TRIALS, numberOfTrials); } if (numberOfSuccesses < 0) { throw new NotPositiveException(LocalizedFormats.NEGATIVE_NUMBER_OF_SUCCESSES, numberOfSuccesses); } if (numberOfSuccesses > numberOfTrials) { throw new NumberIsTooLargeException(LocalizedFormats.NUMBER_OF_SUCCESS_LARGER_THAN_POPULATION_SIZE, numberOfSuccesses, numberOfTrials, true); } if (confidenceLevel <= 0 || confidenceLevel >= 1) { throw new OutOfRangeException(LocalizedFormats.OUT_OF_BOUNDS_CONFIDENCE_LEVEL, confidenceLevel, 0, 1); } }
Example 3
Source File: Cardumen_00162_t.java From coming with MIT License | 5 votes |
/** * Creates a new hypergeometric distribution. * * @param rng Random number generator. * @param populationSize Population size. * @param numberOfSuccesses Number of successes in the population. * @param sampleSize Sample size. * @throws NotPositiveException if {@code numberOfSuccesses < 0}. * @throws NotStrictlyPositiveException if {@code populationSize <= 0}. * @throws NumberIsTooLargeException if {@code numberOfSuccesses > populationSize}, * or {@code sampleSize > populationSize}. * @since 3.1 */ public HypergeometricDistribution(RandomGenerator rng, int populationSize, int numberOfSuccesses, int sampleSize) throws NotPositiveException, NotStrictlyPositiveException, NumberIsTooLargeException { super(rng); if (populationSize <= 0) { throw new NotStrictlyPositiveException(LocalizedFormats.POPULATION_SIZE, populationSize); } if (numberOfSuccesses < 0) { throw new NotPositiveException(LocalizedFormats.NUMBER_OF_SUCCESSES, numberOfSuccesses); } if (sampleSize < 0) { throw new NotPositiveException(LocalizedFormats.NUMBER_OF_SAMPLES, sampleSize); } if (numberOfSuccesses > populationSize) { throw new NumberIsTooLargeException(LocalizedFormats.NUMBER_OF_SUCCESS_LARGER_THAN_POPULATION_SIZE, numberOfSuccesses, populationSize, true); } if (sampleSize > populationSize) { throw new NumberIsTooLargeException(LocalizedFormats.SAMPLE_SIZE_LARGER_THAN_POPULATION_SIZE, sampleSize, populationSize, true); } this.numberOfSuccesses = numberOfSuccesses; this.populationSize = populationSize; this.sampleSize = sampleSize; }
Example 4
Source File: Cardumen_00162_s.java From coming with MIT License | 5 votes |
/** * Creates a new hypergeometric distribution. * * @param rng Random number generator. * @param populationSize Population size. * @param numberOfSuccesses Number of successes in the population. * @param sampleSize Sample size. * @throws NotPositiveException if {@code numberOfSuccesses < 0}. * @throws NotStrictlyPositiveException if {@code populationSize <= 0}. * @throws NumberIsTooLargeException if {@code numberOfSuccesses > populationSize}, * or {@code sampleSize > populationSize}. * @since 3.1 */ public HypergeometricDistribution(RandomGenerator rng, int populationSize, int numberOfSuccesses, int sampleSize) throws NotPositiveException, NotStrictlyPositiveException, NumberIsTooLargeException { super(rng); if (populationSize <= 0) { throw new NotStrictlyPositiveException(LocalizedFormats.POPULATION_SIZE, populationSize); } if (numberOfSuccesses < 0) { throw new NotPositiveException(LocalizedFormats.NUMBER_OF_SUCCESSES, numberOfSuccesses); } if (sampleSize < 0) { throw new NotPositiveException(LocalizedFormats.NUMBER_OF_SAMPLES, sampleSize); } if (numberOfSuccesses > populationSize) { throw new NumberIsTooLargeException(LocalizedFormats.NUMBER_OF_SUCCESS_LARGER_THAN_POPULATION_SIZE, numberOfSuccesses, populationSize, true); } if (sampleSize > populationSize) { throw new NumberIsTooLargeException(LocalizedFormats.SAMPLE_SIZE_LARGER_THAN_POPULATION_SIZE, sampleSize, populationSize, true); } this.numberOfSuccesses = numberOfSuccesses; this.populationSize = populationSize; this.sampleSize = sampleSize; }
Example 5
Source File: Cardumen_0036_s.java From coming with MIT License | 5 votes |
/** * Creates a new hypergeometric distribution. * * @param rng Random number generator. * @param populationSize Population size. * @param numberOfSuccesses Number of successes in the population. * @param sampleSize Sample size. * @throws NotPositiveException if {@code numberOfSuccesses < 0}. * @throws NotStrictlyPositiveException if {@code populationSize <= 0}. * @throws NumberIsTooLargeException if {@code numberOfSuccesses > populationSize}, * or {@code sampleSize > populationSize}. * @since 3.1 */ public HypergeometricDistribution(RandomGenerator rng, int populationSize, int numberOfSuccesses, int sampleSize) throws NotPositiveException, NotStrictlyPositiveException, NumberIsTooLargeException { super(rng); if (populationSize <= 0) { throw new NotStrictlyPositiveException(LocalizedFormats.POPULATION_SIZE, populationSize); } if (numberOfSuccesses < 0) { throw new NotPositiveException(LocalizedFormats.NUMBER_OF_SUCCESSES, numberOfSuccesses); } if (sampleSize < 0) { throw new NotPositiveException(LocalizedFormats.NUMBER_OF_SAMPLES, sampleSize); } if (numberOfSuccesses > populationSize) { throw new NumberIsTooLargeException(LocalizedFormats.NUMBER_OF_SUCCESS_LARGER_THAN_POPULATION_SIZE, numberOfSuccesses, populationSize, true); } if (sampleSize > populationSize) { throw new NumberIsTooLargeException(LocalizedFormats.SAMPLE_SIZE_LARGER_THAN_POPULATION_SIZE, sampleSize, populationSize, true); } this.numberOfSuccesses = numberOfSuccesses; this.populationSize = populationSize; this.sampleSize = sampleSize; }
Example 6
Source File: Cardumen_0036_t.java From coming with MIT License | 5 votes |
/** * Creates a new hypergeometric distribution. * * @param rng Random number generator. * @param populationSize Population size. * @param numberOfSuccesses Number of successes in the population. * @param sampleSize Sample size. * @throws NotPositiveException if {@code numberOfSuccesses < 0}. * @throws NotStrictlyPositiveException if {@code populationSize <= 0}. * @throws NumberIsTooLargeException if {@code numberOfSuccesses > populationSize}, * or {@code sampleSize > populationSize}. * @since 3.1 */ public HypergeometricDistribution(RandomGenerator rng, int populationSize, int numberOfSuccesses, int sampleSize) throws NotPositiveException, NotStrictlyPositiveException, NumberIsTooLargeException { super(rng); if (populationSize <= 0) { throw new NotStrictlyPositiveException(LocalizedFormats.POPULATION_SIZE, populationSize); } if (numberOfSuccesses < 0) { throw new NotPositiveException(LocalizedFormats.NUMBER_OF_SUCCESSES, numberOfSuccesses); } if (sampleSize < 0) { throw new NotPositiveException(LocalizedFormats.NUMBER_OF_SAMPLES, sampleSize); } if (numberOfSuccesses > populationSize) { throw new NumberIsTooLargeException(LocalizedFormats.NUMBER_OF_SUCCESS_LARGER_THAN_POPULATION_SIZE, numberOfSuccesses, populationSize, true); } if (sampleSize > populationSize) { throw new NumberIsTooLargeException(LocalizedFormats.SAMPLE_SIZE_LARGER_THAN_POPULATION_SIZE, sampleSize, populationSize, true); } this.numberOfSuccesses = numberOfSuccesses; this.populationSize = populationSize; this.sampleSize = sampleSize; }
Example 7
Source File: Math_2_HypergeometricDistribution_t.java From coming with MIT License | 5 votes |
/** * Creates a new hypergeometric distribution. * * @param rng Random number generator. * @param populationSize Population size. * @param numberOfSuccesses Number of successes in the population. * @param sampleSize Sample size. * @throws NotPositiveException if {@code numberOfSuccesses < 0}. * @throws NotStrictlyPositiveException if {@code populationSize <= 0}. * @throws NumberIsTooLargeException if {@code numberOfSuccesses > populationSize}, * or {@code sampleSize > populationSize}. * @since 3.1 */ public HypergeometricDistribution(RandomGenerator rng, int populationSize, int numberOfSuccesses, int sampleSize) throws NotPositiveException, NotStrictlyPositiveException, NumberIsTooLargeException { super(rng); if (populationSize <= 0) { throw new NotStrictlyPositiveException(LocalizedFormats.POPULATION_SIZE, populationSize); } if (numberOfSuccesses < 0) { throw new NotPositiveException(LocalizedFormats.NUMBER_OF_SUCCESSES, numberOfSuccesses); } if (sampleSize < 0) { throw new NotPositiveException(LocalizedFormats.NUMBER_OF_SAMPLES, sampleSize); } if (numberOfSuccesses > populationSize) { throw new NumberIsTooLargeException(LocalizedFormats.NUMBER_OF_SUCCESS_LARGER_THAN_POPULATION_SIZE, numberOfSuccesses, populationSize, true); } if (sampleSize > populationSize) { throw new NumberIsTooLargeException(LocalizedFormats.SAMPLE_SIZE_LARGER_THAN_POPULATION_SIZE, sampleSize, populationSize, true); } this.numberOfSuccesses = numberOfSuccesses; this.populationSize = populationSize; this.sampleSize = sampleSize; }
Example 8
Source File: Math_2_HypergeometricDistribution_s.java From coming with MIT License | 5 votes |
/** * Creates a new hypergeometric distribution. * * @param rng Random number generator. * @param populationSize Population size. * @param numberOfSuccesses Number of successes in the population. * @param sampleSize Sample size. * @throws NotPositiveException if {@code numberOfSuccesses < 0}. * @throws NotStrictlyPositiveException if {@code populationSize <= 0}. * @throws NumberIsTooLargeException if {@code numberOfSuccesses > populationSize}, * or {@code sampleSize > populationSize}. * @since 3.1 */ public HypergeometricDistribution(RandomGenerator rng, int populationSize, int numberOfSuccesses, int sampleSize) throws NotPositiveException, NotStrictlyPositiveException, NumberIsTooLargeException { super(rng); if (populationSize <= 0) { throw new NotStrictlyPositiveException(LocalizedFormats.POPULATION_SIZE, populationSize); } if (numberOfSuccesses < 0) { throw new NotPositiveException(LocalizedFormats.NUMBER_OF_SUCCESSES, numberOfSuccesses); } if (sampleSize < 0) { throw new NotPositiveException(LocalizedFormats.NUMBER_OF_SAMPLES, sampleSize); } if (numberOfSuccesses > populationSize) { throw new NumberIsTooLargeException(LocalizedFormats.NUMBER_OF_SUCCESS_LARGER_THAN_POPULATION_SIZE, numberOfSuccesses, populationSize, true); } if (sampleSize > populationSize) { throw new NumberIsTooLargeException(LocalizedFormats.SAMPLE_SIZE_LARGER_THAN_POPULATION_SIZE, sampleSize, populationSize, true); } this.numberOfSuccesses = numberOfSuccesses; this.populationSize = populationSize; this.sampleSize = sampleSize; }
Example 9
Source File: HypergeometricDistribution.java From astor with GNU General Public License v2.0 | 5 votes |
/** * Creates a new hypergeometric distribution. * * @param rng Random number generator. * @param populationSize Population size. * @param numberOfSuccesses Number of successes in the population. * @param sampleSize Sample size. * @throws NotPositiveException if {@code numberOfSuccesses < 0}. * @throws NotStrictlyPositiveException if {@code populationSize <= 0}. * @throws NumberIsTooLargeException if {@code numberOfSuccesses > populationSize}, * or {@code sampleSize > populationSize}. * @since 3.1 */ public HypergeometricDistribution(RandomGenerator rng, int populationSize, int numberOfSuccesses, int sampleSize) throws NotPositiveException, NotStrictlyPositiveException, NumberIsTooLargeException { super(rng); if (populationSize <= 0) { throw new NotStrictlyPositiveException(LocalizedFormats.POPULATION_SIZE, populationSize); } if (numberOfSuccesses < 0) { throw new NotPositiveException(LocalizedFormats.NUMBER_OF_SUCCESSES, numberOfSuccesses); } if (sampleSize < 0) { throw new NotPositiveException(LocalizedFormats.NUMBER_OF_SAMPLES, sampleSize); } if (numberOfSuccesses > populationSize) { throw new NumberIsTooLargeException(LocalizedFormats.NUMBER_OF_SUCCESS_LARGER_THAN_POPULATION_SIZE, numberOfSuccesses, populationSize, true); } if (sampleSize > populationSize) { throw new NumberIsTooLargeException(LocalizedFormats.SAMPLE_SIZE_LARGER_THAN_POPULATION_SIZE, sampleSize, populationSize, true); } this.numberOfSuccesses = numberOfSuccesses; this.populationSize = populationSize; this.sampleSize = sampleSize; }
Example 10
Source File: HypergeometricDistribution.java From astor with GNU General Public License v2.0 | 5 votes |
/** * Creates a new hypergeometric distribution. * * @param rng Random number generator. * @param populationSize Population size. * @param numberOfSuccesses Number of successes in the population. * @param sampleSize Sample size. * @throws NotPositiveException if {@code numberOfSuccesses < 0}. * @throws NotStrictlyPositiveException if {@code populationSize <= 0}. * @throws NumberIsTooLargeException if {@code numberOfSuccesses > populationSize}, * or {@code sampleSize > populationSize}. * @since 3.1 */ public HypergeometricDistribution(RandomGenerator rng, int populationSize, int numberOfSuccesses, int sampleSize) throws NotPositiveException, NotStrictlyPositiveException, NumberIsTooLargeException { super(rng); if (populationSize <= 0) { throw new NotStrictlyPositiveException(LocalizedFormats.POPULATION_SIZE, populationSize); } if (numberOfSuccesses < 0) { throw new NotPositiveException(LocalizedFormats.NUMBER_OF_SUCCESSES, numberOfSuccesses); } if (sampleSize < 0) { throw new NotPositiveException(LocalizedFormats.NUMBER_OF_SAMPLES, sampleSize); } if (numberOfSuccesses > populationSize) { throw new NumberIsTooLargeException(LocalizedFormats.NUMBER_OF_SUCCESS_LARGER_THAN_POPULATION_SIZE, numberOfSuccesses, populationSize, true); } if (sampleSize > populationSize) { throw new NumberIsTooLargeException(LocalizedFormats.SAMPLE_SIZE_LARGER_THAN_POPULATION_SIZE, sampleSize, populationSize, true); } this.numberOfSuccesses = numberOfSuccesses; this.populationSize = populationSize; this.sampleSize = sampleSize; }
Example 11
Source File: HypergeometricDistribution.java From astor with GNU General Public License v2.0 | 5 votes |
/** * Creates a new hypergeometric distribution. * * @param rng Random number generator. * @param populationSize Population size. * @param numberOfSuccesses Number of successes in the population. * @param sampleSize Sample size. * @throws NotPositiveException if {@code numberOfSuccesses < 0}. * @throws NotStrictlyPositiveException if {@code populationSize <= 0}. * @throws NumberIsTooLargeException if {@code numberOfSuccesses > populationSize}, * or {@code sampleSize > populationSize}. * @since 3.1 */ public HypergeometricDistribution(RandomGenerator rng, int populationSize, int numberOfSuccesses, int sampleSize) throws NotPositiveException, NotStrictlyPositiveException, NumberIsTooLargeException { super(rng); if (populationSize <= 0) { throw new NotStrictlyPositiveException(LocalizedFormats.POPULATION_SIZE, populationSize); } if (numberOfSuccesses < 0) { throw new NotPositiveException(LocalizedFormats.NUMBER_OF_SUCCESSES, numberOfSuccesses); } if (sampleSize < 0) { throw new NotPositiveException(LocalizedFormats.NUMBER_OF_SAMPLES, sampleSize); } if (numberOfSuccesses > populationSize) { throw new NumberIsTooLargeException(LocalizedFormats.NUMBER_OF_SUCCESS_LARGER_THAN_POPULATION_SIZE, numberOfSuccesses, populationSize, true); } if (sampleSize > populationSize) { throw new NumberIsTooLargeException(LocalizedFormats.SAMPLE_SIZE_LARGER_THAN_POPULATION_SIZE, sampleSize, populationSize, true); } this.numberOfSuccesses = numberOfSuccesses; this.populationSize = populationSize; this.sampleSize = sampleSize; }
Example 12
Source File: HypergeometricDistribution.java From astor with GNU General Public License v2.0 | 5 votes |
/** * Creates a new hypergeometric distribution. * * @param rng Random number generator. * @param populationSize Population size. * @param numberOfSuccesses Number of successes in the population. * @param sampleSize Sample size. * @throws NotPositiveException if {@code numberOfSuccesses < 0}. * @throws NotStrictlyPositiveException if {@code populationSize <= 0}. * @throws NumberIsTooLargeException if {@code numberOfSuccesses > populationSize}, * or {@code sampleSize > populationSize}. * @since 3.1 */ public HypergeometricDistribution(RandomGenerator rng, int populationSize, int numberOfSuccesses, int sampleSize) throws NotPositiveException, NotStrictlyPositiveException, NumberIsTooLargeException { super(rng); if (populationSize <= 0) { throw new NotStrictlyPositiveException(LocalizedFormats.POPULATION_SIZE, populationSize); } if (numberOfSuccesses < 0) { throw new NotPositiveException(LocalizedFormats.NUMBER_OF_SUCCESSES, numberOfSuccesses); } if (sampleSize < 0) { throw new NotPositiveException(LocalizedFormats.NUMBER_OF_SAMPLES, sampleSize); } if (numberOfSuccesses > populationSize) { throw new NumberIsTooLargeException(LocalizedFormats.NUMBER_OF_SUCCESS_LARGER_THAN_POPULATION_SIZE, numberOfSuccesses, populationSize, true); } if (sampleSize > populationSize) { throw new NumberIsTooLargeException(LocalizedFormats.SAMPLE_SIZE_LARGER_THAN_POPULATION_SIZE, sampleSize, populationSize, true); } this.numberOfSuccesses = numberOfSuccesses; this.populationSize = populationSize; this.sampleSize = sampleSize; }
Example 13
Source File: HypergeometricDistribution.java From astor with GNU General Public License v2.0 | 5 votes |
/** * Construct a new hypergeometric distribution with the specified population * size, number of successes in the population, and sample size. * * @param populationSize Population size. * @param numberOfSuccesses Number of successes in the population. * @param sampleSize Sample size. * @throws NotPositiveException if {@code numberOfSuccesses < 0}. * @throws NotStrictlyPositiveException if {@code populationSize <= 0}. * @throws NumberIsTooLargeException if {@code numberOfSuccesses > populationSize}, * or {@code sampleSize > populationSize}. */ public HypergeometricDistribution(int populationSize, int numberOfSuccesses, int sampleSize) throws NotPositiveException, NotStrictlyPositiveException, NumberIsTooLargeException { if (populationSize <= 0) { throw new NotStrictlyPositiveException(LocalizedFormats.POPULATION_SIZE, populationSize); } if (numberOfSuccesses < 0) { throw new NotPositiveException(LocalizedFormats.NUMBER_OF_SUCCESSES, numberOfSuccesses); } if (sampleSize < 0) { throw new NotPositiveException(LocalizedFormats.NUMBER_OF_SAMPLES, sampleSize); } if (numberOfSuccesses > populationSize) { throw new NumberIsTooLargeException(LocalizedFormats.NUMBER_OF_SUCCESS_LARGER_THAN_POPULATION_SIZE, numberOfSuccesses, populationSize, true); } if (sampleSize > populationSize) { throw new NumberIsTooLargeException(LocalizedFormats.SAMPLE_SIZE_LARGER_THAN_POPULATION_SIZE, sampleSize, populationSize, true); } this.numberOfSuccesses = numberOfSuccesses; this.populationSize = populationSize; this.sampleSize = sampleSize; }
Example 14
Source File: HypergeometricDistribution.java From astor with GNU General Public License v2.0 | 5 votes |
/** * Creates a new hypergeometric distribution. * * @param rng Random number generator. * @param populationSize Population size. * @param numberOfSuccesses Number of successes in the population. * @param sampleSize Sample size. * @throws NotPositiveException if {@code numberOfSuccesses < 0}. * @throws NotStrictlyPositiveException if {@code populationSize <= 0}. * @throws NumberIsTooLargeException if {@code numberOfSuccesses > populationSize}, * or {@code sampleSize > populationSize}. * @since 3.1 */ public HypergeometricDistribution(RandomGenerator rng, int populationSize, int numberOfSuccesses, int sampleSize) throws NotPositiveException, NotStrictlyPositiveException, NumberIsTooLargeException { super(rng); if (populationSize <= 0) { throw new NotStrictlyPositiveException(LocalizedFormats.POPULATION_SIZE, populationSize); } if (numberOfSuccesses < 0) { throw new NotPositiveException(LocalizedFormats.NUMBER_OF_SUCCESSES, numberOfSuccesses); } if (sampleSize < 0) { throw new NotPositiveException(LocalizedFormats.NUMBER_OF_SAMPLES, sampleSize); } if (numberOfSuccesses > populationSize) { throw new NumberIsTooLargeException(LocalizedFormats.NUMBER_OF_SUCCESS_LARGER_THAN_POPULATION_SIZE, numberOfSuccesses, populationSize, true); } if (sampleSize > populationSize) { throw new NumberIsTooLargeException(LocalizedFormats.SAMPLE_SIZE_LARGER_THAN_POPULATION_SIZE, sampleSize, populationSize, true); } this.numberOfSuccesses = numberOfSuccesses; this.populationSize = populationSize; this.sampleSize = sampleSize; }
Example 15
Source File: HypergeometricDistribution.java From astor with GNU General Public License v2.0 | 5 votes |
/** * Creates a new hypergeometric distribution. * * @param rng Random number generator. * @param populationSize Population size. * @param numberOfSuccesses Number of successes in the population. * @param sampleSize Sample size. * @throws NotPositiveException if {@code numberOfSuccesses < 0}. * @throws NotStrictlyPositiveException if {@code populationSize <= 0}. * @throws NumberIsTooLargeException if {@code numberOfSuccesses > populationSize}, * or {@code sampleSize > populationSize}. * @since 3.1 */ public HypergeometricDistribution(RandomGenerator rng, int populationSize, int numberOfSuccesses, int sampleSize) throws NotPositiveException, NotStrictlyPositiveException, NumberIsTooLargeException { super(rng); if (populationSize <= 0) { throw new NotStrictlyPositiveException(LocalizedFormats.POPULATION_SIZE, populationSize); } if (numberOfSuccesses < 0) { throw new NotPositiveException(LocalizedFormats.NUMBER_OF_SUCCESSES, numberOfSuccesses); } if (sampleSize < 0) { throw new NotPositiveException(LocalizedFormats.NUMBER_OF_SAMPLES, sampleSize); } if (numberOfSuccesses > populationSize) { throw new NumberIsTooLargeException(LocalizedFormats.NUMBER_OF_SUCCESS_LARGER_THAN_POPULATION_SIZE, numberOfSuccesses, populationSize, true); } if (sampleSize > populationSize) { throw new NumberIsTooLargeException(LocalizedFormats.SAMPLE_SIZE_LARGER_THAN_POPULATION_SIZE, sampleSize, populationSize, true); } this.numberOfSuccesses = numberOfSuccesses; this.populationSize = populationSize; this.sampleSize = sampleSize; }
Example 16
Source File: HypergeometricDistribution.java From astor with GNU General Public License v2.0 | 5 votes |
/** * Creates a new hypergeometric distribution. * * @param rng Random number generator. * @param populationSize Population size. * @param numberOfSuccesses Number of successes in the population. * @param sampleSize Sample size. * @throws NotPositiveException if {@code numberOfSuccesses < 0}. * @throws NotStrictlyPositiveException if {@code populationSize <= 0}. * @throws NumberIsTooLargeException if {@code numberOfSuccesses > populationSize}, * or {@code sampleSize > populationSize}. * @since 3.1 */ public HypergeometricDistribution(RandomGenerator rng, int populationSize, int numberOfSuccesses, int sampleSize) throws NotPositiveException, NotStrictlyPositiveException, NumberIsTooLargeException { super(rng); if (populationSize <= 0) { throw new NotStrictlyPositiveException(LocalizedFormats.POPULATION_SIZE, populationSize); } if (numberOfSuccesses < 0) { throw new NotPositiveException(LocalizedFormats.NUMBER_OF_SUCCESSES, numberOfSuccesses); } if (sampleSize < 0) { throw new NotPositiveException(LocalizedFormats.NUMBER_OF_SAMPLES, sampleSize); } if (numberOfSuccesses > populationSize) { throw new NumberIsTooLargeException(LocalizedFormats.NUMBER_OF_SUCCESS_LARGER_THAN_POPULATION_SIZE, numberOfSuccesses, populationSize, true); } if (sampleSize > populationSize) { throw new NumberIsTooLargeException(LocalizedFormats.SAMPLE_SIZE_LARGER_THAN_POPULATION_SIZE, sampleSize, populationSize, true); } this.numberOfSuccesses = numberOfSuccesses; this.populationSize = populationSize; this.sampleSize = sampleSize; }