]> gitweb.michael.orlitzky.com - numerical-analysis.git/commitdiff
Remove solution', because what did it do?
authorMichael Orlitzky <michael@orlitzky.com>
Mon, 7 Apr 2014 16:16:40 +0000 (12:16 -0400)
committerMichael Orlitzky <michael@orlitzky.com>
Mon, 7 Apr 2014 16:16:40 +0000 (12:16 -0400)
src/FEM/R1.hs

index 217abd3009acaac271e2a17fe99eccd6e5df9050..4794a3c939af6ac9a31624c04300d3e63c7ca274 100644 (file)
@@ -599,7 +599,7 @@ solution pde params =
     mesh_with_ptr_rows = zip2 (mesh params) (rows2 ptr)
 
     make_local_coeffs :: (Interval a, Row (S n) Int) -> Row (S n) a
-    make_local_coeffs (interval, ptr_row) =
+    make_local_coeffs (_, ptr_row) =
       construct lambda
         where
           lambda _ j = if (ptr_row !!! (0,j)) == zero
@@ -623,70 +623,11 @@ solution pde params =
     solved_column = map2 solve_piece $ mesh_with_coeffs
 
     solve_piece :: (Interval a, Row (S n) a) -> (Interval a, (a -> a))
-    solve_piece (interval, coeffs_row) = (interval, f)
+    solve_piece (interval, coeffs_row) = (interval, g)
       where
         coeffs_col = transpose coeffs_row
 
-        f x = element_sum2 $ zipwith2 combine coeffs_col global_basis_functions
+        g x = element_sum2 $ zipwith2 combine coeffs_col global_basis_functions
           where
             xi = (affine interval) x
             combine ci ni = ci*(ni xi)
-
-
-
-
-solution' :: forall m n l a.
-            (Arity m, Arity n, Arity l,
-            Algebraic.C a, Eq a, RealField.C a, ToRational.C a, Show a)
-         => Col (S l) a
-         -> PDE a
-         -> Params m n (S l) a
-         -> Piecewise a
-solution' global_coeffs pde params =
-  from_intervals $ map head $ toList $ solved_column
-  where
---    global_coeffs :: Col (S l) a
---    global_coeffs = coefficients pde params
-
-    ptr :: Mat m (S n) Int
-    ptr = pointer params
-
-    -- Each mesh element has an associated row in the pointer
-    -- matrix. Stick them together.
-    mesh_with_ptr_rows :: Col m (Interval a, Row (S n) Int)
-    mesh_with_ptr_rows = zip2 (mesh params) (rows2 ptr)
-
-    make_local_coeffs :: (Interval a, Row (S n) Int) -> Row (S n) a
-    make_local_coeffs (interval, ptr_row) =
-      construct lambda
-        where
-          lambda _ j = if (ptr_row !!! (0,j)) == zero
-                       then zero
-                       else global_coeffs !!! ((ptr_row !!! (0,j)) - 1, 0)
-
-    -- Create a column vector for each mesh element containing the global
-    -- coefficients corresponding to that element.
-    local_coeffs :: Col m (Row (S n) a)
-    local_coeffs = map2 make_local_coeffs mesh_with_ptr_rows
-
-    global_basis_functions :: Col (S n) (a -> a)
-    global_basis_functions =
-      construct lambda
-        where lambda i _ = big_N (toInteger i)
-
-    mesh_with_coeffs :: Col m (Interval a, Row (S n) a)
-    mesh_with_coeffs = zip2 (mesh params) local_coeffs
-
-    solved_column :: Col m (Interval a, (a -> a))
-    solved_column = map2 solve_piece $ mesh_with_coeffs
-
-    solve_piece :: (Interval a, Row (S n) a) -> (Interval a, (a -> a))
-    solve_piece (interval, coeffs_row) = (interval, f)
-      where
-        coeffs_col = transpose coeffs_row
-
-        f x = element_sum2 $ zipwith2 combine coeffs_col global_basis_functions
-          where
-            xi = (affine interval) x
-            combine ci ni = ci*(ni xi)
-