equal
deleted
inserted
replaced
205 fun isnegstr x = String.isPrefix "-" x |
205 fun isnegstr x = String.isPrefix "-" x |
206 fun negstr x = if isnegstr x then String.extract (x, 1, NONE) else "-"^x |
206 fun negstr x = if isnegstr x then String.extract (x, 1, NONE) else "-"^x |
207 |
207 |
208 fun test_1 (lower, upper) = |
208 fun test_1 (lower, upper) = |
209 if lower = upper then |
209 if lower = upper then |
210 (if Float.eq (lower, (Intt.int ~1, Intt.zero)) then ~1 |
210 (if Float.eq (lower, (Integer.int ~1, Integer.zero)) then ~1 |
211 else if Float.eq (lower, (Intt.int 1, Intt.zero)) then 1 |
211 else if Float.eq (lower, (Integer.int 1, Integer.zero)) then 1 |
212 else 0) |
212 else 0) |
213 else 0 |
213 else 0 |
214 |
214 |
215 fun calcr (row_index, a) g = |
215 fun calcr (row_index, a) g = |
216 let |
216 let |
286 val index = xlen-i |
286 val index = xlen-i |
287 val (r, (r12_1, r12_2)) = abs_estimate (i-1) r1 r2 |
287 val (r, (r12_1, r12_2)) = abs_estimate (i-1) r1 r2 |
288 val b1 = case Inttab.lookup r1 index of NONE => raise (Load ("x-value not bounded from below: "^(names index))) | SOME x => x |
288 val b1 = case Inttab.lookup r1 index of NONE => raise (Load ("x-value not bounded from below: "^(names index))) | SOME x => x |
289 val b2 = case Inttab.lookup r2 index of NONE => raise (Load ("x-value not bounded from above: "^(names index))) | SOME x => x |
289 val b2 = case Inttab.lookup r2 index of NONE => raise (Load ("x-value not bounded from above: "^(names index))) | SOME x => x |
290 val abs_max = Float.max (Float.neg (Float.negative_part b1)) (Float.positive_part b2) |
290 val abs_max = Float.max (Float.neg (Float.negative_part b1)) (Float.positive_part b2) |
291 val i' = Intt.int index |
291 val i' = Integer.int index |
292 in |
292 in |
293 (add_row_entry r i' abs_max, (add_row_entry r12_1 i' b1, add_row_entry r12_2 i' b2)) |
293 (add_row_entry r i' abs_max, (add_row_entry r12_1 i' b1, add_row_entry r12_2 i' b2)) |
294 end |
294 end |
295 val (r, (r1, r2)) = abs_estimate xlen r1 r2 |
295 val (r, (r1, r2)) = abs_estimate xlen r1 r2 |
296 in |
296 in |