]> gitweb.michael.orlitzky.com - numerical-analysis.git/commitdiff
Replace (fromRational . toRational) with realToFrac everywhere.
authorMichael Orlitzky <michael@orlitzky.com>
Tue, 5 Feb 2013 03:17:11 +0000 (22:17 -0500)
committerMichael Orlitzky <michael@orlitzky.com>
Tue, 5 Feb 2013 03:17:11 +0000 (22:17 -0500)
src/Integration/Simpson.hs
src/Integration/Trapezoid.hs
src/Normed.hs
src/ODE/IVP.hs
src/Vector.hs

index b7000224764e92095398837dedf3d56eaf4ee96c..2481f850b3bf6e15d7c7fac25c9c65de7d8b6be1 100644 (file)
@@ -38,7 +38,7 @@ simpson_1 :: (RealFrac a, Fractional b, Num b)
 simpson_1 f a b =
   coefficient * ((f a) + 4*(f midpoint) + (f b))
   where
-    coefficient = (fromRational $ toRational (b - a)) / 6
+    coefficient = (realToFrac (b - a)) / 6
     midpoint = (a + b) / 2
 
 
index 8d4b76903b04603a09ebb748e501582b4026b0c6..5452a5e8a5fe70195cf3de6711934dadd8cb623d 100644 (file)
@@ -30,7 +30,7 @@ trapezoid_1 :: (RealFrac a, Fractional b, Num b)
             -> a       -- ^ The \"right\" endpoint, @b@
             -> b
 trapezoid_1 f a b =
-  (((f a) + (f b)) / 2) * (fromRational $ toRational (b - a))
+  (((f a) + (f b)) / 2) * (realToFrac (b - a))
 
 
 -- | Use the composite trapezoid rule to numerically integrate @f@
index 0187df916de7fd5d08338fc192504428c0668153..9bef7631221b9076fe57a261299c98147301233d 100644 (file)
@@ -25,17 +25,17 @@ instance Normed Integer where
   norm_infty = fromInteger
 
 instance Normed Rational where
-  norm_p _ = fromRational
-  norm_infty = fromRational
+  norm_p _ = realToFrac
+  norm_infty = realToFrac
 
 instance Epsilon e => Normed (BigFloat e) where
-  norm_p _ = fromRational . toRational
-  norm_infty = fromRational . toRational
+  norm_p _ = realToFrac
+  norm_infty = realToFrac
 
 instance Normed Float where
-  norm_p _ = fromRational . toRational
-  norm_infty = fromRational . toRational
+  norm_p _ = realToFrac
+  norm_infty = realToFrac
 
 instance Normed Double where
-  norm_p _ = fromRational . toRational
-  norm_infty = fromRational . toRational
+  norm_p _ = realToFrac
+  norm_infty = realToFrac
index d4876ded2dfe4994bdfb4c7841be7ef84d0a930a..6bde763a8e264549b8dae24ecbe945b57c0b4e99 100644 (file)
@@ -35,7 +35,7 @@ eulers_method1 :: (RealFrac a, RealFrac b)
 eulers_method1 x0 y0 f h =
   y0 +  h'*y'
   where
-    h' = fromRational $ toRational h
+    h' = realToFrac h
     y' = (f x0 y0)
 
 
index f55808b33f534283cf7ba432d667c72a6e565353..a4d3c13585bfba3b0b06a14506c0b025eb3cc3c4 100644 (file)
@@ -143,7 +143,7 @@ instance (RealFloat a, Ord a, Vector v a) => Normed (Vn v a) where
   --   >>> norm_infty v1
   --   5
   --
-  norm_infty (Vn v1) = fromRational $ toRational $ V.foldl max 0 v1
+  norm_infty (Vn v1) = realToFrac $ V.foldl max 0 v1
 
   -- | Generic p-norms. The usual norm in R^n is (norm_p 2).
   --
@@ -156,7 +156,7 @@ instance (RealFloat a, Ord a, Vector v a) => Normed (Vn v a) where
   --   5.0
   --
   norm_p p (Vn v1) =
-    fromRational $ toRational $ root $ V.sum $ V.map (exponentiate . abs) v1
+    realToFrac $ root $ V.sum $ V.map (exponentiate . abs) v1
     where
       exponentiate = (** (fromIntegral p))
       root = (** (recip (fromIntegral p)))