Pereiti prie turinio

Apytikslis šaknų skaičiavimas (stygų ir liestinių metodai)

Iš Wikibooks.


Apytikslis šaknų skaičiavimas

[keisti]
Yra metodai leidžiantys atskirti realiąsias šaknis polinomo su realiaisiais koeficientais, t. y. kiekvienai šakniai nurodyti ribas, tarp kurių yra tik viena šita šaknis. Jeigu šitos ribos (intervalas) pakankamai siauros, tai bet kokį skaičių, esantį tarp jų, galima laikyti apytikslia reikšme ieškomos šaknies. Tokiu budu, po to, kai Šturmo metodu (arba kokiu nors kitu, ekonomiškesniu budu) bus nustatyta, kad tarp racionaliųjų skaičių ir yra tik viena šaknis polinomo lieka užduotis tiek susiaurinti šitas ribas (intervalo kraštus), kad naujos ribos (kraštai) ir turėtų į priekį nustatytą skaičių sutampančių pirmų dešimtainių skaitmenų; šituom ieškoma šaknis bus apskaičiuota su užduotu tikslumu.
Egzistuoja daug metodų, leidžiančių pakankamai greitai rasti apytikslią šaknies reikšmę su reikalaujamu tikslumu. Mes nurodysime du iš jų, teoriškai paprastesnius ir bendresnius, ir kuriuos naudojant kartu pakankamai greitai prieinama prie tikslo. Reikia pastebėti, kad metodai, kurie bus dabar išdėstyti, pritaikomi ne tik polinomams, bet ir platesnėms klasėms tolydžių funkcijų. Toliau laikysime, kad yra paprasta (nekartotinė) šaknis polinomo kadangi nuo kartotinių šaknų mes visada galim išsilaisvint (jeigu šaknies kartotinumas yra k, tai polinomas turės tik paprastą šaknį ), ir kad šaknis jau atskirta ribom a ir b, iš čia seka, kad ir turi skirtingus ženklus.

Tiesinės interpoliacijos metodas (stygų metodas)

[keisti]
Apytikslia reikšme šaknies būtų galima laikyti, pavyzdžiui, pusė sumos kraštų a ir b, t. y. atkarpos vidurį, kurio galai a ir b. Natūraliau manyti, kad šaknis guli arčiau prie tos iš ribų (kraštų) a, b, kuriai atitinka mažesnė absoliučiu dydžiu polinomo reikšmė. Tiesinės (linijinės) interpoliacijos metodo esmė yra tokia, kad skaičius c laikomas apytikslia reikšme šaknies ir dalinantis atkarpą (a, b) į dalis, proporcingas absoliučioms reikšmėms skaičių ir t. y.
minuso ženklas dešinėje dalyje pastatytas dėl to, kad ir turi skirtingus ženklus. Iš čia
10 brėž.
Geometriškai, kaip parodyta 10 brėž., linijinės interpoliacijos metodo esmė tame, kad ant atkarpos (a, b) kreivė pakeičiama jos styga, jungiančia taškus A(a, f(a)) ir B(b, f(b)), ir apytikslia reikšme šaknies laikoma abscisė taško susikirtimo šitos stygos su ašimi x.

Niutono metodas (liestinių metodas)

[keisti]
Kadangi — paprasta šaknis polinomo f(x), tai Priimsime, kad taip pat ir kadangi kitaip klausimas suvedamas į skaičiavimą šaknies polinomo turinčio mažesnį laipsnį, negu Toliau priimsime, kad atkarpa (a, b) ne tik neturi šaknų, skirtingų nuo bet ir neturi nei vienos šaknies polinomo o taipogi ir polinomo *. Tokiu budu, kaip seka iš matematinės analizės kurso, kreivė ant atkarpos (a, b) yra arba monotoniškai didėjanti, arba monotoniškai mažėjanti, o taip pat arba visuose taškuose šitos atkarpos yra išgaubta į viršų, arba visuose taškuose šitos atkarpos įgaubta žemyn. Kreivės išsidėstymas ant atkarpos (a, b) gali priklausyti vienam iš keturių atvejų, parodytų brėžiniuose 11—14.
Brėžiniai 11-14.
15 brėž.
Pažymėsime per tą iš ribų a ir b, pas kurią ženklas f(x) sutampa su ženklu Kadangi f(a) ir f(b) turi skirtingus ženklus, o išsaugo ženklą visoje atkarpoje (a, b), tai toks gali būti nurodytas (jeigu kreivė išgaubta į viršų, tai jos antra išvestinė visada neigiama toje atkarpoje (), o jeigu kreivė įgaubta į apačią, tai jos antra išvestinė visada teigiama () toje atkarpoje). Atvejais, parodytais brėžinuose 11 ir 14, bus kitais dviais atvejais Kreivės taške su abscise t. y. taške su koordinatėmis pravesime liestinę šitos kreivės ir pažymėsime per d abscisę taško susikirtimo šitos liestinės su ašimi x. Brėžiniai 11-14 rodo, kad skaičių d galima laikyti apytikslia reikšme šaknies Niutono metodas susideda iš pakeitimo kreivės ant atkarpos (a, b) jos liestine vienoje iš ribų šitos atkarpos. Skaičiaus pasirinkimo sąlyga yra svarbi: brėž. 15 parodo, kad be šitos sąlygos paisymo, liestinės susikirtimo taškas su ašimi x gali visai neduoti priartėjimo prie ieškomos šaknies.

