public static double[][] randn(int rows,int cols,Random r){
  double X[][]=new double[rows][cols];
  for (int i=0; i < rows; i++) {
    for (int j=0; j < cols; j++) {
      X[i][j]=r.nextGaussian();
    }
  }
  return X;
}

public static double [ ] [ ] randn ( int rows , int cols , Random r ) { double X [ ] [ ] = new double [ rows ] [ cols ] ; for ( int i = 0 ; i < rows ; i ++ ) { for ( int j = 0 ; j < cols ; j ++ ) { X [ i ] [ j ] = r . nextGaussian ( ) ; } } return X ; }
a 2d array of gaussian random numbers
