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 final 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.DiscreteProbabilitySamplerFactoryThe factory to create a new discrete sampler.private final double[]The probabilities.private final DiscreteSamplerThe sampler. -
Constructor Summary
ConstructorsConstructorDescriptionSharedStateDiscreteProbabilitySampler(DiscreteSampler sampler, CompositeSamplers.DiscreteProbabilitySamplerFactory factory, double[] probabilities) -
Method Summary
Modifier and TypeMethodDescriptionintsample()Creates anintsample.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, waitMethods 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 thesampleris null
-
-
Method Details
-
sample
public int sample()Description copied from interface:DiscreteSamplerCreates anintsample.- Specified by:
samplein interfaceDiscreteSampler- Returns:
- a sample.
-
withUniformRandomProvider
Description copied from interface:SharedStateSamplerCreate a new instance of the sampler with the same underlying state using the given uniform random provider as the source of randomness.- Specified by:
withUniformRandomProviderin interfaceSharedStateSampler<SharedStateDiscreteSampler>- Parameters:
rng- Generator of uniformly distributed random numbers.- Returns:
- the sampler
-