_________________________

* Ribų (kraštų) siaurinimas, privedantis prie to, kad šita sąlyga bus tenkinama, pasiekiamas įprastai be didesniu sunkumu, kadangi metodai, aptarti anksčiau, leidžia nustatyti šaknų skaičių polinomo ir bet kokioje atkarpoje.
16 brėžinys.
Išvesime formulę, pagal kurią ieškomas skaičius d. Kaip žinoma, liestinės lygtis kreivės taške gali būti užrašyta pavidale
Įstatydami čia koordinates (d, 0) susikirtimo taško liestinės su ašimi x, gausime:
iš kur
Jeigu skaitytojas sujungs ant brėž. 11-14 taškus A ir B stygom, tai pastebės, kad metodu linijinės interpoliacijos ir Niutono visais atvejais duoda priartėjimą prie tikros reikšmės šaknies iš skirtingų pusių. Tikslinga todėl, jeigu atkarpa (a, b) jau tokia, kaip to reikalaujama Niutono metode, kombinuoti šituos du metodus. Mes gausime šituo budu daug labiau siauras ribas c ir d šakniai Jeigu jie dar neduoda reikalaujamo tikslumo, tai šitoms riboms reikia dar kartą pritaikyti nurodytus abu metodus (žr. 16 brėž.) ir t. t., be to galima įrodyti, kad šitas procesas tikrai leidžia apskaičiuoti šaknį su bet kokiu tikslumu.

Niutono metodo įrodymas

[keisti]
Mes iki šiol neparodėme, kad išdėstyti aukščiau metodai iš tikro leidžia apskaičiuoti šaknį su bet kokiu tikslumu, t. y. neįrodėme konvergavmo šitų metodų. Įrodysime tai Niutono metodui.
Tegu, kaip ir aukščiau, paprasta šaknis polinomo f(x) yra atkarpoje (a, b), išrinktoje taip, kaip tai būtina Niutono metodo naudojime. Iš čia seka egzistavimas tokių teigiamų skaičių A ir B, kad visur ant atkarpos (a, b)
Įvesime žymėjimą
ir laikysime, kad
Šios nelygybės išpildymui galimai prireiks pakeisti ribas (a, b) šaknies siauresnėm ribom; tai nepakeis nelygybių (3) teisingumo. Tegu bus ta iš ribų a, b, kuriai taikomas Niutono metodas. Pagal formulę (2) mes nuosekliai gausime apytikslias šaknies reikšmes gulinčias atkarpoje (a, b) ir surištas tarpusavyje lygybėmis
Tegu
Tada (pagal Teiloro formulę)
kur Kadangi dėl sąlygos atkarpai (a, b), tai, atsižvelgdami į (5) ir (6), gausime:
Iš čia
Tokiu budu,
[ ]
arba, kadangi


Jeigu Teiloro formulėje
paimsime, kad n=1, tai gausime tokią Teiloro formulę:
Toliau pažymėkime
Įstatykime šiuos pakeitimus į (8) formulę:
Taigi, gavome formulę (6.5),


