]> gitweb.michael.orlitzky.com - numerical-analysis.git/blobdiff - src/FixedVector.hs
Remove reimplemented vector functions from FixedVector.hs.
[numerical-analysis.git] / src / FixedVector.hs
index 70f641edaf640bd641511f971b27a06075f91d13..844b9b59e1f12c03e86afe336c2c494494666ea2 100644 (file)
@@ -172,32 +172,6 @@ angle v1 v2 =
     norms = (norm v1) * (norm v2)
 
 
--- | The length of a vector.
---
---   Examples:
---
---   >>> let v1 = make2d (1,2)
---   >>> length v1
---   2
---
-length :: (V.Vector v a) => Vn v a -> Int
-length (Vn v1) = V.length v1
-
-
--- | Unsafe indexing.
---
---   Examples:
---
---   >>> let v1 = make3d (1,2,3)
---   >>> v1 ! 2
---   3
---   >>> v1 ! 3
---   *** Exception: Data.Vector.Fixed.!: index out of range
---
-(!) :: (V.Vector v a) => Vn v a -> Int -> a
-(!) (Vn v1) idx = v1 V.! idx
-
-
 -- | Safe indexing.
 --
 --   Examples:
@@ -208,44 +182,11 @@ length (Vn v1) = V.length v1
 --   >>> v1 !? 3
 --   Nothing
 --
-(!?) :: (V.Vector v a) => Vn v a -> Int -> Maybe a
-(!?) v1@(Vn v2) idx
-  | idx < 0 || idx >= V.length v2 = Nothing
-  | otherwise                     = Just $ v1 ! idx
-
+(!?) :: (V.Vector v a) => v a -> Int -> Maybe a
+(!?) v1 idx
+  | idx < 0 || idx >= V.length v1 = Nothing
+  | otherwise                     = Just $ v1 V.! idx
 
--- | Convert vector to a list.
---
---   Examples:
---
---   >>> let v1 = make2d (1,2)
---   >>> toList v1
---   [1,2]
---
-toList :: (V.Vector v a) => Vn v a -> [a]
-toList (Vn v1) = V.toList v1
-
-
--- | Convert a list to a vector.
---
---   Examples:
---
---   >>> fromList [1,2] :: Vn Vec2D Int
---   (1,2)
---
-fromList :: (V.Vector v a) => [a] -> Vn v a
-fromList xs = Vn $ V.fromList xs
-
--- | Map a function over a vector.
---
---   Examples:
---
---   >>> let v1 = make2d (1,2)
---   >>> map (*2) v1
---   (2,4)
---
-map :: (V.Vector v a, V.Vector v b) => (a -> b) -> Vn v a -> Vn v b
-map f (Vn vs) = Vn $ V.map f vs