-import Test.QuickCheck (Arbitrary(..), Gen, Positive(..), vectorOf)
-
-
-import ScaleFactor
-
-
-type Values1D = Array DIM1 Double
-type Values2D = Array DIM2 Double
-type Values3D = Array DIM3 Double
-
-
-instance Arbitrary Values3D where
- arbitrary = do
- (Positive x_dim) <- arbitrary :: Gen (Positive Int)
- (Positive y_dim) <- arbitrary :: Gen (Positive Int)
- (Positive z_dim) <- arbitrary :: Gen (Positive Int)
- elements <- vectorOf (x_dim * y_dim * z_dim) (arbitrary :: Gen Double)
- let new_shape = (Z :. x_dim :. y_dim :. z_dim)
- let three_d = Data.Array.Repa.fromList new_shape elements
- return three_d
-