From 348474292518dad3374b0664cce16ea231153636 Mon Sep 17 00:00:00 2001 From: zimmersandro Date: Thu, 26 Mar 2026 16:18:47 +0100 Subject: [PATCH] =?UTF-8?q?feat:=20Trapez=20und=20Simpson=20Integration.?= =?UTF-8?q?=20build:=20scipy=20zu=20requirements=20hinzugef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- requirements.txt | 7 ++++--- src/scipy_integrate.py | 41 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 45 insertions(+), 3 deletions(-) create mode 100644 src/scipy_integrate.py diff --git a/requirements.txt b/requirements.txt index f8a25f4..9ec0b3e 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,3 +1,4 @@ -numpy -matplotlib -ipykernel \ No newline at end of file +numpy==2.4.3 +matplotlib==3.10.8 +ipykernel==7.2.0 +scipy==1.17.1 \ No newline at end of file diff --git a/src/scipy_integrate.py b/src/scipy_integrate.py new file mode 100644 index 0000000..f86550f --- /dev/null +++ b/src/scipy_integrate.py @@ -0,0 +1,41 @@ +# %% +# Python initialisieren +import matplotlib.pyplot as plt +import numpy as np +import scipy.integrate as ig + +# Parameter +x_0 = 0.0 +x_E = np.pi +N = 11 +n = 5 +pr = 6 +lw = 3 +fig = 1 + +# Funktion +f = lambda x: np.sin(x) + +# Berechnungen +for k in range(0, n): + x_data = np.linspace(x_0, x_E, N) + y_data = f(x_data) + I = ig.trapezoid(y=y_data, x=x_data) + J = ig.simpson(y=y_data, x=x_data) + print(f"I = {I:#.16g}") + print(f"J = {J:#.16g}") + N *= 2 + +# Ausgabe +print(f"I = {I:#.{pr}g}") +print(f"J = {J:#.{pr}g}") + +# Plot +fh = plt.figure(fig) +plt.plot(x_data, y_data, linewidth=lw) +plt.xlabel("x") +plt.ylabel("y") +plt.grid(visible=True) +plt.axis("image") +plt.show() +# %%