diff options
Diffstat (limited to 'packages/base/src/Internal/CG.hs')
-rw-r--r-- | packages/base/src/Internal/CG.hs | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/packages/base/src/Internal/CG.hs b/packages/base/src/Internal/CG.hs index fd14212..758d130 100644 --- a/packages/base/src/Internal/CG.hs +++ b/packages/base/src/Internal/CG.hs | |||
@@ -45,13 +45,13 @@ cg sym at a (CGState p r r2 x _) = CGState p' r' r'2 x' rdx | |||
45 | ap1 = a p | 45 | ap1 = a p |
46 | ap | sym = ap1 | 46 | ap | sym = ap1 |
47 | | otherwise = at ap1 | 47 | | otherwise = at ap1 |
48 | pap | sym = p <·> ap1 | 48 | pap | sym = p <.> ap1 |
49 | | otherwise = norm2 ap1 ** 2 | 49 | | otherwise = norm2 ap1 ** 2 |
50 | alpha = r2 / pap | 50 | alpha = r2 / pap |
51 | dx = scale alpha p | 51 | dx = scale alpha p |
52 | x' = x + dx | 52 | x' = x + dx |
53 | r' = r - scale alpha ap | 53 | r' = r - scale alpha ap |
54 | r'2 = r' <·> r' | 54 | r'2 = r' <.> r' |
55 | beta = r'2 / r2 | 55 | beta = r'2 / r2 |
56 | p' = r' + scale beta p | 56 | p' = r' + scale beta p |
57 | 57 | ||
@@ -75,9 +75,9 @@ solveG mat ma meth rawb x0' ϵb ϵx | |||
75 | b = mat rawb | 75 | b = mat rawb |
76 | x0 = if x0' == 0 then konst 0 (dim b) else x0' | 76 | x0 = if x0' == 0 then konst 0 (dim b) else x0' |
77 | r0 = b - a x0 | 77 | r0 = b - a x0 |
78 | r20 = r0 <·> r0 | 78 | r20 = r0 <.> r0 |
79 | p0 = r0 | 79 | p0 = r0 |
80 | nb2 = b <·> b | 80 | nb2 = b <.> b |
81 | ok CGState {..} | 81 | ok CGState {..} |
82 | = cgr2 <nb2*ϵb**2 | 82 | = cgr2 <nb2*ϵb**2 |
83 | || cgdx < ϵx | 83 | || cgdx < ϵx |