Class BoxSampler

    • Method Detail

      • sample

        public abstract double[] sample()
        Description copied from interface: ObjectSampler
        Create a sample.
        Specified by:
        sample in interface ObjectSampler<double[]>
        Returns:
        a random Cartesian coordinate within the box.
      • of

        public static BoxSampler of​(UniformRandomProvider rng,
                                    double[] a,
                                    double[] b)
        Create a box sampler with bounds a and b. Sampled points are uniformly distributed within the box defined by the bounds.

        Sampling is supported in dimensions of 2 or above. Single dimension sampling can be performed using a LineSampler.

        Note: There is no requirement that a <= b. The samples will be uniformly distributed in the range a to b for each dimension.

        Parameters:
        rng - Source of randomness.
        a - Bound a.
        b - Bound b.
        Returns:
        the sampler
        Throws:
        IllegalArgumentException - If the bounds do not have the same dimension; the dimension is less than 2; or bounds have non-finite coordinates.