- (Positive h') <- arbitrary :: Gen (Positive Double)
- fvs <- arbitrary :: Gen Values3D
- return (make_grid h' fvs)
-
-
--- | The constructor that we want people to use.
--- Ignore non-positive grid sizes for performance.
-make_grid :: Double -> Values3D -> Grid
-make_grid grid_size values =
- Grid grid_size values
+ x_dim <- choose (1, 27)
+ y_dim <- choose (1, 27)
+ z_dim <- choose (1, 27)
+ elements <- vectorOf (x_dim * y_dim * z_dim) (arbitrary :: Gen Double)
+ let new_shape = (R.Z R.:. x_dim R.:. y_dim R.:. z_dim)
+ let fvs = R.fromListUnboxed new_shape elements
+ return $ Grid fvs