Exemplo n.º 1
0
    def normal(self, loc=0.0, scale=1.0, size=None, dtype=float):
        """Returns an array of normally distributed samples.

        .. seealso::
            :func:`cupy.random.normal` for full documentation,
            :meth:`numpy.random.RandomState.normal`

        """
        dtype = _check_and_get_dtype(dtype)
        size = _get_size(size)
        out = cupy.empty(size, dtype=dtype)
        if dtype.type == numpy.float32:
            curand.generateNormal(self._generator, out._fptr, out.size, loc,
                                  scale)
        else:
            curand.generateNormalDouble(self._generator, out._fptr, out.size,
                                        loc, scale)
        return out
Exemplo n.º 2
0
    def normal(self, loc=0.0, scale=1.0, size=None, dtype=float):
        """Returns an array of normally distributed samples.

        .. seealso::
            :func:`cupy.random.normal` for full documentation,
            :meth:`numpy.random.RandomState.normal`

        """
        dtype = _check_and_get_dtype(dtype)
        size = _get_size(size)
        out = cupy.empty(size, dtype=dtype)
        if dtype.type == numpy.float32:
            curand.generateNormal(self._generator, out._fptr, out.size, loc,
                                  scale)
        else:
            curand.generateNormalDouble(self._generator, out._fptr, out.size,
                                        loc, scale)
        return out
Exemplo n.º 3
0
 def test_invalid_argument_normal_float(self):
     out = cupy.empty((1,), dtype=numpy.float32)
     with self.assertRaises(ValueError):
         curand.generateNormal(
             self.generator, out.data.ptr, 1, 0.0, 1.0)