Kedves diákjaim! A Python programozás a mélyreható elméleti ismereteket (algoritmuselmélet, komplexitás, objektumorientáltság) és a tudományos számítást, adatelemzést ötvözi. A Simpson-formula integrálással való megoldása szép példája
-----------------------------
import numpy as np
from typing import Callable, Union
def simpson_integrals(
f: Callable[[Union[int, float]], float],
a: Union[int, float],
b: Union[int, float],
n: int
) -> float:
"""
Kiszámolja az f(x) határozott integrálját az [a, b] intervallumon
a Simpson-szabály alkalmazásával.
"""
if n % 2 != 0:
raise ValueError("Az 'n' értékének páros számnak kell lennie!")
h = (b - a) / n
x = np.linspace(a, b, n + 1)
y = f(x)
integral_approx = y[0] + y[-1]
integral_approx += 4 * np.sum(y[1:-1:2])
integral_approx += 2 * np.sum(y[2:-2:2])
return (h / 3) * integral_approx
if __name__ == "__main__":
funkcio = lambda x: x**2
also_hatar = 1
felso_hatar = 2
reszintervallum = 1000
eredmeny = simpson_integrals(funkcio, also_hatar, felso_hatar, reszintervallum)
print(f"Az integrál becsült értéke: {eredmeny:.6f}")
-------------------
Eredmény: 2.333333
Nincsenek megjegyzések:
Megjegyzés küldése