From 2734dd1ddc6b31aba6377ef969a33967babca519 Mon Sep 17 00:00:00 2001 From: Alberto Ruiz Date: Wed, 28 May 2014 12:16:34 +0200 Subject: fix static blocks, GMatrix --- packages/base/src/Numeric/LinearAlgebra/Util/CG.hs | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) (limited to 'packages/base/src/Numeric/LinearAlgebra/Util') diff --git a/packages/base/src/Numeric/LinearAlgebra/Util/CG.hs b/packages/base/src/Numeric/LinearAlgebra/Util/CG.hs index f821b57..b82c74f 100644 --- a/packages/base/src/Numeric/LinearAlgebra/Util/CG.hs +++ b/packages/base/src/Numeric/LinearAlgebra/Util/CG.hs @@ -41,22 +41,21 @@ cg sym at a (CGState p r r2 x _) = CGState p' r' r'2 x' rdx ap1 = a p ap | sym = ap1 | otherwise = at ap1 - pap | sym = p ◇ ap1 + pap | sym = p <·> ap1 | otherwise = norm2 ap1 ** 2 alpha = r2 / pap dx = scale alpha p x' = x + dx r' = r - scale alpha ap - r'2 = r' ◇ r' + r'2 = r' <·> r' beta = r'2 / r2 p' = r' + scale beta p rdx = norm2 dx / max 1 (norm2 x) conjugrad - :: (Transposable m mt, Contraction m V V, Contraction mt V V) - => Bool -> m -> V -> V -> R -> R -> [CGState] -conjugrad sym a b = solveG (tr a ◇) (a ◇) (cg sym) b + :: Bool -> GMatrix -> V -> V -> R -> R -> [CGState] +conjugrad sym a b = solveG (tr a !#>) (a !#>) (cg sym) b solveG :: (V -> V) -> (V -> V) @@ -72,9 +71,9 @@ solveG mat ma meth rawb x0' ϵb ϵx b = mat rawb x0 = if x0' == 0 then konst 0 (dim b) else x0' r0 = b - a x0 - r20 = r0 ◇ r0 + r20 = r0 <·> r0 p0 = r0 - nb2 = b ◇ b + nb2 = b <·> b ok CGState {..} = cgr2 x1 -- cgit v1.2.3