Analitikus függvénykiértékelés

Analitikus függvénykiértékelés

szerkesztés

A matematika és fizika terén mindig függvények kötnek össze változókat, legáltalánosabb esetben a következő alakban f(x) = y. Ezzel egyenértékű az az állítás, hogy minden x értéknek megfelel egy jól meghatározott y érték. Numerikus analízis terén gyakran megjelenik a behelyettesítés értékének a meghatározásának a problémája. Többek között az integrálok numerikus analízisében, a kvadratúráknál.

Bizonyos esetekben a függvényértékek kiszámításánál megjelennek a Taylor-, illetve a Maclaurin-sorok. Ezek megfelelő esetben egyre pontosabb értéket térítenek vissza, minél inkább növeljük a lépések számát.

Általános esetben megkeressük a függvény Maclaurin-sorát, majd a sor alapján meghatározunk egy rekurrenciás képletet. A képletet megfelelő módon implementálva egy programba, azt addig engedjük futni, míg a kívánt eredmény az általunk meghatározott hibakorláton belül esik.

A rekurrenció a következő formában hasznos programozásban:  , ahol az  

  típusú függvény

szerkesztés

Maclaurin sor:

 

 

Rekurrenciás képlet:  

A tagok számát növelve, a pontossága is növekszik a behelyettesítési értéknek.

Python kód

szerkesztés
import math
def maclaurin(a, x, e):
	u = 1
	n = 0
	T = 1
	while (math.sqrt(u*u)>e):
		u = x*u*(a-n)/(n+1)
		T = T + u
		n = n + 1
	return T

 , exponenciális függvény

szerkesztés

Maclaurin sor:

 

 

Rekurrenciás képlet:  

Python kód

szerkesztés
import math
def exp(x, e):
	u = 1
	n = 0
	T = 1
	while (math.sqrt(u*u)>e):
		u = x*u/(n+1)
		T = T + u
		n = n + 1
	return T

A természetes logaritmus függvény

szerkesztés

Maclaurin-sor:

 ,    

 

Rekurrenciás képlet:  

Python kód

szerkesztés
import math
def ln(x, e):
	u = x
	n = 0
	T = x
	while (math.sqrt(u*u)>e):
		n = n + 1		
		u = -u*n*x/(n+1)
		T = T + u
	return T

Sin(x) függvény

szerkesztés

 

 

Rekurrenciás képlet:  

Python kód

szerkesztés
import math
def sin(x, e):
	u = x
	n = 0
	T = x
	while (math.sqrt(u*u)>e):
		n = n + 1		
		u = -u*x*x/((2n+1)*(2n))
		T = T + u
	return T

Lásd még

szerkesztés
  • Numerikus módszerek (egyetemi jegyzet): Lázár Zsolt, Lázár József, Járai-Szabó Ferenc, Bábes-Bólyai Tudomány Egyetem, Fizika kar