Trigonometrinių, rodiklinės ir hiperbolinių funkcijų reikšmių skaičiavimas

Iš testwiki.
Pereiti į navigaciją Jump to search

Elementariųjų funkcijų reikšmių skaičiavimas


Šių funkcijų reikšmių skaičiavimas pagrįstas grandininėmis (arba tolydžiosiomis) trupmenomis. Reikalingos žinios apie tas trupmenas pateiktos toliau.
Išvardytų funkcijų reikšmių skaičiavimas yra susijęs su konkrečia grandinine trupmena, gaunama išskleidus funkcją th⁡x. Todėl pirmiausia aptarsime, kaip skaičiuoti funkcijos th⁡x reikšmes, o paskui - kitų funkcijų reikšmes.
Toliau ch⁡x,sh⁡x,th⁡x yra atitinkamai hiperbolinis kosinusas, hiperbolinis sinusas ir hiperbolinis tangentas. Apie hiperbolines funkcjas parašyta čia:

https://en.wikipedia.org/wiki/Hyperbolic_functions

1. Kai kurios žinios apie grandinines trupmenas.

Baigtine grandinine trupmena PnQn vadinamas šitoks reiškinys:
[ https://en.wikipedia.org/wiki/Generalized_continued_fraction ]
PnQn=b0+a1b1+a2b2+a3b3+(8.95)
⋱
+anbn
Skaičiai a1,a2,...,an dažniausiai vadinami daliniai skaitikliais, o b1,b2,...,bn – daliniais vardikliais.
Grandininės trupmenos
P0Q0=b01, P1Q1=b0+a1b1, P2Q2=b0+a1b1+a2b2,...(8.96)
vadinamos grandininės trupmenos PnQn reduktais.
Tarę, kad P−1=1,Q−1=0, iš (8.96) lygybių, išreiškiančių reduktus PkQk (k=1,2,...,n), galime gauti formules, siejančias Pk su Pk−1 bei Pk−2 ir Qk su Qk−1 bei Qk−2:
{Pk=bkPk−1+akPk−2,Qk=bkQk−1+akQk−2.(8.97)
[Parodysime, kad jos teisingos, kai k=2.
P−1=1,Q−1=0,
Pk−2=P0=b0,Qk−2=Q0=1, (iš (8.96)),
P1=b1P0+a1P−1=b1b0+a1⋅1=b1b0+a1,
Q1=b1Q0+a1Q−1=b1⋅1+a1⋅0=b1,
P2=b2P1+a2P0=b2(b1b0+a1)+a2b0=b2b1b0+b2a1+a2b0,
Q2=b2Q1+a2Q0=b2b1+a2⋅1=b2b1+a2.
Gauname
P2Q2=b2b1b0+b2a1+a2b0b2b1+a2.
O iš (8.96) formulės gauname
P2Q2=b0+a1b1+a2b2=b0+a1b1b2+a2b2=b0+a1b2b1b2+a2=b0(b1b2+a2)+a1b2b1b2+a2=b0b1b2+b0a2+a1b2b1b2+a2.
Matome, kad trupmenos P2Q2 išraiška abiais būdais skaičiuojant yra tokia pati.]
Mums bus reikalinga speciali formulė, išreiškianti trupmeną PnQn, apibrėžtą (8.95) reiškiniu. Tuo tikslu palyginsime du tos trupmenos reduktus PkQk ir Pk−1Qk−1. Tų reduktų skirtumas, savaime aišku, lygus
PkQk−Pk−1Qk−1=PkQk−1−QkPk−1Qk−1Qk.(8.98)
Paskutinės trupmenos skaitiklį, atsižvelgdami į (8.97) lygybes, galime pertvarkyti šitaip
PkQk−1−QkPk−1=(bkPk−1+akPk−2)Qk−1−(bkQk−1+akQk−2)Pk−1=−ak[Pk−1Qk−2−Qk−1Pk−2].(8.99)
Paeiliui remdamiesi (8.99) sąryšiu reikšmėms k,k−1,k−2,...,1 ir atsižvelgdami į tai, kad P−1=1,Q−1=0,Q0=1, (8.98) trupmeną išreikšime šitaip:
PkQk−Pk−1Qk−1=−ak[Pk−1Qk−2−Qk−1Pk−2]Qk−1Qk=−ak(−ak−1)[Pk−2Qk−3−Qk−2Pk−3]Qk−1Qk=
=−ak(−ak−1)(−ak−2)[Pk−3Qk−4−Qk−3Pk−4]Qk−1Qk=(−1)k+1akak−1ak−2...a11Qk−1Qk.(8.100)
[ PkQk−1−QkPk−1=−ak[Pk−1Qk−2−Qk−1Pk−2].
Kai k=1, gauname:
P1Q0−Q1P0=−a1[P0Q−1−Q0P−1]=−a1[b0⋅0−1⋅1]=a1. ]
Kadangi
PnQn=P0Q0+(P1Q1−P0Q0)+(P2Q2−P1Q1)+...+(PnQn−Pn−1Qn−1),
tai, pasinaudoję (8.100) lygybe, gausime reikalingą konkrečią formulę trupmenai PnQn
PnQn=b0+a1Q0Q1−a1a2Q1Q2+a1a2a3Q2Q3−...+(−1)n+1a1a2...anQn−1Qn.(8.101)

2. Funkcijos th(x) reiškimas grandinine trupmena.

Šiame skirsnyje aprašomą funkcijos th⁡x reiškimo grandinine trupmena metodą pirmasis pritaikė Šliomilchas*, dėstydamas grandinine trupmena funkciją tg⁡x.
Imkime funkciją y=ch⁡x, kai x>0. Du kartus ją išdiferencijavę ir atlikę paprastus pertvarkymus, gauname tapatybes:
2xy′=sh⁡x,2xy″+y′x−y2x=0.
[ y′=(ch⁡x)′=sh⁡x⋅12x.
y″=(sh⁡x⋅12x)′=12xch⁡x⋅12x+sh⁡x(12x)′=14xch⁡x+sh⁡x⋅−1⋅12x2(x)2=ch⁡x4x−14x3sh⁡x.
Bet antra y išvestinė nieko nepasako. Tiesiog reikia žinot, kad (sh(x))'=ch(x). ]
Iš lygybės
2xy″+y′x−y2x=0
išplaukia tapatybė, kuri teisinga, kai x>0 (šios lygybės abi puses reikia padauginti iš 2x):
4xy″+2y′−y=0.(8.102)
Šią tapatybę diferencijuodami toliau, gausime
{4y″+4xy‴+2y″−y′=4xy‴+(4+2)y″−y′=0,4y‴+4xy(4)+6y‴−y″=4xy(4)+(4⋅2+2)y‴−y″=0,........................................4xy(n+2)+(4n+2)y(n+1)−y(n)=0.(8.103)
Santykį y(n+1)y(n) pažymėsime simboliu un+1. Tada iš paskutinės (8.103) lygybės gausime tapatybę (padaliję tą lygybę iš y(n+1))
4xun+2+4n+2=1un+1,
iš kurios
un+1=14xun+2+4n+2=122n+1+2xun+2.(8.104)
Kadangi
u1=y′y=sh⁡x⋅12xch⁡x=th⁡x2x,
tai (8.104) sąryšį, kai n=0, galima užrašyti šitaip:
th⁡x=u1⋅2x=12⋅2x2⋅0+1+2xu0+2=x1+2xu2.
Dešinėje paskutinės formulės pusėje vietoj u2 įrašysime jo išraišką. gautą iš (8.104) lygybės, kai n=1. Tuomet
th⁡x=x1+2x⋅122⋅1+1+2xu1+2=x1+x3+2xu3.
Šiame reiškinyje vietoje u3 galima įrašyti jo išraišką iš (8.104) lygybės, kai n=2. Tokias operacijas galime atlikti kiek norime kartų. Galų gale gausime funkcijos th⁡x dėstinį grandinine trupmena. Tame dėstinyje vietoj x įrašę x, turėsime mums reikalingą funkcijos th⁡x dėstinį baigtine grandinine trupmena:
th⁡x=x1+x23+x25+(8.105)
⋱
+x22n+1+2x2un+2

__________________

* Schlömilch O. Ueber den Kettenbruch für tg x. Zs. Math. u. Phys. 2(1857), 137–165.

3. Funkcijos th(x) reikšmių skaičiavimas. Skaičiavimo paklaidos įvertinimas.

Skaičiuojant funkcijos th⁡x reikšmes elektronine skaičiavimo mašina, dažniausiai naudojamsi (8.105) formule, iš kurios išbraukiamas narys 2x2un+2. Tuomet skaičius n paprastai laikomas lygiu 6 (n=6), o x reikšmių moduliai apribojami skaičiumi π4≈0.785398.
Įvertinsime paklaidą su bet kokiu n.
Funkcijos th⁡x reikšmės artinį, gautą iš (8.105) formulės, išbraukus narį 2x2un+2, žymėsime th‾x. Pastebėsime, kad th⁡x ir th‾x yra grandininės trupmenos, kurias atitinkamai žymėsime Pn+1Qn+1 ir P‾n+1Q‾n+1.
Surašykime tų trupmenų dalinius skaitiklius ai ir a‾i bei dalinius vardiklius bi ir b‾i (brūkšneliu virš raidės žymėsime skaičius, susijusius su trupmena P‾n+1Q‾n+1):
{a1=a‾1=x,a2=a‾2=x2,a3=a‾3=x2,...,an+1=a‾n+1=x2,b0=b‾0=0,b1=b‾1=1,b2=b‾2=3,b3=b‾3=5,...,bn=b‾n=2n−1,bn+1=2n+1+2x2un+2,b‾n+1=2n+1.(8.106)
Kadangi trupmenose Pn+1Qn+1 ir P‾n+1Q‾n+1 turime Q−1=Q‾−1=0,Q0=Q‾0=1, tai, remdamiesi (8.106) formulėmis ir (8.97) sąryšiais, gauname šitokias lygybes
{Q1=Q‾1,Q2=Q‾2,Q3=Q‾3,...,Qn=Q‾n,Qn+1=(2n+1+2x2un+2)Q‾n+x2Q‾n−1,Q‾n+1=(2n+1)Q‾n+x2Q‾n−1.(8.107)
Dabar abi trupmenas Pn+1Qn+1 ir P‾n+1Q‾n+1 išreikšime pagal (8.101) formulę. Iš (8.106) ir (8.107) lygybių matyti, kad tos išraiškos viena nuo kitos skirsis tik paskutiniu dėmeniu. Todėl skirtumas Pn+1Qn+1−P‾n+1Q‾n+1 bus lygus tų trupmenų išraškų pagal (8.101) formulę paskutinių dėmenų skirtumui. Kadangi aptariamųjų trupmenų skirtumas lygus th⁡x−th‾x, tai, pasinaudoję (8.106) lygybėmis, gauname formulę
th⁡x−th‾x=(−1)n+2x2n+1[1QnQn+1−1Q‾nQ‾n+1].
Šią formulę, remiantis (8.107) lygybėmis, galima perrašyti šitaip:
th⁡x−th‾x=(−1)n+2x2n+1[1Q‾nQn+1−1Q‾nQ‾n+1]=(−1)n+2x2n+1[Q‾nQ‾n+1−Q‾nQn+1Q‾nQn+1Q‾nQ‾n+1]=(−1)n+2x2n+1[Q‾n+1−Qn+1Q‾nQn+1Q‾n+1]=
=(−1)n+1x2n+1[Qn+1−Q‾n+1Q‾nQn+1Q‾n+1]=(−1)n+1x2n+1[[(2n+1+2x2un+2)Q‾n+x2Q‾n−1]−[(2n+1)Q‾n+x2Q‾n−1]Q‾nQn+1Q‾n+1]=
=(−1)n+1x2n+1Q‾nQ‾n+1[2x2un+2Q‾nQn+1]=
=(−1)n+1x2n+1Q‾nQ‾n+1[2x2un+2Q‾n2x2un+2Q‾n+(2n+1)Q‾n+x2Q‾n−1].(8.108)
Kad gautume reikalingą įvertį, pasinaudosime dviem nelygybėmis, kurias įrodysime vėliau.
Kai x≥0, su bet kokiu k≥1 teisinga nelygybė
Qk≥(2k−1)!!.(8.109)
Kai x>0, skaičius un+2 yra teigiamas:
un+2>0.(8.110)
Dabar įvertinsime skirtumą th⁡x−th‾x, tarę, kad x>0. Kadangi un+2 ir visi Q‾k yra teigiami, kai x>0, tai reiškinys, parašytas (8.108) lygybės dešinės pusės laužtiniuose skliaustuose, nėra didesnis už vienetą. Be to, iš (8.109) gauname nelygybę
Q‾nQ‾n+1≥[(2n−1)!!]2(2n+1).
Todėl, kai x>0, su bet kokiu numeriu n bus teisingas toks paklaidos įvertis:
|th⁡x−th‾x|≤x2n+1[(2n−1)!!]2(2n+1).(8.111)
Apskaičiuosime paklaidos įvertį, kai n=6, o x reikšmės tenkina nelygybes 0<x<π4. Kai n=6, skaičius 2n−1 lygus 11, o skaičius 2n+1 lygus 13. Kadangi π4<0.8, tai x13<(0.8)13<5.6⋅10−2. Lengva apskaičiuoti, kad 11!!=10395. Todėl iš (8.111) formulės įsitikiname, kad th⁡x reikšmės apytikslio skaičiavimo paklaida, kai n=6, ne didesnė už 4⋅10−11.
[0.813=0.0549755813888<5.5⋅10−2.
11!! = 11*9*7*5*3 = 10395. x2n+1[(2n−1)!!]2(2n+1)=0.0549755813888103952⋅13=0.0549755813888108056025⋅13=
= 0.0549755813888/(10395^2 * 13) = 3.9136095151210110325069440028555e-11 ≈3.9136⋅10−11.]
Dabar įrodysime, kad (8.109) ir (8.110) nelygybės yra teisingos.
(8.109) nelygybės įrodymas.
Iš pradžių įrodysime, kad visi Q‾k yra neneigiami. Iš (8.106) formulių išplaukia, kad a‾k ir b‾k neneigiami, kai x≥0 ir k≤n. Be to, jau sakėme, kad Q‾−1=0,Q‾0=1. Iš to ir iš antrosios (8.97) formulės aišku, kad visi Q‾k neneigiami, kai k≤n.
Iš antrosios (8.97) formulės ir iš to, kad ak ir Q‾k neneigiami, išplaukia nelygybė
Q‾k≥bkQ‾k−1.(8.112)
Kadangi Q‾0=1, o bk=2k−1, kai 1≤k≤n, tai paeiliui iš (8.112) nelygybės gauname Q‾1≥1,Q‾2≥3⋅1=3,Q‾3≥5⋅3=15,Q‾4≥(2⋅4−1)Q‾3=7⋅5⋅3=105,...,Q‾k≥(2k−1)!!. Įsitikinome, kad (8.109) nelygybė yra teisinga.
(8.110) nelygybės įrodymas.
Užtenka įrodyti, kad funkcijos y=ch⁡x visos išvestinės, kai x>0, yra teigiamos. Savaime aišku, kartu įrodysime ir (8.110) nelygybę, nes un+2=y(n+2)y(n+1).
Padauginę paskutinę (8.103) lygybę iš 14xn−12, gautąją lygybę galime užrašyti šitaip:
[xn+12y(n+1)]′=14xn−12y(n).(8.113)
[ 4xy(n+2)+(4n+2)y(n+1)−y(n)=0|⋅14xn−12,
xn+12y(n+2)+(n+12)xn−12y(n+1)−14xn−12y(n)=0.
[xn+12y(n+1)]′=(n+12)xn−12y(n+1)+xn+12y(n+2). ]
Pirmiausia įsitikinsime, kad
limx→0+0[xn+12y(n+1)(x)]=0.(8.114)
Tam reikalui užtenka įrodyti, kad funkcija
xny(n+1)(x)(8.115)
lieka aprėžta, kai x→0+0 (kai x artėja prie nulio iš dešinės). Iš formulių y=ch⁡x ir y′=sh⁡x2x išplaukia, kad funckijos y(x) ir y′(x) yra aprėžtos, kai x→0+0.
[Kad funkcija y′(x) yra aprėžta, įrodoma, pritaikius funkcijai y′(x) Lopitalio taisyklę:
limx→0+0sh⁡x2x=limx→0+0(sh⁡x)′(2x)′=limx→0+012xch⁡x2⋅12x=limx→0+012ch⁡x=limx→0+012⋅ex+e−x2=14(e0+e−0)=14(1+1e0)=12.]
Tačiau tuomet iš (8.102) lygybės aišku, kad ir funkcija xy″(x) lieka aprėžta, kai x→0+0.
[4xy″+2y′−y=0.(8.102)
4xy″=−2y′+y.(A)
Lygybėje (A) dešinė pusė yra aprėžta, kai x→0+0. Todėl aprėžta ir kairė pusė. Be to, limx→0+0(−2y′+y)=−2⋅12+1=0.]
Toliau matematinės indukcijos metodu, remdamiesi paskutiniąją (8.103) lygybe, įrodome, kad funkcija xny(n+1)(x) yra aprėžta, kai x→0+0, nepriklausomai nuo numerio n. Iš to aišku, kad (8.114) lygybė yra teisinga.
Dabar įsitikinsime, kad, imant bet kokį neneigiamą sveikąjį skaičių n, išvestinė
y(n)(x)(8.116)
yra teigiama pustiesėje x>0. Savaime aišku, y(0)(x)=y(x)=ch⁡x pustiesėje x>0 yra teigiama. Tarkime, kad y(n)(x) pustiesėje x>0 yra teigiama, kai n – koks nors fiksuotas numeris. Įsitikinsime, kad tuomet išvestinė y(n+1)(x) pustiesėje x>0 irgi yra teigiama. Iš (8.113) lygybės matyti, kad jos kairėje pusėje parašyta išvestinė yra teigiama, kai x>0, o tai reiškia, kad funkcija xn+12y(n+1)(x) pustiesėje x>0 didėja. Remdamiesi (8.114) lygybe, galime spręsti, kad ta funkcija pustiesėje x>0 yra teigiama. Vadinasi, y(n+1)(x)>0, kai x>0, ir (8.110) nelygybė įrodyta.

4. Hiperbolinio sinuso, hiperbolinio kosinuso ir rodiklinės funkcijos reikšmių skaičiavimas.

Toliau simboliu Sn(t) žymėsime grandininę trupmeną
Sn(t)=1+t3+t5+t7+(8.117)
⋱
+t2n+1
Elektroninei skaičiavimo mašinai dažniausiai sudaroma tos trupmenos skaičiavimo programa. Ja naudojantis, galima lengvai sudaryti ir hiperbolinio tangento reikšmių skaičiavimo programą, nes, kaip išsiaiškinome praeitame skirsnyje, funkcijos th⁡x reikšmės artinį galima apskaičiuoti pagal formulę
th⁡x≈xSn(x2).(8.118)
Be to, praeituose skirsniuose paaiškėjo, kad, didinant n, skaičiavimo tikslumas didėja ir paklaida artėja prie nulio.
Funkcijas sh⁡2x,ch⁡2x ir e2x, remiantis formulėmis
sh⁡2x=2th⁡x1−th2x,ch⁡2x=1+th2x1−th2x,e2x=1+th⁡x1−th⁡x,
galima išreikšti hiperbolinio tangento funkcijomis. Iš tų formulių ir (8.118) lygybės gauname šitokias formules išvardytųjų funkcijų reikšmių artiniams skaičiuoti:
sh⁡2x=2th⁡x1−th2x≈(2xSn(x2)):(1−x2Sn2(x2))=2xSn(x2):Sn2(x2)−x2Sn2(x2)=2xSn2(x2)−x2Sn(x2)=2Sn(x2)⋅xSn2(x2)−x2,
ch⁡2x=1+th2x1−th2x≈(1+x2Sn2(x2)):(1−x2Sn2(x2))=Sn2(x2)+x2Sn2(x2):Sn2(x2)−x2Sn2(x2)=Sn2(x2)+x2Sn2(x2)⋅Sn2(x2)Sn2(x2)−x2=Sn2(x2)+x2Sn2(x2)−x2,
e2x=1+th⁡x1−th⁡x≈1+xSn(x2)1−xSn(x2)=Sn(x2)+xSn(x2)Sn(x2)−xSn(x2)=Sn(x2)+xSn(x2)−x.
Aišku, remiantis šiomis formulėmis ir Sn(t) skaičiavimo programa, lengva sudaryti programas sh⁡2x,ch⁡2x ir e2x reikšmėms skaičiuoti.

5. Trigonometrinių funkcijų reikšmių skaičiavimas.

Funkcijos tg⁡x dėstinys grandinine trupmena gaunamas analogiškai, kaip ir funkcijos th⁡x.
Imkime funkciją y=cos⁡x, apibrėžtą pustiesėje x>0. Du kartus išdiferencijavę tą funkciją ir atlikę paprastus pertvarkymus, gauname sąryšius
2xy′=−sin⁡x;2xy″+y′x=−y2x.
[y′=(cos⁡x)′=−sin⁡x⋅12x.]
Iš paskutinio sąryšio gauname tapatybę (padauginę tą paskutinį sąryšį iš 2x)
4xy″+2y′+y=0.
Diferencijuodami tą tapatybę, gausime
{4xy‴+6y″+y′=0,.................................4xy(n+2)+(4n+2)y(n+1)+y(n)=0.
Santykį y(n+1)y(n) pažymėję un+1 iš paskutinės tapatybės gauname lygybę 4xun+2+4n+2=−1un+1, iš kurios išreiškiame un+1:
un+1=−14xun+2+4n+2=−122n+1+2xun+2.
Toliau samprotaujame visiškai panašiai, kaip ir dėstydami hiperbolinį tangentą, ir gauname šitokį funkcijos tg⁡x dėstinį grandinine trupmena:
tg⁡x=x1+−x23+−x25+
⋱
+−x22n+1+2x2un+2
Funkcijos tg⁡x reikšmės artinį gauname iš tos formulės, atmetę narį 2x2un+2. Atsižvelgus į (8.117) reiškinį, tą artinį galima apskaičiuoti pagal formulę
tg⁡x≈xSn(−x2).(8.119)
Kaip ir nagrinėjant hiperbolinį tangentą, galima įsitikinti, kad, didinant n, skaičiavimo pagal (8.119) formulę tikslumas didėja, o paklaida artėja prie nulio. Pasinaudoję iš elementariosios matematkos žinomomis formulėmis sin⁡2x=2tg⁡x1+tg2x ir cos⁡2x=1−tg2x1+tg2x bei (8.119) sąryšiu, gauname formules sin⁡2x ir cos⁡2x reikšmių artiniams skaičiuoti:
sin⁡2x=2tg⁡x1+tg2x≈2xSn(−x2)1+x2Sn2(−x2)=2xSn(−x2)Sn2(−x2)+x2Sn2(−x2)=2xSn2(−x2)+x2Sn(−x2)=2Sn(−x2)⋅xSn2(−x2)+x2;
cos⁡2x=1−tg2x1+tg2x≈1−x2Sn2(−x2)1+x2Sn2(−x2)=Sn2(−x2)−x2Sn2(−x2)Sn2(−x2)+x2Sn2(−x2)=Sn2(−x2)−x2Sn2(−x2)+x2.
Baigdami pastebėsime, kad visų paskutiniuose dviejuose skirsniuose (4. ir 5.) aptartų funkcijų reikšmių skaičiavimo tikslumas, atliekant šešias iteracijas (n=6), bus ne mažesnis kaip 10−11, jei tik argumento x modulis ne didesnis už π4.

Pavyzdžiai

  • Apskaičiuosime th⁡x, kai x=0.5, o n=4. Tada, pagal (8.105) formulę,
th⁡x≈x1+x23+x25;
th⁡0.5≈0.51+0.523+0.525=0.51+0.253+0.255=0.51+0.2515+0.255=0.51+1.2515.25=
=0.5⋅15.2515.25+1.25=7.62516.5=0.46(21)=
= 0.46212121212121212121212121212121.
Įvertinsime paklaidą, pagal (8.111) formulę.
|th⁡x−th‾x|≤x2n+1[(2n−1)!!]2(2n+1)=0.52⋅4+1[(2⋅4−1)!!]2(2⋅4+1)=0.59[7!!]2⋅9=
=0.59[7⋅5⋅3]2⋅9=0.0019531251052⋅9=
= 0.001953125/(105^2 *9) = 1.9683799445704207608969513731418e-8 ≈1.96837994457⋅10−8.
Iš kalkuliatoriaus: th⁡0.5= 0.46211715726000975850231848364367.
0.46211715726000975850231848364367 - 0.46212121212121212121212121212121 =
= -0.00000405486120236270980272847754 ≈−4.0548612⋅10−6.
Čia pas mus buvo n=2. Todėl paklaidos įvertis yra skaičiui n=2 toks:
|th⁡x−th‾x|≤x2n+1[(2n−1)!!]2(2n+1)=0.52⋅2+1[(2⋅2−1)!!]2(2⋅2+1)=0.55[3!!]2⋅5=0.5532⋅5=0.031259⋅5=
= 0.03125/45 = 6.9444444444444444444444444444444e-4 ≈6.9444444⋅10−4.
Taigi, |−4.0548612⋅10−6|<6.9444444⋅10−4 ir įvertis, kai n=2, gautas teisingai.
Toliau jau tikrai apskaičiuosime artinį th⁡0.5, kai n=4.
th⁡x≈x1+x23+x25+x27+x29;
th⁡0.5≈0.51+0.523+0.525+0.527+0.529=0.51+0.253+0.255+0.257+0.259=0.51+0.253+0.255+0.2563+0.259=
=0.51+0.253+0.255+0.25⋅963.25=0.51+0.253+0.255⋅63.25+0.25⋅963.25=0.51+0.253+0.25318.563.25=
=0.51+0.253+0.25⋅63.25318.5=0.51+0.253⋅318.5+0.25⋅63.25318.5=0.51+0.25971.3125318.5=
=0.51+0.25⋅318.5971.3125=0.5971.3125+79.625971.3125=0.5⋅971.31251050.9375=485.656251050.9375=
= 485.65625/1050.9375 = 0.46211715730002973535533749628308.
Atėmę šią gautą th⁡0.5 apytikslią reikšmę iš tikslios kalkuliatoriaus reikšmės, gauname paklaidą:
0.46211715726000975850231848364367 - 0.46211715730002973535533749628308 =
= -0.00000000004001997685301901263941 ≈−4.0019976853⋅10−11.
[Kad "atrast", kad 10 pakelta -11, reikia paskaičiuoti kelintu numeriu stovi pirmas skaičius po kablelio nelygus nuliui; čia prieš skaičių "4" yra 10 nuliu po kablelio (taško), o pats ketvertas stovi 11-tas po kablelio (pirmas nulis prieš kablelį neskaičiuojamas).]
Taigi,
|−4.0019976853⋅10−11|≈|th⁡x−th‾x|<1.96837994457⋅10−8.
Vadinasi, paklaidos įvertinimas gautas teisingai. Beveik trim eilėm reali paklaida mažesnė nei nustatytas paklaidos įvertis.


  • Apskaičiuosime tg⁡x, kai x=0.5 radiano, o n=4.
tg⁡x≈x1+−x23+−x25+−x27+−x29;
tg⁡0.5≈0.51+−0.523+−0.525+−0.527+−0.529=0.51+−0.253+−0.255+−0.257+−0.259=0.51+−0.253+−0.255+−0.2563−0.259=
=0.51+−0.253+−0.255+−0.25⋅962.75=0.51+−0.253+−0.25⋅62.755⋅62.75−0.25⋅9=0.51+−0.253+−15.6875311.5=
=0.51+−0.25⋅311.53⋅311.5−15.6875=0.51+−77.875918.8125=0.5⋅918.8125918.8125−77.875=459.40625840.9375=
= 459.40625/840.9375 = 0.54630248978075065031586770717205.
Atėmę šią gautą tg⁡x artinio reikšmę iš tikslios kalkuliatoriaus tg⁡x reikšmės, gauname paklaidą:
0.54630248984379051325517946578029 - 459.40625/840.9375 = 6.3039862939311758608230385155597e-11 ≈6.30398629393⋅10−11.
Paklaidos įvertinimas tangentui yra panašus kaip hiperboliniam tangentui.
[Tangentui, (8.107) lygybės pavirsta į tokias:
{Q1=Q‾1,Q2=Q‾2,Q3=Q‾3,...,Qn=Q‾n,Qn+1=(2n+1+2x2un+2)Q‾n−x2Q‾n−1,Q‾n+1=(2n+1)Q‾n−x2Q‾n−1.(8.107fortgx)
Tada (8.108) formulė pavirsta į tokią (padauginome viską dar iš (−1)n formulėje (8.108), nes yra n koeficientų −x2 pagal (8.101) formulę [kurie turi minusą], t. y. a1=x,a2=−x2,a3=−x2,...,an+1=−x2):
tg⁡x−tg‾x=(−1)n(−1)n+1x2n+1Q‾nQ‾n+1[2x2un+2Q‾nQn+1]=(−1)2n+1x2n+1Q‾nQ‾n+1[2x2un+2Q‾n2x2un+2Q‾n+(2n+1)Q‾n−x2Q‾n−1].(8.108fortgx)
Taigi, nėra funkcijai tg(x) griežto paklaidos nustatymo būdo, nes vardiklis 2x2un+2Q‾n+(2n+1)Q‾n−x2Q‾n−1 gali būti mažesnis skaičius nei funkcijai th⁡x (reiškinys laužtiniuose skliaustuose gali būti didesnis už 1). Gal kaip nors giliai aiškinantis galima nustatyt, kad th⁡x ir tg⁡x paklaidos yra panašios.]
Todėl paklaida vertinama pagal (8.111) formulę. Pagal (8.111) formulę, hiperboliniam tangentui gavome, kad
|th⁡x−th‾x|≤1.96837994457⋅10−8.
Todėl
6.30398629393⋅10−11≈|tg⁡x−tg‾x|≤1.96837994457⋅10−8.
Paklaidos įvertinimas gautas teisingai.


  • Apskaičiuosime th⁡x, kai x=0.8, o n=6.
th⁡x≈x1+x23+x25+x27+x29+x211+x213;
th⁡0.8≈0.81+0.823+0.825+0.827+0.829+0.8211+0.8213=0.81+0.643+0.645+0.647+0.649+0.6411+0.6413=0.81+0.643+0.645+0.647+0.649+0.6411⋅13+0.6413=
=0.81+0.643+0.645+0.647+0.649+0.64⋅13143.64=0.81+0.643+0.645+0.647+0.649⋅143.64+0.64⋅13143.64=0.81+0.643+0.645+0.647+0.641301.08143.64=
=0.81+0.643+0.645+0.647+0.64⋅143.641301.08=0.81+0.643+0.645+0.647⋅1301.08+0.64⋅143.641301.08=0.81+0.643+0.645+0.649199.48961301.08=
=0.81+0.643+0.645⋅9199.4896+0.64⋅1301.089199.4896=0.81+0.643+0.6446830.13929199.4896=0.81+0.643⋅46830.1392+0.64⋅9199.489646830.1392=0.81+0.64146378.09094446830.1392=
=0.8146378.090944+0.64⋅46830.1392146378.090944=0.8176349.380032146378.090944=0.8⋅146378.090944176349.380032=117102.4727552176349.380032=
= 117102.4727552/176349.380032 = 0.66403677026792395500016180062552.
Atėmę gautą apytikslią th⁡0.8 reikšmę iš tikslios th⁡0.8 reikšmės, gauname paklaidą:
0.66403677026784896368484465640024 - 0.66403677026792395500016180062552 = -0.00000000000007499131531714422528 arba
tanh(0.8) - 117102.4727552/176349.380032 = -7.4991315317144225281449358567679e-14.
Taigi, kaip skaičiavome pagal (8.111) 3. skirsnyje su x=0.8 ir n=6, rezultatas buvo
|th⁡x−th‾x|≤3.9136⋅10−11.
Matome, kad reali paklaida ≈|−7.49913153⋅10−14| mažesnė už paklaidos įvertį 3.9136⋅10−11, kas atitinka teoriją (reali paklaida mažesnė beveik trim eilėm).


Tangento paklaidos įvertinimas.
Kai x=0.5, o n=4, gavome, kad th(x) paklaida yra ≈−4.0019976853⋅10−11, o tg(x) paklaida yra ≈6.30398629393⋅10−11. Matome, kad paklaidos modulis yra truputi didesnis funkcijai tg(x).
Nystatysime funkcijos tg(x) paklaidą, kai x=1, o n=6. Truputi aukščiau gavome tokia (8.108 for tg(x)) paklaidos formulę:
tg⁡x−tg‾x=(−1)2n+1x2n+1Q‾nQ‾n+1[2x2un+2Q‾n2x2un+2Q‾n+(2n+1)Q‾n−x2Q‾n−1]=
=−x2n+1Q‾nQ‾n+1[2x2un+2Q‾n2x2un+2Q‾n+(2n+1)Q‾n−x2Q‾n−1].(8.108fortgx)
Iš aukščiau žinome, kad P−1=1,Q−1=0. Taip pat žinome, kad P0=b0,Q0=1. Mums iš (8.97) sistemos
{Pk=bkPk−1+akPk−2,Qk=bkQk−1+akQk−2.(8.97)
reikia išreikšti visus Qk, kai skaičius k yra nuo 1 iki n+1. Mes žinome, kad a1=x,a2=−x2,a3=−x2,...,an+1=−x2. Ir žinome, kad b1=1,b2=3,b3=5,...,bn=2n−1,b‾n+1=2n+1. Tada
Q1=b1Q1−1+a1Q1−2=1⋅Q0+xQ−1=1⋅1+1⋅0=1;
Q2=b2Q2−1+a2Q2−2=3⋅Q1+(−x2)Q0=3⋅1+(−12)⋅1=3−1=2;
Q3=b3Q3−1+a3Q3−2=5⋅Q2+(−x2)Q1=5⋅2+(−12)⋅1=10−1=9;
Q4=b4Q4−1+a4Q4−2=7⋅Q3+(−x2)Q2=7⋅9+(−12)⋅2=63−2=61;
Q5=b5Q5−1+a5Q5−2=9⋅Q4+(−x2)Q3=9⋅61+(−12)⋅9=549−9=540;
Qn=Q6=b6Q6−1+a6Q6−2=11⋅Q5+(−x2)Q4=11⋅540+(−12)⋅61=5940−61=5879;
Q‾n+1=Q‾7=b‾7Q7−1+a7Q7−2=13⋅Q6+(−x2)Q5=13⋅5879+(−12)⋅540=76427−540=75887.
Dabar galime pagal (8.108 for tg(x)) formulę nustatyti paklaidą, kai x=1, o n=6. Taigi,
tg⁡x−tg‾x=−x2n+1Q‾nQ‾n+1[2x2un+2Q‾n2x2un+2Q‾n+(2n+1)Q‾n−x2Q‾n−1]=
=−12⋅6+1Q‾6Q‾6+1[2⋅12un+2Q‾62⋅12un+2Q‾6+(2⋅6+1)Q‾6−12Q‾6−1]=−113Q‾6Q‾7[2un+2Q‾62un+2Q‾6+13Q‾6−Q‾5]=
=−1135879⋅75887[2un+2⋅58792un+2⋅5879+13⋅5879−540]=−1446139673[2un+2⋅58792un+2⋅5879+75887].
Matome, kad reiškinys laužtiniuose skliaustuose tikrai mažesnis už 1, kai un+2>0. Vadinasi, jeigu un+2>0, tai tg(x) absoliuti paklaida, kai x=1, o n=6, yra mažesnė už
|−1446139673|=1446139673=
= 1/446139673 = 2.2414505154308480429625454986156e-9 ≈2.24145051543⋅10−9.
Jei x būtų lygus 0.8, tai paklaida (tiksliau, jos įvertinimas) gauta šiuo būdu būtų kažkiek mažesnė (gal panaši į th(x) paklaidą [su x=0.8]; tiksliau, panaši į jos įvertinimą).
Įvertinsime th(x) paklaidą, kai x=1, o n=6. Pagal (8.111) formulę
|th⁡x−th‾x|≤x2n+1[(2n−1)!!]2(2n+1)(8.111)
gauname
x2n+1[(2n−1)!!]2(2n+1)=x13[11!!]2(2n+1)=113103952⋅13=1108056025⋅13=11404728325=
= 1/1404728325 = 7.1188142376213564284752355940427e-10 ≈7.11881423762⋅10−10.
Matome, kad funkcijos th(x), kai x=1, o n=6 paklaidos nustatymas gaunamas su didesniu tikslumu negu funckijos tg(x) (kai x=1, n=6).
Įrodysime arba paneigsime, kad funkcijai tg(x)
un+2>0.(8.110)
Užtenka įrodyti, kad funkcijos y=cos⁡x visos išvestinės, kai π2>x>0 yra teigiamos. Savaime aišku, kartu įrodysime ir (8.110) nelygybę, nes un+2=y(n+2)y(n+1).
Padauginę lygybę
4xy(n+2)+(4n+2)y(n+1)+y(n)=0
iš 5. skirsnio iš 14xn−12, gautąją lygybę galime užrašyti šitaip:
[xn+12y(n+1)]′=−14xn−12y(n).(8.113fortg⁡x)
[ 4xy(n+2)+(4n+2)y(n+1)+y(n)=0|⋅14xn−12,
xn+12y(n+2)+(n+12)xn−12y(n+1)+14xn−12y(n)=0.
[xn+12y(n+1)]′=(n+12)xn−12y(n+1)+xn+12y(n+2). ]
Pirmiausia įsitikinsime, kad
limx→0+0[xn+12y(n+1)(x)]=0.(8.114)
Tam reikalui užtenka įrodyti, kad funkcija
xny(n+1)(x)(8.115)
lieka aprėžta, kai x→0+0 (kai x artėja prie nulio iš dešinės). Iš formulių y=cos⁡x ir y′=−sin⁡x2x išplaukia, kad funckijos y(x) ir y′(x) yra aprėžtos, kai x→0+0.
[Kad funkcija y′(x) yra aprėžta, įrodoma, pritaikius funkcijai y′(x) Lopitalio taisyklę:
limx→0+0−sin⁡x2x=limx→0+0−(sin⁡x)′(2x)′=limx→0+0−12xcos⁡x2⋅12x=limx→0+0−12cos⁡x=−12⋅cos⁡0=−12.]
Tačiau tuomet iš 5. skirsnio lygybės 4xy″+2y′+y=0 aišku, kad ir funkcija xy″(x) lieka aprėžta, kai x→0+0.
[4xy″+2y′+y=0.(8.102fortg⁡x)
4xy″=−2y′−y.(B)
Lygybėje (B) dešinė pusė yra aprėžta, kai x→0+0. Todėl aprėžta ir kairė pusė. Be to, limx→0+0(−2y′−y)=−2⋅−12−1=0.]
Toliau matematinės indukcijos metodu, remdamiesi 4xy(n+2)+(4n+2)y(n+1)+y(n)=0 lygybe iš 5. skirsnio, įrodome, kad funkcija xny(n+1)(x) yra aprėžta, kai x→0+0, nepriklausomai nuo numerio n. Iš to aišku, kad (8.114) lygybė yra teisinga.
Dabar įsitikinsime, kad, imant bet kokį neneigiamą sveikąjį skaičių n, išvestinė
y(n)(x)(8.116)
gali būti neigiama ir gali būti teigiama (išvestinių ženklai kaitoliojaisi) su π2>x>0. Savaime aišku, y(0)(x)=y(x)=cos⁡x su π2>x>0 yra teigiama. Tada pagal (8.113 for tg(x)), kai n=0, gauname (π2>x>0)
[xn+12y(n+1)]′=−14xn−12y(n);(8.113fortg⁡x)
[x0+12y(0+1)]′=−14x0−12y(0),
[x12y(1)]′=−14x−12cos⁡x.(C)
Pagal lygybę (C) funkcijos x12y(1) išvestinė yra neigiama. Todėl funkcija x12y(1) intervale (0;π2) mažėja. Remdamiesi (8.114) lygybe, galime spręsti, kad ta funkcija interavale (0;π2) yra neigiama (vadinasi, y(1)<0).
Toliau pagal (8.113 for tg(x)) formulę, kai n=1, gauname (kai π2>x>0)
[x1+12y(1+1)]′=−14x1−12y(1),
[x1+12y(2)]′=−14x1−12y(1).(D)
Lygybėje (D) dešinė pusė yra teigiama. Todėl funkcijos x1+12y(2) išvestinė yra teigiama. Tai reiškia, kad funkcija x1+12y(2) interavale (0;π2) didėja ir todėl, remiantis (8.114) lygybe, y(2)>0.
Toliau pagal (8.113 for tg(x)) formulę, kai n=2, gauname (kai π2>x>0)
[x2+12y(2+1)]′=−14x2−12y(2),
[x2+12y(3)]′=−14x2−12y(2).(E)
Lygybėje (E) dešinė pusė yra neigiama. Todėl funkcijos x2+12y(3) išvestinė yra neigiama. Tai reiškia, kad funkcija x2+12y(3) interavale (0;π2) mažėja ir todėl, remiantis (8.114) lygybe, y(3)<0.
Toliau pagal (8.113 for tg(x)) formulę, kai n=3, gauname (kai π2>x>0)
[x3+12y(3+1)]′=−14x3−12y(3),
[x3+12y(4)]′=−14x3−12y(3).(F)
Lygybėje (F) dešinė pusė yra teigiama. Todėl funkcijos x3+12y(4) išvestinė yra teigiama. Tai reiškia, kad funkcija x3+12y(4) interavale (0;π2) didėja ir todėl, remiantis (8.114) lygybe, y(4)>0.
Taigi, indukcijos metodu gavome, kad išvestinių ženklai kaitoliojasi (y(0)>0, y(1)<0, y(2)>0, y(3)<0, y(4)>0), kai 0<x<π2. Kadangi un+2=y(n+2)y(n+1), tai un+2<0 (kai 0<x<π2). Vadinasi, tangentui negalime panašiai kaip hiperboliniam tangentui vertinti paklaidą.

Hiperbolinio tangento skaičiavimo pagreitinimas

th⁡x≈x1+x23+x25+x27+x29+x211+x213=
=x1+x23+x25+x27+x29+x211⋅13+x213=x1+x23+x25+x27+x29+x2143+x213=x1+x23+x25+x27+x29+13x2143+x2=
=x1+x23+x25+x27+x29(143+x2)+13x2143+x2=x1+x23+x25+x27+x21287+9x2+13x2143+x2=
=x1+x23+x25+x27+x21287+22x2143+x2=x1+x23+x25+x27+x2(143+x2)1287+22x2=
=x1+x23+x25+x27+x2(143+x2)1287+22x2=x1+x23+x25+x27(1287+22x2)+x2(143+x2)1287+22x2=
=x1+x23+x25+x29009+154x2+143x2+x41287+22x2=x1+x23+x25+x29009+297x2+x41287+22x2=
=x1+x23+x25+x2(1287+22x2)9009+297x2+x4=x1+x23+x25(9009+297x2+x4)+x2(1287+22x2)9009+297x2+x4=
=x1+x23+x2(45045+1485x2+5x4)+(1287x2+22x4)9009+297x2+x4=x1+x23+x245045+2772x2+27x49009+297x2+x4=
=x1+x23+9009x2+297x4+x645045+2772x2+27x4=x1+x23(45045+2772x2+27x4)+9009x2+297x4+x645045+2772x2+27x4=
=x1+x2135135+8316x2+81x4+9009x2+297x4+x645045+2772x2+27x4=x1+x2135135+17325x2+378x4+x645045+2772x2+27x4=
=x1+45045x2+2772x4+27x6135135+17325x2+378x4+x6=x135135+17325x2+378x4+x6+45045x2+2772x4+27x6135135+17325x2+378x4+x6=
=x135135+62370x2+3150x4+28x6135135+17325x2+378x4+x6=x(135135+17325x2+378x4+x6)135135+62370x2+3150x4+28x6=
=135135x+17325x3+378x5+x7135135+62370x2+3150x4+28x6.
Pagal Teiloro eilutę hiperbolionio tangento formulė yra

tanh⁡x=∑n=1∞B2n4n(4n−1)(2n)!x2n−1=x−x33+2x515−17x7315+⋯for |x|<π2

Arba tikslesnė formulė yra:
th⁡x=x−x33+2x515−17x7315+62x92835−⋯
https://proofwiki.org/wiki/Power_Series_Expansion_for_Hyperbolic_Tangent_Function
Skaičiuojant kompiuterio programavimo kalba, efektyviau koduoti taip:
th⁡x=135135x+17325x3+378x5+x7135135+62370x2+3150x4+28x6=
=x(135135+17325x2+378x4+x6)135135+x2(62370+3150x2+28x4)=
=x(135135+x2(17325+378x2+x4))135135+x2(62370+x2(3150+28x2))=
=x(135135+x2(17325+x2(378+x2)))135135+x2(62370+x2(3150+28x2)).
Ir taip:
th⁡x=x−x33+2x515−17x7315+62x92835=
=x(1−x23+2x415−17x6315+62x82835)=
=x(1−x2(13+2x215−17x4315+62x62835))=
=x(1−x2(13+x2(215−17x2315+62x42835)))=
=x(1−x2(13+x2(215−x2(17315+62x22835)))).
Užtenka vieną kartą apskaičiuoti x2 reikšmę ir įstatyti ją kur reikia.
Kad momentaliai skaičiuoti hiperbolinį tangentą su Windows 10 kalkuliatoriumi, reikia vietoje x įstatyti norimą reikšmę į šias formules:
(x*(135135 +x^2 *(17325 +x^2 *(378 +x^2))))/( 135135 +x^2 *(62370 +x^2 *(3150 +28*x^2))) =
x*(1 - x^2 *(1/3 + x^2 *(2/15 - x^2 *(17/315 + 62 *x^2 /2835 )))) =
Pavyzdžiui, kai x = 1.16, atsakymai yra:
(1.16*(135135 +1.16^2 *(17325 +1.16^2 *(378 +1.16^2))))/(135135 +1.16^2 *(62370 +1.16^2 *(3150 +28*1.16^2))) =
= 0.8210398813449509085858581607333.
1.16 *(1 - 1.16^2 *(1/3 + 1.16^2 *(2/15 - 1.16^2 *(17/315 + 62* 1.16^2 /2835 )))) =
= 0.59535074138690380050511463844797.
arba
1.16 - 1.16^3 /3 + 2*1.16^5 /15 - 17*1.16^7 /315 + 62*1.16^9 /2835 =
= 0.85038956128067192748924162257496.
Teiloro eilutė progresuoja lėtai.
Tikroji tanh(1.16) reikšmė yra:
0.82103988133287713398626200461214.


Arba be prastinimo pirma formulė tokia:
(135135*x +17325*x^3 +378*x^5 +x^7)/(45045 +47817*x^2 +2799*x^4 +27*x^6) =
(135135*1.16 +17325*1.16^3 +378*1.16^5 +1.16^7)/(135135 +62370*1.16^2 +3150*1.16^4 +28*1.16^6) =
= 0.8210398813449509085858581607333.


Kai x = 0.9, hiperbolinio tangento reikšmės abiem formulėm tampa tokios:
(135135*0.9 +17325*0.9^3 +378*0.9^5 +0.9^7)/(135135 +62370*0.9^2 +3150*0.9^4 +28*0.9^6) = 0.716297870199411047131855646763.
0.9*(1 - 0.9^2 *(1/3 + 0.9^2 *(2/15 - 0.9^2 *(17/315 + 62 *0.9^2 /2835 )))) = 0.61255353651428571428571428571429
arba
x - x^3 /3 + 2*x^5 /15 - 17*x^7 /315 + 62*x^9 /2835 =
0.9 - 0.9^3 /3 + 2*0.9^5 /15 - 17*0.9^7 /315 + 62*0.9^9 /2835 = 0.71839183937142857142857142857143.
Windows 10 kalkuliatorius greičiausiai kažkaip ne taip interpretuoja skliaustus ir visa kitą.
Tikroji th(0.9) reikšmė yra 0.71629787019902442081144378305809.
Tikroji paprasto tangento reikšmė yra tg(0.9) = 1.2601582175503391371345754853957.