From f12ecb67472aa2453d3b1b3fb68e4eb9521aee77 Mon Sep 17 00:00:00 2001
From: hbui <hong-phuc.bui@htwsaar.de>
Date: Sun, 21 Jul 2024 13:41:27 +0200
Subject: [PATCH] gui ok

---
 num-int/src/numint/riemann_sum.py |   28 +++++++++++++++++++++++++---
 1 files changed, 25 insertions(+), 3 deletions(-)

diff --git a/num-int/src/numint/RiemannSum.py b/num-int/src/numint/riemann_sum.py
similarity index 61%
rename from num-int/src/numint/RiemannSum.py
rename to num-int/src/numint/riemann_sum.py
index 826ac3f..250f073 100644
--- a/num-int/src/numint/RiemannSum.py
+++ b/num-int/src/numint/riemann_sum.py
@@ -1,3 +1,6 @@
+from typing import Callable
+
+
 def split(iteration=8):
     (a, b) = (0, 8)
     x = [a, b]
@@ -14,7 +17,7 @@
     pass
 
 
-def numint(f, a, b, epsilon=1e-3):
+def numint_epsilon(f:Callable[[float], float], a: float, b: float, epsilon: float = 1e-3):
     dx = b - a
     x = [a, b]  # debug only
     y = [f(a), f(b)]
@@ -25,7 +28,6 @@
         parts = 2 * parts
         dx = dx / 2
         n += 1
-        # print(n, " → ", parts)
         for i in range(1, parts, 2):
             x.insert(i, a + i * dx)
             y.insert(i, f(a + i * dx))
@@ -34,7 +36,27 @@
     return x, y, s_left, s_right, n
 
 
-def numint_compact(f, a, b, epsilon=1e-3):
+def numint_section(f:Callable[[float], float], a: float, b: float, section_count: int = 8):
+    dx = b - a
+    x = [a, b]
+    y = [f(a), f(b)]
+    (n, parts) = (0, 1)
+    s_left = dx * y[0]
+    s_right = dx * y[1]
+    while parts < section_count:
+        parts = 2 * parts
+        dx = dx / 2
+        n += 1
+        for i in range(1, parts, 2):
+            x.insert(i, a + i * dx)
+            y.insert(i, f(a + i * dx))
+        s_left = sum(y[0:-1]) * dx
+        s_right = sum(y[1:]) * dx
+        pass
+    return x, y, s_left, s_right, n
+
+
+def numint_compact(f: Callable[[float], float], a: float, b: float, epsilon=1e-3):
     dx = b - a
     y_l = f(a)
     y_r = f(b)

--
Gitblit v1.10.0-SNAPSHOT