Package org.apache.sysds.runtime.util

# Class PhiloxNormalCBPRNGenerator

java.lang.Object
org.apache.sysds.runtime.util.CounterBasedPRNGenerator
org.apache.sysds.runtime.util.PhiloxNormalCBPRNGenerator

All Implemented Interfaces:
  `IPRNGenerator`

public class PhiloxNormalCBPRNGenerator extends CounterBasedPRNGenerator

## Constructor Summary

Constructors
Constructor
Description
`PhiloxNormalCBPRNGenerator()`

## Method Summary

Modifier and Type
Method
Description
`double[]`
`getDoubles(long[] ctr, int size)`
Generate a sequence of random doubles using the Philox4x64 counter-based PRNG.
`void`
`setSeed(long sd)`

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### PhiloxNormalCBPRNGenerator

public PhiloxNormalCBPRNGenerator()

## Method Details

### setSeed

public void setSeed(long sd)

Specified by:
  `setSeed` in interface `IPRNGenerator`
Specified by:
  `setSeed` in class `CounterBasedPRNGenerator`

### getDoubles

public double[] getDoubles(long[] ctr, int size)
Generate a sequence of random doubles using the Philox4x64 counter-based PRNG.

Specified by:
  `getDoubles` in class `CounterBasedPRNGenerator`
Parameters:
  `ctr` - The start counter to use for the PRNG
  `size` - The number of doubles to generate
Returns:
  An array of random doubles distributed normally with mean 0 and variance 1