2.Függvények közelítése és kiértékelése
2.2. Transzcendens függvények közelítése és kiértékelése
2.3. Függvények legkisebb négyzetes közelítése
2.4. Nevezetes ortonormált függvény-rendszerek
2.5. Implicit függvények kiértékelése
2.1. Polinomok kiértékelése
A polinomok
p(x) = a0 xn+
a1 xn-1+ … an-1 x + an (2.1)
alkotják a függvények
legegyszerűbb osztályát, és a következő formula alapján könnyen kiértékelődhetők.
Horner-féle elrendezés
Horner W. (1786-1837) - angol
matematikus.
Átalakítjuk a (2.1) képletet
p(x) = (a0 xn-1+ a1 xn-2+ … an-1) x + an =
= ((a0 xn-2+ a1
xn-3+ … an-2) x + an-1)x + an= … =
= (… (a0
x+ a1) x+ … an-2) x + an-1)x + an
(2.2)
Akkor a (2.2) alapján a p(x)
kiértékelése a következő algoritmus szerint történik:
s=a0
s=s·x+a1
s=s·x+a2
..............
s=s·x+an (2.3)
ami egy ciklusban könnyen
kiszámítható:
s=a0
s=s·x+ak, k=1,
2, …, n
(2.4)
A (2.4) algoritmusnak az
előnye, hogy a polinom kiértékelésére csak n szorzás szükséges.
Példa 2.1
Számítsuk ki a
p(x) =x7
– 2x6+ x5 – 3x4+4x3 – x2+6x
– 1
értékét a –1.5 pontban.
p(–1.5)=
–88.3985
2.2.
Transzcendens függvények közelítése és kiértékelése
Mint
ismeretes, a matematikai műveletek közül a számítógépek csak a négy alapvető aritmetikai
műveletet képesek végrehajtani. Ezért a transzcendens függvényeket csak numerikus
módszerekkel lehet kiértékelni. Ezek a módszerek azon az elven alapszanak, hogy
a f(x)
transzcendens függvényt egy olyan p(x) függvénnyel (leggyakrabban polinommal)
f(x)≈ p(x) (2.5)
közelítjük, melynek a
kiértékelése nem okoz problémát. A közelítések gyakran a deriváltok
alkalmazásával történnek, mivel azok fontos információt tartalmaznak a
függvényről. Mivel
(2.6)
vagy
akkor
f(x+h)≈ f(x) +h f′(x)
vagy egy másik alakban:
f(x)≈ f(x0) + f′( x0)(x –
x0) (2.7)
Ha a f(x0) és f′(x0) értékeit könnyen tudjuk kiszámítani, akkor a (2.7) alapján
kiszámíthatjuk a f(x) függvényt értékét.
Például, legyen f(x)=xa,
x0=1. Akkor f(1)=1,
f′(x) =axa-1, f′(x)
=a.
Ha x=1+Δ, akkor (1+Δ)a≈1+a
Δ
Példa 2.2
Taylor-sor alkalmazása
Ha a függvény magasabb rendű
deriváltjai is léteznek, akkor szerkeszthetünk Taylor-sort
(2.8)
a Taylor-formulát maradéktaggal
így írhatjuk le:
(2.9)
(2.10)
0<
ζ(x,n)<1
a Lagrange-féle maradéktag.
Mivel a Taylor-sor
összegzésének az eredménye nem mindig egyenlő a f(x) függvény értékével,
minden konkrét esetben ellenőrizni kell azt, hogy
(2.11)
A Taylor-formulából x0=0
esetén Maclaurin-formulát kapunk:
(2.12)
(2.13)
f(x)≈p(x)
(2.14)
A (2.12)-(2.14) képletek
alapján több elemi transzcendens függvényt lehet közelíteni. A közelítés hiba-becslését
a
(2.15)
formula alapján lehet megadni.
Néhány konkrét függvény
elemzése.
a). Exponenciális függvény
y=ex
(2.16)
(2.17)
(2.18)
u0=1, S0=1, Sk=Sk-1+uk (2.19)
Ha 0<2|x|≤n,
és |x|≤n/2
akkor
|Rn(x)|< |un| (2.20)
Ezt az összegzést addig folytatjuk,
amíg nem teljesül a
|un|<ε (2.21)
feltétel.
Az összegzés iterációs algoritmussal
történik, mely a (2.18),(2.19) és (2.21) képleteken alapszik.
A |x|értékének növekedésével a Maclaurin-formula maradéktagja is növekszik, és ezért nagy |x|
esetén ezt az algoritmust nem ajánlatos alkalmazni. Ha
lehetőség van, akkor a függvények tulajdonsága alapján csökkenthetjük az |x|
értékét.
Például, a ex függvény
esetén ez könnyen megoldható a következő felbontással:
x=E(x)+q, 0≤q<1 (2.22)
ex=
eE(x)· eq (2.23)
Mivel 0≤q<1, akkor a
Maclaurin-sor gyorsan konvergál, és a hibabecslés értéke:
0≤Rn(q)<qn+1/(n!·n) (2.24)
Példa 2.3
Számítsuk ki a értékét
10-5 pontossággal.
=
u0=1, uk= uk-1/(2k), k=1,
2, …, n
|
uk |
0 |
1 |
1 |
0,5 |
2 |
0,125 |
3 |
0,0208333 |
4 |
0,0026042 |
5 |
0,0002604 |
6 |
0,0000217 |
7 |
0,0000016 |
S= |
1,6487212 |
Az eredmény: =1,64872
b). Trigonometrikus függvények
y=sinx
(2.25)
(2.26)
u1=x, uk+1= –x2 uk/(2k·(2k+1))
(2.27)
k=1, 2, …, n-1
s=x1, s=s+uk (2.28)
| un|<ε
(2.29)
|Rn(x)|≤
|x|2n+1/(2n+1)! =|un+1| (2.30)
Ebben az esetben az iterációs
algoritmust a (2.27)-(2.29) képletek alapján szerkesztjük.
y=cosx
(2.31)
(2.32)
u1=1, uk+1= –x2 uk/((2k-1)·2k) (2.33)
k=1, 2, …, n-1
Mivel a sinx
és a cosx
függvények periodikusak, ezért ezeket a képleteket
elegendő csak a
intervallumon alkalmazni. Az elérhető pontosság
szempontjából ez a lehetőség lényeges, mivel a x növekedésével gyorsan
növekszik a hiba-becslés értéke is.
Példa 2.4
Számítsuk ki a sin
23º 54′ értékét
, ε=10-4
x=0.41714 radián.
u1=x=0.41714
u2=–x2u1/(2·3)= –0.01210
u3=x2u2/(4·5)= 0.00011
u4=–x2u3/(6·7)= –0.0000
sin 23º 54′=0,40515
c). Hiperbolikus függvények
Hiperbolikus szinusz
y=shx=(ex- e-x)/2; y=chx=(ex+
e-x)/2; (2.34)
(2.35)
(2.36)
(2.37)
ha n≥|x|, akkor
Rn< |un|/3 (2.38)
Hiperbolikus koszinusz
(2.39)
(2.40)
(2.41)
ha n≥|x,|, akkor
Rn<2
|un|/3 (2.42)
d) Logaritmikus függvény
Levezetjük a
y=log x
függvény Teylor-sorát.
Mivel
(2.43)
és
(2.44)
akkor
(2.45)
(2.46)
A Taylor-sor a x=1 és
x=
–1 pontokban:
(2.47)
(2.48)
konvergens, ha |x|≤1
A Maple alkalmazásával
elemezzük a Taylor-sort a sin(x) függvény esetén.
> taylor(sin(x), x, 6);
> s:=
Átalakítjuk az eredményt
polinommá:
> p:=convert(s, polynom);
vagy
> convert(p, float);
x – .1666666667 x3
+ .008333333333 x5 +.0001984126984 x7
Kiértékeljük a polinomot a x=2
pontban:
> x :=2;
x :=2
>evalf(p, x);
.91
Ellenőrizzük az eredményt:
> sin(2.);
.909297268
> x :=4;
x :=4
>evalf(p, x);
– 1.384
Ez már egyáltalán nem jó! Ellenőrizzük az eredményt:
> sin(4.);
–.7568025953
> x
:=10;
x :=10
>evalf(p, x);
–1307,460317
>
x :=25;
x :=25
>evalf(p, x);
–1132213963293650793650794·107
Ez az eredmény fantasztikusan rossz!!!
Szerkesztünk grafikonokat:
> x:=’x’;
x:=x
> plot([p(x), sin(x)], x=0...2*Pi );
Mint láthatjuk, ha x>π,
akkor növekszik az eltérés.
A hiba grafikonja:
> plot((p(x),– sin(x)), x=0...25
);
> plot(abs(p(x),– sin(x)), x=0...25
);
Ezekből a példákból
megállapítható, hogy amikor x
távolodik a 0 ponttól ( Maclaurin-sor esetén), akkor lényegesen növekszik az abszolút hiba. Ez a tény
sok esetben korlátozza a Taylor-formula alkalmazását.
Sokkal jobb eredményeket lehet
elérni, ha a függvények ortogonális
polinomokkal közelítjük.