Pythonban a sympy (szimbolikus matematika) könyvtár segítségével alkalmazzuk a L'Hospital-szabályt.
--------------
from sympy import symbols, Limit, tan, sin
# Szimbólum definiálása
x = symbols('x')
# Példa függvények
f = tan(x) - x
g = x - sin(x)
hely = 0
def l_hospital_vizsgalat(f, g, x, hely):
print(f"Függvények: f(x) = {f} / g(x) = {g}")
print(f"Határérték helye: x -> {hely}")
# Eredeti határérték létrehozása
hatarertek = Limit(f/g, x, hely)
erteke = hatarertek.doit()
# HIBA JAVÍTÁSA:
# A sympy.Limit objektumnak nincs .expr attribútuma.
# Használjuk magát a 'hatarertek' objektumot vagy a 'hatarertek.args[0]'-t a belső kifejezéshez.
print(f"Eredeti határérték: {hatarertek} = {erteke}\n")
# L'Hospital alkalmazása szemléltetés céljából (0/0 esetén)
print("L'Hospital-szabály alkalmazása...")
f_deriv = f.diff(x)
g_deriv = g.diff(x)
print(f"Új számláló (f'): {f_deriv}")
print(f"Új nevező (g'): {g_deriv}")
uj_hatarertek = Limit(f_deriv / g_deriv, x, hely)
uj_erteke = uj_hatarertek.doit()
# Itt is javítva az attribútum hiba
print(f"Új határérték: {uj_hatarertek} = {uj_erteke}")
# Program futtatása
l_hospital_vizsgalat(f, g, x, hely)
--------------------
Függvények: f(x) = -x + tan(x) / g(x) = x - sin(x)
Határérték helye: x -> 0
Eredeti határérték: Limit((-x + tan(x))/(x - sin(x)), x, 0, dir='+') = 2
L'Hospital-szabály alkalmazása...
Új számláló (f'): tan(x)**2
Új nevező (g'): 1 - cos(x)
Új határérték: Limit(tan(x)**2/(1 - cos(x)), x, 0, dir='+') = 2
-----------------
Futtatás; https://python-fiddle.com/examples/sympy?checkpoint=1781800356
Nincsenek megjegyzések:
Megjegyzés küldése