Iš (7) formulės, pagal (4) sąlygą, seka, kad skirtumas tarp šaknies ir jos apytikslės reikšmės gautos nuosekliai taikant Niutono metodą, artėja prie nulio, kai k didėja, ką ir reikėjo įrodyti.
Pastebėsime, kad (7) formulė duoda paklaidos įvetinimą -am žingsniui, kas reikšminga, jeigu Niutono metodas taikomas vienas, o ne kombinacijoje su metodu linijinės interpoliacijos.
Kursuose teorijos apytikslių skaičiavimų galima rasti išdėstymą daugelį kitų metodų apytikslio šaknų skaičiavimo. Tarp jų labiausiai tobulu yra Lobačevskovo metodas (метод Лобачевского) (kai kada klaidingai vadinamas metodu Grefe (Греффе)). Šitas metodas leidžia rasti apytikslias reikšmes visų šaknų iš karto, tame tarpe ir kampleksinių, be to nereikalauja išankstinio šaknų atskyrimo; jis surištas, visgi, su pakankamai griozdiškais skaičiavimais. Šio metodo pagrindą sudaro teorija simetrinių polinomų.

Pavyzdžiai

[keisti]
  • Pritaikysime šituos metodus polinomui
Mes žinome, kad šitas polinomas turi paprastą šaknį esančią ribose Iš anksto galima pasakyti, kad šitos ribos per plačios tam, kad metodai linijinės interpoliacijos ir Niutono, pritaikyti tik po vieną kartą, galėtų duoti gerą rezultatą. Visgi pritaikysime juos, kad turėti vieną pavyzdį, nereikalaujantį sudetingų skaičiavimų.
Su išvestinės yra teigiamos. Iš čia seka (pagal tam tikrą teoriją), kad šaknis tarnauja o taip pat viršutine riba teigiamų šaknų. Atkarpa (1, 2) to pasekoje neturi šaknų šitų išvestinių, todėl jai galima pritaikyti Niutono metodą. Be to, visur šitoje atkarpoje teigiama, o kadangi
h(2) = 2^5 + 2*2^4 - 5*2^3 + 8*2^2 - 7*2 - 3 = 32 + 2*16 -5*8 +8*4 - 7*2 - 3 = 32+32-40+32-14-3 = 39,
tai reikia priimti (12 brėž.). Atsižvelgdami, kad mes pagal (2) formulę gauname:
[
h'(2) = 5*2^4+8*2^3-15*2^2+16*2-7 = 5*16 + 8*8 -15*4 +16*2 -7 = 80 + 64 - 60 + 32 - 7 = 109. ]
Iš kitos pusės, formulė (1) duoda:
ir, to pasekoje, šaknis yra ribose
Mes gavome nereikšmingą ribų susiaurėjimą tam, kad pripažinti šitą rezultatą tenkinančiu. Žinoma, gautoms riboms būtų galima dar kartą pritaikyti mūsų metodus. Tikslinga, visgi, iš pat pradžių rasti šakniai pakankamai ankštas ribas, pavyzdžiui su tikslumu iki 0.1 arba net 0.01, ir tik po to panaudoti šituos metodus. Tai, suprantama, iškart padarys visus skaičiavimus gana griozdiškais, bet sprendžiant konkrečius uždavinius, reikalaujančius pakankamai tikslaus polinomo šaknų žinojimo, tenka tai daryti.
Grįškime prie mūsų polinomo ir jo šaknies be kita ko pastebėsime, kad visos reikšmės polinomų, pateiktos žemiau, apskaičiuojamos Hornerio metodu. Kadangi
[h(1.3) = 1.3^5 +2*1.3^4 -5*1.3^3 +8*1.3^2 -7*1.3 -3 = -0.13987,
h(1.31) = 1.31^5 +2*1.31^4 -5*1.31^3 +8*1.31^2 -7*1.31 -3 = 0.0662923851.]
tai
t. y. mes radome reikšmes šaknies tikslumu iki 0.01. Pritaikysime dabar šitoms naujoms riboms linijinės interpoliacijos metodą:
= (1.31*(-0.13987) - 1.3*0.0662923851)/(-0.13987 -0.0662923851) = 1.3067844577919563465508238340613 = 1.30678 ...
Pritaikysime šitoms riboms Niutono metodą, priedo reikia paimti Kadangi
[h'(x) = 5*1.31^4 +8*1.31^3 -15*1.31^2 +16*1.31 -7 = 20.92822405.]
tai
= 1.306832393186272296239106824738 = 1.30683 ...
Tokiu budu,
ir todėl, paėmę mes padarysime klaidą, mažesnę nei 0.00003.
Pastebėsime, kad 0.01^2 = 0.0001 > 0.00003. Be to,
h(1.30681) = 1.30681^5 +2*1.30681^4 -5*1.30681^3 +8*1.30681^2 -7*1.30681 -3 = -0.0001496088153666072602599.

Nuorodos

[keisti]