Package org.apache.commons.rng.sampling
Class CompositeSamplers.SharedStateDiscreteProbabilitySampler
java.lang.Object
org.apache.commons.rng.sampling.CompositeSamplers.SharedStateDiscreteProbabilitySampler
- All Implemented Interfaces:
DiscreteSampler
,SharedStateDiscreteSampler
,SharedStateSampler<SharedStateDiscreteSampler>
- Enclosing class:
CompositeSamplers
private static class CompositeSamplers.SharedStateDiscreteProbabilitySampler
extends Object
implements SharedStateDiscreteSampler
A class to implement the SharedStateDiscreteSampler interface for a discrete probability
sampler given a factory and the probability distribution. Each new instance will recreate
the distribution sampler using the factory.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final CompositeSamplers.DiscreteProbabilitySamplerFactory
The factory to create a new discrete sampler.private final double[]
The probabilities.private final DiscreteSampler
The sampler. -
Constructor Summary
ConstructorsConstructorDescriptionSharedStateDiscreteProbabilitySampler
(DiscreteSampler sampler, CompositeSamplers.DiscreteProbabilitySamplerFactory factory, double[] probabilities) -
Method Summary
Modifier and TypeMethodDescriptionint
sample()
Creates anint
sample.Create a new instance of the sampler with the same underlying state using the given uniform random provider as the source of randomness.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.apache.commons.rng.sampling.distribution.DiscreteSampler
samples, samples
-
Field Details
-
sampler
The sampler. -
factory
The factory to create a new discrete sampler. -
probabilities
private final double[] probabilitiesThe probabilities.
-
-
Constructor Details
-
SharedStateDiscreteProbabilitySampler
SharedStateDiscreteProbabilitySampler(DiscreteSampler sampler, CompositeSamplers.DiscreteProbabilitySamplerFactory factory, double[] probabilities) - Parameters:
sampler
- Sampler of the discrete distribution.factory
- Factory to create a new discrete sampler.probabilities
- Probabilities of the discrete distribution.- Throws:
NullPointerException
- if thesampler
is null
-
-
Method Details
-
sample
public int sample()Description copied from interface:DiscreteSampler
Creates anint
sample.- Specified by:
sample
in interfaceDiscreteSampler
- Returns:
- a sample.
-
withUniformRandomProvider
Description copied from interface:SharedStateSampler
Create a new instance of the sampler with the same underlying state using the given uniform random provider as the source of randomness.- Specified by:
withUniformRandomProvider
in interfaceSharedStateSampler<SharedStateDiscreteSampler>
- Parameters:
rng
- Generator of uniformly distributed random numbers.- Returns:
- the sampler
-