Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Kniga Numerichki Metodi
Kniga Numerichki Metodi
1. VOVED
Va`nost na numeri~kite metodi vo in`enerstvoto Pove}eto problemi vo in`enerskata analiza vklu~uvaat, (1) razvivawe matemati~ki model koj }e gi pretstavuva site va`ni karakteristiki na fizi~kiot sistem; (2) izveduvawe na ravenkite koi go opi{uvaat odnesuvaweto na modelot, so primena na fizi~kite zakoni kako {to se ravenkite za ramnote`a, Wutnovite zakoni za dvi`eweto, zakonite za odr`uvawe na masata i energijata; (3) re{avawe na ravenkite na problemot; (4) interpretacija na re{enieto. Vo zavisnost od sistemot {to se analizira i od koristeniot matemati~ki model, ravenkite na problemot mo`e da bidat pretstaveni vo vid na sistem od linearni ili nelinearni algebarski ravenki, set od transcendentni ravenki, sistem od obi~ni ili parcijalni diferencijalni ravenki, sistem od homogeni ravenki so koi se opi{uva problemot na sopstveni vrednosti, ili ravenki koi vklu~uvaat integrali ili izvodi. Ako re{enieto mo`e da se pretstavi so matemati~ki izraz vo zatvorena forma, toa se narekuva analiti~ko re{enie. Analiti~ko re{enie e to~no re{enie, koe mo`e da se koristi za da se analizira odnesuvaweto na sistemot so promenlivi parametri. Nie mo`eme ili ne mo`eme da najdeme analiti~ko re{enie na ravenkite na problemot. Za `al, mnogu malku od prakti~nite sistemi imaat analiti~ko re{enie. Vo tie slu~ai se primenuvaat numeri~ki metodi. Numeri~kite re{enija ne mo`e da se pretstavat so matemati~ki izraz. Tie mo`e da se opredelat so soodveten tip iterativna presmetuva~ka postapka. Bidej}i numeri~kite metodi vklu~uvaat golem broj aritmeti~ki presmetuvawa, nivnata upotreba i popularnost se zgolemuva so razvitokot i dostapnosta na mo}nite i ne tolku skapi kompjuteri. Numeri~kite metodi mo`e da se koristat za nao|awe re{enija, duri, i na kompleksni in`enerski problemi. Dodeka analiti~kite re{enija voobi~aeno baraat pove}e uprosteni pretpostavki za fizi~kiot sistem, za numeri~kite re{enija, tie ne se potrebni. Iako ovie metodi ne obezbeduvaat direkten prikaz na odnesuvaweto na simplificiraniot fizi~ki sistem, tie mo`e da se koristat za analiza na odnesuvaweto na realnite fizi~ki sistemi. Vo su{tina, numeri~kata analiza pretstavuva most pome|u aproksimativnite matemati~ki teorii i neposrednata primena na matematikata. Vo numeri~kite metodi, re{enieto na eden problem
NUMERI^KI METODI
Voved
koj e zadaden preku kone~ni brojni vrednosti se dobiva, isto taka, vo kone~ni brojni vrednosti, a ne vo op{ti vrednosti, kako {to e voobi~aeno vo klasi~nite metodi. Razvojot i primenata na ovie metodi se povrzani so potrebata od re{avawe slo`eni problemi za koi re{enieto ne mo`e da se dobie eksplicitno. Toa se glavno dvodimenzionalnite i trodimenzionalnite problemi. Vo ponovo vreme, so pojavata i razvitokot na kompjuterite, numeri~kite metodi se primenuvaat i kaj poednostavnite, ednodimenzionalni problemi. Primena na numeri~kite metodi Primenata na numeri~kite metodi i na kompjuterite e dosta {iroka vo site oblasti od in`enerstvoto: grade`ni{tvo, arhitekturata, lektrotehnikata, brodogradbata, vo avioindustrijata. Mnogu zna~aen pridones vo razvojot na ovie metodi imaat dadeno tokmu grade`nite in`eneri. Vo grade`ni{tvoto, primenata na ovie metodi e pri proektiraweto na in`enerskite objekti: brani, mostovi, soobra}ajnici, zgradi i dr. Na primer, za proektirawe na brani se primenuva metodot na kone~ni elementi, pri {to konstrukcijata na branata mo`e da se tretira ramninski, zaedno so podlogata i so okolnata karpesta masa. Vo dene{no vreme, so koristeweto na mo}ni kompjuteri, analizita se vr{i na prostoren model. Sli~no e i pri proektiraweto na tunelite, kade {to se zema vo predvid i vlijanieto na celata okolna sredina. Vo ponovo vreme s pove}e se gradat mostovi so golemi rasponi i so slo`en napre~en i nadol`en presek i za nivno proektirawe e neizbe`na primenata na numeri~kite metodi i na kompjuterite. Osobeno e va`na primenata na kompjuterskite metodi pri proektiraweto na soobra}ajnicite so site nivni pridru`ni objekti, koi pretstavuvaat in`enerski dela vo koi se vlo`uvaat golemi finasiski sredstva. Pritoa, izborot na najpovolnata varijanta i ekonomi~noto proektirawe e od golema va`nost. Vo objektite od visokogradbata, primenata na kompjuterite i kaj nas pretstavuva standarden na~in na analiza i proektirawe. Goleminata na objektite, odnosno brojot na ravenkite {to treba da se re{avaat pri nivnata analiza, ne pretstavuva problem nitu ograni~uvawe. Nivnata analiza za kakvi i da bilo vlijanija, kako {to se na primer zemjotresite, so primena na kompjuterite, pretstavuva ednostavna i sekojdnevna rabota. So voveduvawe na grafikata i grafi~kite stanici vo kompjuterskata tehnika, se otvoraat {iroki mo`nosti za proektirawe na sekakvi in`enerski i arhitektonski objekti. Celoto proektirawe i grafi~koto pretstavuvawe mo`e da se odvivaat so kompjuterska tehnika, bazirana na numeri~ki metodi i kompjuterski programi.
NUMERI^KI METODI
Voved
Zo{to gi izu~uvame numeri~kite metodi? Numeri~kite metodi se ekstremno mo}ni alatki za re{avawe na razli~ni problemi. Tie se vo sostojba da se spravat so: golemi sistemi ravenki, nelinearnosti, komplicirani geometrii, problemi koi e nevozmo`no da se re{at analiti~ki a ne se retki vo in`enerskata praktika. Kako takvi, numeri~kite metodi zna~itelno gi zajaknuvaat na{ite sposobnosti za re{avawe na problemite. Vo in`enerskata praktika, ~esto se koristat dostapni komercijalni paketi, t.n. zatvoreni kutii, kompjuterski programi vo koi se vgradeni postapki bazirani na numeri~kite metodi. Inteligentnoto koristewe na ovie programi e bazirano vrz poznavaweto na bazi~nata teorija {to stoi zad numeri~kite metodi. Mnogu problemi ne mo`at da se re{at so koristewe na vakvi gotovi programi, no ako gi poznavate i gi koristite numeri~kite metodi i ako ste ve{ti vo kompjuterskoto programirawe, }e bidete vo sostojba da izrabotite va{i sopstveni programi za re{avawe na nekoi problemi. Numeri~kite metodi se efikasni sredstva da nau~ite kako da gi koristite kompjuterite. Efekten na~in da nau~ite programirawe e da napravite (napi{ete) programa. Poradi toa {to numeri~kite metodi vo najgolem broj slu~ai se razvieni za primena na kompjuter, tie se idealni za taa cel. Osobeno se sposobni da gi ilustriraat mo}nosta i ograni~uvawata na kompjuterite. Koga uspe{no }e ja implementirate numeri~kata metoda na komjuter a potoa }e ja primenite i za re{avawe na drug nere{en problem, vo isto vreme, }e nau~ite da gi prepoznaete i da gi kontrolirate gre{kite pri aproksimaciite, koi se del od golemiot broj numeri~ki operacii. Numeri~kite metodi obezbeduvaat sredstva {to }e vi pomognat da go podobrite va{eto razbirawe na matematikata. Vo niv kompliciranite matemati~ki operacii se reducirani na osnovni matemati~ki operacii. Numeri~ka analiza e granka od primenetata matematka koja gi izu~uva metodite i algoritmite za opredeluvawe na aproksimativni (numeri~ki) re{enija na razli~ni matemati~ki problemi so koristewe na kone~na serija od aritmeti~ki i logi~ki operacii. Najgolem broj re{enija na numeri~kite problemi se bazirani vrz teorijata na linearnata algebra. Dobar numeri~ki metod gi poseduva slednive tri karakteristiki: to~nost - numeri~kata aproksimacija treba da bide {to e mo`no poto~na,
NUMERI^KI METODI
Voved
robustnost - algoritamot treba dobro da re{ava mnogu problemi, konvergentnost - re{enieto da se pribli`uva kon to~noto re{enie, stabilnost- mala promena vo re{enieto pri mala promena na podatocite, brzina - kolku {to presmetuvaweto e pobrzo tolku e podobar metodot.
^esto se slu~uva eden metod da bide pobrz dodeka drug e poto~en. Toa zna~i deka nitu eden metod ne e univerzalen i najdobar za site slu~ai. Uslovenost i stabilnost, doverba vo podatocite i gre{ki Dobro usloven matemati~ki problem e onoj pri koj re{enieto se menuva nezna~itelno pri mala promena na podatocite na problemot. Analogno na toa, za numeri~kiot algoritam postoi konceptot na numeri~ka stabilnost. Algoritamot za re{avawe na dobrousloven problem e numeri~ki stabilen, ako re{enieto se menuva za mala vrednost koga podatocite se menuvaat za mala vrednost. Toa zna~i deka gre{kite napraveni vo po~etokot, ponatamu, nema nekontrolirano da rastat i da se natrupuvaat. Va`en del od numeri~kata analiza e i analizata na generiraweto i propagiraweto na gre{kite od zaokru`uvawe pri presmetuvaweto. Vadeweto na dva pribli`no isti broja e lo{o uslovena operacija koja producira katastrofalni gre{ki. Doverba vo vleznite podatoci Koga nekoj podatok se koristi vo presmetuvaweto, mora da sme sigurni deka toj mo`e da se upotrebi so doverba. Pri vizuelen pregled mo`e da procenime deka nekoja vrednost se dvi`i vo odredeni granici (na pr. 58-59 km/h) ili pak }e ka`eme deka vrednosta iznesuva aproksimativno 59 km/h. Zna~ajni cifri vo eden broj se onie koi mo`e da se koristat so doverba. Brojot na zna~ajni cifri e ednakov na brojot na dadenite cifri plus edna proceneta cifra. Na primer, sekoj od slednive broevi ima 3 zna~ajni cifri: 2,410; 2.41; 0.00241. Zabunata mo`e da se izbegne pri koristewe na nau~na oznaka (scientific notation), na pr: 2.41h103 zna~i deka brojot ima tri zna~ajni cifri. Sekoja matemati~ka operacija vo koja se koristi neprecizna cifra e neprecizna.
NUMERI^KI METODI
Voved
Tipovi gre[ki Kako gre{ka, pri procena ili pri opredeluvawe na nekoja vrednost od interes, mo`e da se definira otstapuvaweto od nejzinata nepoznata to~na vrednost. Gre{kite mo`e da se klasificiraat kako: o nenumeri~ki gre{ki o numeri~ki gre{ki Nenumeri~ki gre{ki mo`e da bidat: gre{ki pri modeliraweto pome{uvaweto, pogre{en ~ekor neizvesnosti vo odnos na informaciite i podatocite. Numeri~ki gre{ki se: gre{ki od zaokru`uvawe gre{ki od prekinuvawe na iterativniot proces gre{ki pri matemati~ki aproksimacii
Gre{ka ozna~ena so e mo`e da se definira kako: e=xc-xt kade {to, xc e presmetana, a xt e to~na vrednost. Relativnata gre{ka se opredeluva kako: er=(xc-xt)/xt= e/xt Relativnata gre{ka mo`e da se izrazi vo procenti:
er =
xc xt 100% xt
ili
abse r =
xc xt 100% xt
Merewa i gre[ki Primer 1. Dol`inata na eden most e merena i iznesuva 9999cm, a dol`inata na eden bolt e izmerena i iznesuva 9cm. Ako to~nite vrednosti se 10000cm i 10cm, soodvetno, da se presmeta apsolutnata gre{ka i apsolutnata vrednost na relativnata gre{ka vo %, za sekoj slu~aj. a) Apsolutna gre{ka: Most:
Voved
Bolt:
e = x c x t = 9 10 = 1cm
Most:
e=
Bolt:
e=
Vo realni situacii, to~noto re{enie ne e poznato. Vo toj slu~aj, za da se presmeta gre{kata, se koristi najdobrata procena na re{enieto koe, isto taka, e presmetano.
ei = x i x t
kade {to ei e gre{ka vo x, pri iteracijata i, a xi e presmetanata vrednost na x vo iteracijata i. Sli~no, gre{kata vo iteracijata i+1 e:
e i+1 = x i+1 x t
Promenata vo gre{kata
e i = e i +1 e i = ( x i +1 x t ) ( x i x t ) = x i +1 x i
Iteracijata prodol`uva s dodeka e i ne stane pomalo od dadena tolerancija, vo koj slu~aj xi+1 }e bide dovolno blisku do xi. Analiti~ki vo sporedba so numeri~kite metodi Analiti~kite i numeri~kite pristapi se razlikuvaat spored algoritamot: analiti~koto presmetuvawe se primenuva pri re{avawe na analiti~ki problemi aritmetikata so kone~ni razliki e osnova za numeri~kite metodi.
Prednosti i nedostatoci na analiti~kite metodi : 9 analiti~kite tehniki obezbeduvaat direktno re{enie rezultiraat vo egzaktno re{enie, ako takvo postoi;
NUMERI^KI METODI
Voved
9 analiti~kite metodi voobi~aeno baraat pomalku vreme za pronao|awe na re{enieto; 9 procedurata na analiti~koto re{enie stanuva zna~itelno pokompleksna koga }e se vovedat ograni~uvawa na vrednostite na nepoznatite vo problemot. Prednosti i nedostatoci na numeri~kite metodi : 9 numeri~kite tehniki mo`e da se primenat za funkcii koi imaat kompleksna struktura; 9 za numeri~kite metodi e potreben golem broj iteracii za da se pribli`at kon to~noto re{enie; 9 re{enieto voobi~aeno ne e to~no i potrebno e da se obezbedi po~etna procena na vrednostite na nepoznatite. Primer 2. Da se opredeli minimumot na dadenata funkcija, analiti~ki i numeri~ki:
y = x 2 3x + 2
Analiti~ko re[enie
Eden na~in na numeri~ko re{enie e funkcijata da se tabelira vo intervalot na vrednostite na x, so konstanten inkrement x, i na toj na~in da se opredeli vrednosta na x za koja y ima najmala vrednost. Na primer, ako e definiran intervalot od 1 do 2 i ako se odbere inkrement x=0.2, narednata tabela i grafikot poka`uvaat deka minimalnata vrednost na y se nao|a vo podintervalot 1.4< x < 1.6.
x 1 1.2 1.4 1.6 1.8 2 y=x2-3x+2 0 -0.16 -0.24 -0.24 -0.16 0
}
NUMERI^KI METODI
Voved
Za da se podobri to~nosta na re{enieto, mo`e da se prebaruva vo intervalot 1.4 < x < 1.6, a inkrementot da se namali na 0.02 i da se povtori postapkata.
x 1.4 1.42 1.44 1.46 1.48 1.5 1.52 1.54 y=x2-3x+2 -0.24 -0.2436 -0.2464 -0.2484 -0.2496 -0.25 -0.2496 -0.2484 ymin
Karakteristiki na numeri~kite metodi Numeri~kite metodi gi imaat slednive karakteristiki: 1. procedurata na presmetuvaweto e iterativna, to~nosta na procenetoto re{enie se podobruva so sekoja iteracija, 2. procedurata na presmetuvaweto obezbeduva samo aproksimacija na to~noto (egzaktno), no nepoznato re{enie, 3. mo`e da bide potrebna po~etna procena na re{enieto, 4. presmetuvaweto e ednostavno, a algoritmite na procedurata mo`e lesno da se programiraat, 5. vo nekoi slu~ai re{enieto mo`e da divergira od to~noto re{enie. Primer 3. Kvadraten koren Ovoj primer ilustrira kako, so koristewe numeri~ki metodi, da se opredeli kvadraten koren od eden proizvolen realen broj.
f ( y) = y
Pri koristewe na kalkulator samo se vnesuva brojot y, a potoa se pritiska kop~eto Numeri~ka postapka . Vo Excel, se koristi funkcijata SQRT.
NUMERI^KI METODI
Voved
Da pretpostavime po~etna vrednost xo za kvadratniot koren. Ovaa vrednost }e se razlikuva od to~nata vrednost na korenot za nekoe x . Ako go znaeme x , toga{ mo`e da napi{eme:
x o + x = y
So kvadrirawe od dvete strani, dobivame:
( x o + x ) 2 = y
ili,
2 xo + 2x o x + (x ) 2 = y
Ako pretpostavime deka (x ) 2 e mnogu pomalo od x , toj ~len mo`eme da go zanemarime, pa imame:
2 xo + 2x o x = y
2 y xo x = 2x o
Ovaa vrednost mo`e da se dodade na xo za da se dobie novo podobreno re{enie x. Zna~i, novata procena na to~noto re{enie e dadena so:
x 1 = x o + x
ili vo op{ta forma:
x i +1 = x i + x i
y x i2 x i = 2x i
y =?
x 1 = x o + x 0
x 0 =
Vtora iteracija:
x 2 = x 1 + x 1
x 1 =
10
Voved
Treta iteracija:
x 3 = x 2 + x 2
x3 3 x2 6 x + 8 = 0
Delej}i gi dvete strani na ravenkata so x, dobivame:
x2 3 x 6 +
Koristej}i go ~lenot x2, re{avame po x:
8 =0 x
8 x
x = 3 x + 6
x i +1 = 3 x i + 6
8 xi
x1 = 3 x o + 6
8 8 = 3 ( 2) + 6 = 2,828427 2 xo
x 2 = 3 2,828427 + 6
Po tretata iteracija dobivame:
8 = 3,414213 2,828427
8 = 3,728202 3,414213
x 3 = 3 3,414213 + 6
NUMERI^KI METODI
Voved
11
Rezultatite od drugite iteracii (vkupno 20) se prika`ani vo narednata tabela Evidentno e deka re{enieto konvergira kon to~noto re{enie 4.0, po 20 -tata iteracija:
i 0 1 2 3 4 5 6 7 xi 2 2.828427125 3.414213562 3.728202642 3.877989404 3.946016161 3.976265497 3.989593764 aps. gre{ka 2.000000000000 1.171572875254 0.585786437627 0.271797358430 0.122010596101 0.053983838780 0.023734503479 0.010406236009 0.004557020499 0.001994518577 0.000872759280 i 11 12 13 14 15 16 17 18 19 20 xi 3.999618138 3.999832929 3.999926906 3.999968021 3.999986009 3.999993879 3.999997322 3.999998828 3.999999487 3.999999776 aps. gre{ka 0.00038186232 0.00016707053 0.00007309446 0.00003197904 0.00001399087 0.00000612101 0.00000267794 0.00000117160 0.00000051258 0.00000022425
8
9 10
3.995442980
3.998005481 3.999127241
Razvivaweto na Tajlorovite redovi (Taylor series expansions) ima golemo zna~ewe pri izu~uvaweto na numeri~kite metodi. Vo osnova, so Tajlorovite redovi se predviduva vrednosta na funkcijata vo nekoja to~ka vo zavisnost od vrednosta na funkcijata i izvodite na funkcijata vo druga bliska to~ka. Tajlorovite redovi voobi~aeno se koristat vo in`enerskata analiza, za aproksimacija na funkcii koi nemaat zatvoreno re{enie. Za nekoja funkcija f(x) koja zavisi samo od edna nezavisno promenliva x, vrednosta na funkcijata vo to~kata x0+h mo`e da se aproksimira so Tajlorovi redovi. Tajlorovite redovi se izrazeni kako:
f ( x ) = f ( x 0 + h ) = f ( x 0 ) + hf (1) ( x 0 ) + h 2 ( 2) h3 hn f ( x 0 ) + f ( 3) ( x 0 ) + ..... + f ( n ) ( x 0 ) + R n +1 2! 3! n!
kade {to se: x0 - osnovna ili po~etna vrednost x - to~ka za koja se bara vrednosta na funkcijata h=x-x0 - rastojanija pome|u x0 i x, ili ~ekor n! - faktoriel od n; n!=n(n-1)(n-2)(n-3)1 f(x0) - vrednost na funkcijata vo po~etnata to~ka f(n)(x0) - vrednost na n-tiot izvod na funkcijata vo po~etnata to~ka
NUMERI^KI METODI
12
Voved
f(x)
x0
Ekspanzijata na Tajlorovite redovi mo`e da se izrazi vo kompaktna forma kako: k n h f ( x 0 + h ) = f k ( x 0 ) pritoa, 0! =1 po konvencija. k = 0 k! Gornata ravenka e bazirana na pretpostavkata deka postojat kontinuirani izvodi na funkcijata vo intervalot koj gi vklu~uva to~kite od x0 do x. Red na aproksimacijata Redot na aproksimacijata e definiran so redot na najvisokiot izvod koj e vklu~en vo aproksimacijata na funkcijata.
f ( x 0 + h ) = f ( x 0 ) + hf (1) ( x 0 )
f ( x 0 + h ) = f ( x 0 ) + hf
(1)
h 2 ( 2) (x 0 ) + f (x 0 ) 2!
f ( x 0 + h ) = f ( x 0 ) + hf (1) ( x 0 ) +
h 2 ( 2) h 3 ( 3) f (x 0 ) + f (x 0 ) 2! 3!
Voved
13
Po~etna vrednost x0=3. Da se razvijat serii za h=0.2; 0.4; 0.6 do 4.0. Pritoa, da se zemat 2,3,4,5 i 6 ~lena od Tajlorovata formula. Rezultatite da se sporedat so to~nite re{enija za sekoj poseben slu~aj.
f(x0)=f(3)= 35 - 3*33 + 8 = 170 Funkcijata gi ima slednive izvodi i vrednosti na izvodite vo po~etnata to~ka x0=3:
f (1) ( x ) = 5x 4 9 x 2 f (1) (3) = 324 f ( 2 ) ( x ) = 20 x 3 18x f ( 2 ) (3) = 486 f ( 3) ( x ) = 60 x 2 18 f ( 3) (3) = 522 f ( 4 ) ( x ) = 120 x f ( 5) ( x ) = 120 f (6) (x ) = 0
f (x 0 + h ) = f ( x 0 ) + hf (1) ( x 0 ) +
h6 h5 h4 h3 h 2 ( 2) f ( x 0 ) + f ( 3) ( x 0 ) + f ( 4 ) ( x 0 ) + f ( 5 ) ( x 0 ) + f ( 6 ) ( x 0 ) 6! 5! 4! 3! 2!
Vo narednata tabela se dadeni vrednostite na funkcijata f(x0+h), za razli~ni vrednosti na h, a so zemawe razli~en broj ~lenovi od formulata:
NUMERI^KI METODI
14
Voved
f(x0+h) x 3.2 3.4 3.6 3.8 4 4.2 4.4 4.6 4.8 5 5.2 5.4 5.6 5.8 6 6.2 6.4 6.6 6.8 7 h 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 2.2 2.4 2.6 2.8 3 3.2 3.4 3.6 3.8 4 2 ~lena 234.8 299.6 364.4 429.2 494 558.8 623.6 688.4 753.2 818 882.8 947.6 1012.4 1077.2 1142 1206.8 1271.6 1336.4 1401.2 1466 3 ~lena 244.52 338.48 451.88 584.72 737 908.72 1099.88 1310.48 1540.52 1790 2058.92 2347.28 2655.08 2982.32 3329 3695.12 4080.68 4485.68 4910.12 5354 4 ~lena 245.216 344.048 470.672 629.264 824.000 1059.056 1338.608 1666.832 2047.904 2486.000 2985.296 3549.968 4184.192 4892.144 5678.000 6545.936 7500.128 8544.752 9683.984 10922.000 5 ~lena 245.240 344.432 472.616 635.408 839.000 1090.160 1396.232 1765.136 2205.368 2726.000 3336.680 4047.632 4869.656 5814.128 6893.000 8118.800 9504.632 11064.176 12811.688 14762.000 6 ~lena 245.24032 344.44224 472.69376 635.73568 840.00000 1092.64832 1401.61024 1775.62176 2224.26368 2758.00000 3388.21632 4127.25824 4988.46976 5986.23168 7136.00000 8454.34432 9958.98624 11668.83776 13604.03968 15786.00000 to~no 245.24032 344.44224 472.69376 635.73568 840.00000 1092.64832 1401.61024 1775.62176 2224.26368 2758.00000 3388.21632 4127.25824 4988.46976 5986.23168 7136.00000 8454.34432 9958.98624 11668.83776 13604.03968 15786.00000
NUMERI^KI METODI
Voved
15
Slednive serii, mo`e da se koristat za procena na soodvetnite funkcii vo sekoja to~ka x, koristej}i ja po~etnata vrednost x0=0 i ~ekor h: k x x2 x3 xk ex = 1+ x + + + ....... + = 2! 3! k! k =0 k!
sin( x ) = x
cos( x ) = 1
1 = 1 + x + x 2 + x 3 + .... = x k k =0 1 x
xk x2 x3 + + ....... + e = 1+ x + k! 2! 3!
x
koga x=x0=0 kako po~etna to~ka i h kako inkrement. Da se razvijat seriite za h=0.1; 0.2; 0.3,.... do 1.0. Da se nacrtaat rezultatite i da se sporedat so to~nata vrednost za sekoj poseben slu~aj.
f ( x 0 + h ) = f ( x 0 ) + hf (1) ( x 0 ) +
f f
(1) ( 2)
h 2 ( 2) h 3 ( 3) h n (n ) f (x 0 ) + f ( x 0 ) + ..... + f ( x 0 ) + R 0+1 3! n! 2!
f(x)=ex
x0 x0
(x 0 ) = e
= e =1
0
(x 0 ) = e
= e0 = 1
....... f (n ) (x 0 ) = e x0 = e 0 = 1
x0 = 0 x = x0+h = 0+h = h
Po definicija, h=x-x0 = x-0 = x Spored toa, ili
h=x
f(0)=e0=1
h2 hn f ( x ) = f (h ) = 1 + h + + .... + 2! n! 2 x xn f ( x ) = f (h ) = 1 + x + + .... + 2! n!
NUMERI^KI METODI
16
Voved
f(x0+h) x 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 h 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 1 ~len 1.00000 1.00000 1.00000 1.00000 1.00000 1.00000 1.00000 1.00000 1.00000 1.00000 2 ~lena 1.1000 1.2000 1.3000 1.4000 1.5000 1.6000 1.7000 1.8000 1.9000 2.0000 3 ~lena 1.105 1.220 1.345 1.480 1.625 1.780 1.945 2.120 2.305 2.500 to~na vredn. 1.105171 1.221403 1.349859 1.491825 1.648721 1.822119 2.013753 2.225541 2.459603 2.718282
Primer 7 Prosta greda e natovarena so ramnomerno raspredelen tovar q. Uklonot na gredata, ili vertikalnoto pomestuvawe od dejstvoto na tovarot vo sekoja to~ka po dol`inata na gredata, mo`e da se presmeta spored izrazot:
y=
q ( x 4 2Lx 3 + L3 x ) 24EI
q
Da se razvie vo Tajlorov red funkcijata y(x), so zemawe tri ~lena, ako e zadadeno:
q=20 kN/m; L=8,0 m; E=3.16*107 kN/m2; I=0.0054 m4; x0=2.0 m; h=1.0; h=2; h=3; h=4;
Da se tabeliraat, da se nacrtaat rezultatite i da se sporedat so to~noto re{enie.
h 2 '' y( x 0 + h ) = y( x 0 ) + hy' ( x 0 ) + y ( x 0 ) 2!
Funkcijata gi ima slednive izvodi i vrednosti na izvodite vo po~etnata to~ka x0=2: y(x0) =y(2)= -20*(x4-16*x3+64*8*x)/(24*3.16*107*0.0054)= -0.004454
NUMERI^KI METODI
Voved
17
h2 2
y(2+h)=y(2+1)=y(3)=-0.004454 - 0.0017*1.0 + 0.0007*(1.0)2/2= -0.0058 y(2+h)=y(2+2)=y(4)=-0.004454 - 0.0017*2.0 + 0.0007*(2.0)2/2= -0.00645 y(2+h)=y(2+3)=y(5)=-0.004454 - 0.0017*3.0 + 0.0007*(3.0)2/2= -0.0064 y(2+h)=y(2+4)=y(6)=-0.004454 - 0.0017*4.0 + 0.0007*(4.0)2/2= -0.00565
aps. Gre{ka 0.00000 -0.00002 -0.00020 -0.00062 -0.00120
x 2 3 4 5 6
h 0 1 2 3 4
yT
NUMERI^KI METODI
18
Voved
y=
q ( x 4 2Lx 3 + L3 x ) 24EI
q
y( x 0 + h ) = y( x 0 ) + hy (1) ( x 0 ) +
h 2 ( 2) h 3 ( 3) h 4 ( 4) y (x 0 ) + y (x 0 ) + y (x 0 ) 2! 3! 4!
y(x0) =y(2)= -20*(x4-16*x3+64*8*x)/(24*3.16*107*0.0054)= -0.004454 y(x0) =y'(2)= -20*(4x3-16*3*x2+64*8)/(24*3.16*107*0.0054)= -0.0017 y(x0)=y''(2)= -20*(12x2-16*6*x)/(24*3.16*107*0.0054)= 0.0007 y(x0)=y''(2)= -20*(24x-16*6)/(24*3.16*107*0.0054)= 0.00023 yIV(x0)= yIV (2)= -20*(24)/(24*3.16*107*0.0054)= -0.00012
Aproksimacija od treti red (4 ~lena od redot): h 2 (2) h3 y( x 0 + h ) = y( x 0 ) + hy (1) ( x 0 ) + y ( x 0 ) + y ( 3) ( x 0 ) 2! 3! 2 h h3 y(2 + h ) = 0.004454 0.0017 h + 0.0007 + 0.00023 2 6! Aproksimacija od ~etvrti red (5 ~lena od redot):
y( x 0 + h ) = y( x 0 ) + hy (1) ( x 0 ) + h 2 (2) h 3 ( 3) h 4 ( 4) y (x 0 ) + y (x 0 ) + y (x 0 ) 2! 3! 4! h2 h3 h4 y(2 + h ) = 0.004454 0.0017 h + 0.0007 + 0.00023 0.00012 2 6! 24
x 2 3 4 5 6
h 0 1 2 3 4
NUMERI^KI METODI
Voved
19
Od grafikot se gleda deka aproksimacijata od IV red se poklopuva so to~noto re{enie a to go poka`uvaat i gre{kite vo poslednata kolona od prethodnata tabela.
NUMERI^KI METODI
20
Interpolacija
2. INTERPOLACIJA
Neka e dadena tabela na vrednostite na funcijata f(x) za argumenti x koi mo`at da bidat na ednakvi ili na proizvolni rastojanija. Vo in`enerskata praktika, pri problemite povrzani so eksperimentalni ispituvawa, vakviot tabelaren na~in na pretstavuvawe na podatocite e redovna pojava. ^esto pati se bara da se opredeli vrednosta na funkcijata f(x) za argumentot x koj ne se nao|a vo tabelata ili, pak, da se opredeli vrednosta na argumentot za dadena vrednost na f(x). Vo slu~aite koga funkcijata f(x) e dadena so analiti~ki izraz (duri i koga e taa dosta ednostavna), kako i pri dadeni podatoci od eksperimentite, za re{avawe na gorespomenatata zada~a, naj~esto se koristat tabeliranite vrednosti. Toa zna~i deka niz tabeliranite vrednosti se provlekuva nekoja funkcija koja e ednostavna za presmetuvawe. Ako vrednosta na argumentot za koj se bara vrednosta na funkcijata e vo oblasta na tabeliranite argumenti, metodot se vika interpolacija, a ako e nadvor od taa oblast, toga{ se raboti za ekstrapolacija. Naj~esto se koristat dva tipa interpolacii, grafi~ka i polinomna. Grafi~ka interpolacija Pri upotrebata na ovoj metod, tabeliranite podatoci se crtaat na milimetarska hartija i niz niv se provlekuva kriva koja minuva niz site to~ki. Za opredelena vrednost na argumentot se ot~ituva soodvetnata vrednost na krivata koja ja pretstavuva baranata vrednost na funkcijata. Ovoj metod ima nedostatoci vo smisla na ograni~ena to~nost pri nanesuvaweto i ~itaweto na podatocite (obi~no 0,1 %), kako i pri povlekuvaweto na krivata niz tabeliranite vrednosti. Grafi~kiot metod e pogoden ako podatocite se dobieni od grafici, dodeka vo drugite slu~ai se koristi polinomnata interpolacija koja e mnogu pogodna pri koristeweto na kompjuterite. Polinomna interpolacija Ovde problemot mo`e da se podeli na dva dela: nao|awe pribli`en izraz na funkcijata f(x) koja e zadadena samo so tablica od vrednosti
NUMERI^KI METODI
Interpolacija
21
presmetuvawe na pribli`nata vrednost na funkcijata f(x) za baraniot argument koj ne se nao|a vo tabelata.
Najednostavna formulacija na prviot del od problemot e slednava: vo opredelen interval dadeni se n+1 to~ki, x0,x1,.....xn (koi se vikaat jazli na interpolacijata), kako i vrednostite na nekoja fukcija f(x) vo tie to~ki, taka {to: f(x0)=y0; f(x1)=y1 f(x2)=y2; ....... f(xn)=yn Treba da se opredeli funkcijata (x) koja se sovpa|a so funkcijata f(x) vo dadenite to~ki, odnosno minuva niz to~kite (x0,y0), (x1,y1),....... (xn,yn). Niz ovie to~ki mo`e da se provle~at bezbroj krivi. Za da bide zada~ata ednozna~na namesto proizvolna funkcija (x) se bara polinom P(x), so stepen ne pogolem od n taka {to: P(x0)=y0; P(x1)=y1 P(x2)=y2; ....... P(xn)=yn. To~kite so apscisi x0,x1,.....xn se vikaat jazli na interpolacijata, rastojanieto pome|u dva sosedni jazli se vika ~ekor na interpolacijata, a P(x) e interpolacionen polinom. Ako interpolacijata se vr{i so polinom od prv stepen, se raboti za linearna interpolacija, a ako polinomot e od vtor stepen, za kvadratna interpolacija, it.n. x
0 1 2 3 4 5
y
-3 0.7 3.8 6.3 8.2 9.5 0.55 3.25
f(x)
-3 0.7 3.8 6.3 8.2 9.5 -3 -0.89075 6.83125
12 10 8 6 4 2 -0.89075 0 -2 -4 0 1 y
Interpolacija
f(x)
xarg= xarg=
6.83125
Linearna interpolacija Pri interpolacijata mo`e da se postavi zada~a, da se opredeli vrednosta na f (x) za argument x koj ne se nao|a vo tabelata, a le`i pome|u argumentite xk i xk+1. Geometriski, linearnata interpolacija zna~i deka funkcijata f(x) treba da se zameni so pravata {to minuva niz to~kite (xk,yk) i (xk+1,yk+1).
NUMERI^KI METODI
22
Interpolacija
y yk+1
B f(x) (x) C A
y k +1 y k
y
yk
y yk
B
x x k C
x k +1 x k
x xk+1
xk
Sl. 1 Linearna interpolacija Vrednosta na f(x)=y koja odgovara na argumentot x lesno se dobiva od sli~nosta na triagolnicite CCA i BBA na slika 1:
y y k y k +1 y k = x x k x k +1 x k
od kade {to sledi:
y = yk +
x xk ( y k +1 y k ) x k +1 x k
Lagran`ova interpolacija Vo mnogu slu~ai linearnata interpolacija ne mo`e da ja dade baranata to~nost, poradi {to e potrebno da se koristi interpolacionen polinom od povisok red. Ako se dadeni n+1 to~ki (x0,y0), (x1,y1),....... (xn,yn), postaveni na razli~ni me|usebni rastojanija, toga{, za da go dobieme polinomot P(x)=a0+a1x+ +a1x2......anxn koj minuva niz niv, vo nego treba da gi zamenime posledovatelno site to~ki, pri {to }e dobieme sistem linearni ravenki po nepoznatite koeficienti a0,a1......an.
n y 0 = a 0 + a 1x 0 + .............a n x 0 n y1 = a 0 + a 1 x 1 + .............a n x1 . . y n = a 0 + a 1 x n + ............a n x n n
Ovoj sistem ima edinstveno re{enie so koe se opredeluvaat baranite koeficienti na polinomot P(x). So ogled na toa deka ovoj na~in bara obemni matemati~ki operacii, polinomot P(x) }e go opredelime na drug na~in.
NUMERI^KI METODI
Interpolacija
23
Najprvo }e opredelime polinom Lk(x), takov {to: Lk(xm)=0 za km i Lk(xm)=1 za k=m Ovie uslovi mo`at da se napi{at vo oblik:
1 L k ( x m ) = km 0
za k=m
za km
kade {to km e Kronekerov simbol. Bidej}i baraniot polinom ima vrednosti nuli vo to~kite so argumenti x0,x1, x2.... xk-1, xk+1....xn, toj ima oblik:
L k ( x ) = C k ( x x 0 )( x x 1 ).........( x x k 1 )( x x k +1 ).......( x x n )
kade {to Ck pretstavuva koeficient. Ako vo ovaa formula stavime x=xk , vrednosta na polinomot Lk(x) treba da bide ednakva na edinica.
C k ( x k x 0 )( x k x 1 ).........( x k x k 1 )( x k x k +1 ).......( x k x n ) = 1
od kade {to dobivame:
Ck =
1 ( x k x 0 )( x k x1 ).........( x k x k 1 )( x k x k +1 ).......( x k x n )
( x x 0 )( x x 1 ).........( x x k 1 )( x x k +1 ).......( x x n ) ( x k x 0 )( x k x 1 ).........( x k x k 1 )( x k x k +1 ).......( x k x n )
L k (x) =
kade {to k=1,2,.......n Izrazot za Lk(x) pretstavuva n krivi koi za x=xk imaat vrednost 1, a vo drugite jazolni to~ki imaat vrednost nula. Koga se ve}e opredeleni ovie polinomi Lk(x), koi se vikaat Lagran`ovi polinomi, baraniot interpolacionen polinom go dobiva sledniov oblik:
P( x ) = y 0 L 0 ( x ) + y1L1 ( x ) + y 2 L 2 ( x )....... + y n L n ( x ) = y k L k ( x )
k =1
Ova e interpolaciona formula na Lagran`. Taa lesno mo`e da se interpretira so pomo{ na narednata slika, na koja e ilustriran
NUMERI^KI METODI
24
Interpolacija
slu~ajot za n=4. Sekoj polinom Lk(x) mo`e da se razgleduva kako influentna linija, so ordinati edinica vo to~kite x=xk i nula vo to~kite x=xm za mk. Sumata na influentnite linii, pomno`eni so soodvetnite ordinati yk, go dava Lagran`oviot interpolacionen polinom pretstaven so poslednata ravenka.
y0 x0 1 x1
y1 x2
y2 x3
y3 xn
yn
L0(x) L1(x)
1 1
L2(x)
Sl. 2 Lagran`ovi polinomi za n=4 (prika`ani se samo polinomite L0(x), L1(x) i L2(x)) Ovoj polinom za ilustracijata na slika 2, se dobiva vo oblik:
P( x ) = y 0 L 0 ( x ) + y1L1 ( x ) + y 2 L 2 ( x ) + y 3 L 3 ( x ) + y 4 L 4 ( x )
Za slu~aj n=1, Lagran`oviot interpolacionen polinom minuva niz dve to~ki i pretstavuva linearna interpolacija.
P( x ) = y 0 L 0 ( x ) + y1L1 ( x )
Polinomite L0(x) i L1(x) se:
L1 ( x ) =
x x0 ; x1 x 0
L 0 (x) =
x x1 x 0 x1
P( x ) = y 0
x x0 x x1 + y1 x1 x 0 x 0 x1
NUMERI^KI METODI
Interpolacija
25
P( x ) = y 0 = y0 + y0 = y0 +
x x0 x x0 x x1 x x1 + y1 + y0 y0 = y0 + y0 ( 1) + y 1 = x 0 x1 x1 x 0 x 0 x1 x1 x 0 x x1 x 0 + x1 x x0 x x0 x x0 + y1 = y0 y0 + y1 = x 0 x1 x1 x 0 x1 x 0 x1 x 0
x x0 ( y1 y 0 ) x1 x 0
{to e identi~no so prethodno dobienata ravenka za linearna interpolacija. Za n=2 (zemame 3 to~ki od tabelata) imame kvadratna interpolacija i polinomot e:
P( x ) = y 0
( x x 0 )( x x 2 ) ( x x 0 )( x x 1 ) ( x x 1 )( x x 2 ) + y2 + y1 ( x 0 x 1 )( x 0 x 2 ) ( x 1 x 0 )( x 1 x 2 ) ( x 2 x 0 )( x 2 x 1 )
Primer 1. Tabli~no e zadadena nekoja funkcija. Koristej}i ja formulata za linearna interpolacija, da se interpolira vrednosta na funkcijata za x=2.2.
x = 2,2
y = yk +
k
x y 2 5,848
k+1
2,3 6,127 2,5 6,3
y = 5,848 + y = 6,034
Primer 2. Da se opredeli polinom od tret stepen koj minuva niz dadenite to~ki:
k xk yk
0 0,0 1,0
1 1,0 1,0
2 2,0 2,0
3 4,0 5,0
NUMERI^KI METODI
26
Interpolacija
( x x 1 )( x x 2 )( x x 3 ) ( x 1)( x 2)( x 4) ; y0 = 1 = ( x 0 x 1 )( x 0 x 2 )( x 0 x 3 ) (0 1)(0 2)(0 4) ( x x 0 )( x x 2 )( x x 3 ) ( x 0)( x 2)( x 4) ; y1 = 1 = ( x 1 x 0 )( x 1 x 2 )( x 1 x 3 ) (1 0)(1 2)(1 4) ( x x 0 )( x x 1 )( x x 3 ) ( x 0)( x 1)( x 4) ; y2 = 2 = ( x 2 x 0 )( x 2 x 1 )( x 2 x 3 ) (2 0)(2 1)(2 4) ( x x 0 )( x x 1 )( x x 2 ) ( x 0)( x 1)( x 2) ; y3 = 5 = ( x 3 x 0 )( x 3 x 1 )( x 3 x 2 ) (4 0)(4 1)(4 2)
So zamena na ovie izrazi vo Lagran`oviot interpolacionen polinom od III red, se dobiva funkcijata so koja e aproksimirana tabli~no zadadenata funkcija:
P ( x ) = y 0 L 0 ( x ) + y1 L1 ( x ) + y 2 L 2 ( x ) + y 3 L 3 ( x ) P( x ) = 1 ( x 3 + 9 x 2 8x + 12) 12
Primer 3. Dadena e slednava tabela: k xk yk 0 1,0 1,0 1 2,0 3,0 2 5,0 6,0 3 9,0 10,0
3 (6 2)(6 5)(6 9) ; L 0 (6,0) = ; y 0 = 1 8 (1 2)(1 5)(1 9) (6 1)(6 5)(6 9) 5 ; L1 (6,0) = ; y1 = 3 L1 ( x ) = (2 1)(2 5)(2 9) 7 5 (6 1)(6 2)(6 9) ; L 2 (6,0) = ; y 2 = 6 L 2 (x) = 4 (5 1)(5 2)(5 9) 5 (6 1)(6 2)(6 5) ; L 3 (6,0) = ; y 3 = 10 L 3 (x) = 56 (9 1)(9 2)(9 5) 5 5 5 3 = 6,625 P(6,0) = 1 + 3 ( ) + 6 + 10 56 4 7 8 L 0 (x) =
NUMERI^KI METODI
Interpolacija
27
Obratna interpolacija Se postavuva obratna zada~a: dadeni se vrednostite za f(x), f(xk)=yk, vo to~kite x0,x1,.....,xn. Za dadeno y* se bara x*, za koja e zadovoleno f(x*)=y* (obi~no y*yk kade {to k=0,1,....,n). Zada~ata se sveduva na opredeluvawe interpolacionen polinom P(y) za inverznata funkcija (y) na f(x). t.e. se odreduva P(y) taka {to P(yk)=xk; k=0,1,....,n. (zabele{ka: koga xk se na ekvidistantni rastojanija, soodvetnite vrednosti yk, obi~no, ne se rasporedeni na isti rastojanija, pa zatoa se koristi interpolacionata formula na Lagran`). Primer 4. Zadadena e funkcijata y=f(x) so tabela 1. Da se najde za koja vrednost na x se dobiva y=3,7 . Tabela 2 Tabela 1 k 0 1 2 k 0 1 2 xn 3,0 4,06 5,0 x 1,1 1,4 1,6 yn 1,1 1,4 1,6 y 3,0 4,06 5,0 Se formira nova tabela (tabela 2) vo koja x i y si gi menuvaat mestata. Koristej}i ja ovaa tabela, barame kolku e yn(xn=3,7). Se smeta deka funkcijata f(x) e strogo monotona vo razgleduvaniot interval, pa zada~ata }e ima edinstveno re{enie. Za da ne gi menuvame oznakite vo interpolacionata formula, xn i yn gi razgleduvame kako x i y na nekoja nova funcija. Se primenuva Lagran`ovata interpolaciona formula za kvadratna interpolacija (bidej}i se dadeni 3 to~ki vo tabelata), zna~i za n=2, vo koja zamenuvame x=3,7.
y = P( x ) = y 0 L 0 (3,7) + y1 L1 (3,7) + y 2 L 2 (3,7) y= (3,7 4,06)(3,7 5) (3,7 3)(3,7 5) (3,7 3)(3,7 4,06) 1,1 + 1,4 + 1,6 = (3 4,06)(3 5) (4,06 3)(4,06 5) (5 3)(5 4,06) y = 1,3051
Zna~i, za x*=1,3051 f(x*)=3,7. Mo`e da se postavi zada~a za opredeluvawe koren na nekoja tabli~no zadadena funkcija. Pritoa mo`e da se primeni obratnata Lagran`ova interpolacija i da se opredeli za koja vrednost na argumentot funkcijata ima vrednost ednakva na nula.
NUMERI^KI METODI
28
Interpolacija
Kone~ni razliki Neka e dadena diskretna funkcija, odnosno kone~no mno`estvo na argumenti xk i soodvetnite vrednosti na funkcijata f(xk)=yk, pri {to argumentite se na ednakvi me|usebni rastojanija xk+1-xk=h.
y0 x0
y1 x1
y2 x2
yn xn
Razlikite na vrednostite yk se ozna~uvaat so yk=yk+1-yk i se vikaat prvi razliki ili kone~ni razliki od I red. Razlikite pak od prvite kone~ni razliki se obele`uvaat so: 2yk= (yk)= yk+1- yk= (yk+2-yk+1)- (yk+1-yk)= yk+2-yk+1- yk+1+yk= yk+2-2yk+1+yk 2yk= yk+2-2yk+1+yk i se vikaat kone~ni razliki od II red. Voop{to, kone~nite razliki od n-ti red se definiraat so: nyk= n1 yk+1- n1 yk Koristej}i razli~ni mno`estva na to~ki, kone~nite razliki vo to~ka mo`e da se izrazat na tri na~ina: kone~ni razliki nazad, kone~ni razliki napred i centralni kone~ni razliki. Kone~ni razliki nazad To~kite {to se koristat za izrazuvawe na kone~nite razliki se vo red koj se namaluva vo odnos na to~kata {to se razgleduva. Na primer, za 5 to~ki: prva razlika yn=yn-yn-1 yn-1=yn-1-yn-2 yn-2=yn-2-yn-3 yn-3=yn-3-yn-4 yn-4=yn-4-yn-5 vtora razlika 2yn= yn- yn-1= (yn-yn-1) (yn-1-yn-2)= yn-2yn-1+yn-2 2yn-1= yn-1- yn-2= (yn-1-yn-2) (yn-2-yn-3)= yn-1-2yn-2+yn-3
NUMERI^KI METODI
Interpolacija
29
2yn-2= yn-2- yn-3= (yn-2-yn-3) (yn-3-yn-4)= yn-2-2yn-3+yn-4 2yn-3= yn-3- yn-4= (yn-3-yn-4) (yn-4-yn-5)= yn-3-2yn-4+yn-5 treta razlika: 3yn= 2yn- 2yn-1= (yn-2yn-1+yn-2)-(yn-1-2yn-2+yn-3)= yn-3yn-1+3yn-2 -yn-3 3yn-1= 2yn-1- 2yn-2= (yn-1-2yn-2+yn-3)-(yn-2-2yn-3+yn-4)= yn-1-3yn-2+3yn-3 -yn-4 3yn-2= 2yn-2- 2yn-3= (yn-2-2yn-3+yn-4)-(yn-3-2yn-4+yn-5)= yn-2-3yn-3+3yn-4 -yn-5 ~etvrta razlika: 4yn= 3yn-3yn-1=(yn-3yn-1+3yn-2 -yn-3)-(yn-1-3yn-2+3yn-3 -yn-4)= =yn-4yn-1+6yn-2 -4yn-3+yn-4 4yn-1= 3yn-1- 3yn-2= (yn-1-3yn-2+3yn-3 -yn-4)-(yn-2-3yn-3+3yn-4 -yn-5)= =yn-1-4yn-2+6yn-3 -4yn-4+yn-5 petta razlika: 5yn = 4yn-4yn-1=(yn-4yn-1+6yn-2 -4yn-3+yn-4)-( yn-1-4yn-2+6yn-3 -4yn-4+yn-5) = yn-5yn-1+10yn-2 -10yn-3+5yn-4 -yn-5 Op{tiot izraz za razlikite e daden vo narednata tabela. Na levata strana na tabelata se dadeni kone~nite razliki, a na desnata strana koeficientite so koi se mno`at soodvetnite kone~ni razliki. Razlikite yn,.....,5yn se dobivaat so sumirawe na proizvodite na koeficientite po ovie razliki ili na soodvetnite ordinati yn, yn1.....,yn-5.
y yn-5 yn-4 yn-3 yn-2 yn-1 yn 2y yn-4 yn-3 yn-2 yn-1 yn 3y 4y 5y yn 2yn 3yn 4yn 5yn -1 5 -10 10 -5 1
3yn-2 yn-1 yn
3 3
1 4yn-1 4yn -1 1 -1 1 -2 1 3 -3 1 -4 6 -4 1
5yn
NUMERI^KI METODI
30
Interpolacija
Kone~ni razliki napred To~kite {to se koristat za izrazuvawe na kone~nite razliki se vo red koj se zgolemuva vo odnos na to~kata {to se razgleduva. Tabelarnata forma na ovie razliki e dadena na slednata slika.
y yn yn+1 yn+2 yn+3 yn+4 yn+5 2y yn yn+1 yn+2 yn+3 yn+4 3y 4y 5y yn -1 1 4yn 4yn+1 2yn 1 -2 1 3yn -1 3 -3 1 4yn 1 -4 6 -4 1 5yn -1 5 -10 10 -5 1
yn yn+1 yn+2
3 3
5yn
Centralni razliki Koga to~kite se simetri~no postaveni vo odnos na to~kata n, imame centralni razliki. Neka se poznati vrednostite na funkcijata f(x) vo to~kite n-5, n-4, n-3, n-2, n-1, n, n+1, n+2, n+3, n+4, n+5, koi se na ednakvi me|usebni rastojanija h, kako i vrednostite na ovaa funkcija vo sredinite na intervalite h:
n-5
n-9/2
n-4
n-7/2
n-3
n-5/2
n-2 h h
n-1
n-1/2
n h h
n+1
n +1/2 n+3/2
n+2 h h
n+3
n+7/2
n+4 n+5
n+9/2
n-3/2
n+5/2
NUMERI^KI METODI
Interpolacija
31
Centralnite kone~ni razliki se izveduvaat od razlikite na to~kite n+1 i n-1. Na primer: prva razlika yn=( yn+1- yn-1)/2=-0.5 yn-1+0.5 yn+1
vtora razlika yn+1/2= yn+1- yn yn-1/2 = yn- yn-1 2yn = yn+1/2- yn-1/2=(yn+1- yn)- (yn- yn-1)= yn-1-2yn+yn+1 treta razlika 2yn+1= yn-2yn+1+yn+2 2yn-1 = yn-2-2yn-1+yn 3yn =(2yn+1- 2yn-1)/2=((yn-2yn+1+yn+2)- (yn-2-2yn+1+yn))/2=(yn-2+2yn-1-2yn+1+ yn+2)/2 = - 0.5 yn-2+ yn-1- yn+1+0.5 yn+2 Kone~nite razliki koi se prethodno izvedeni, mnogu ~esto se koristat za interpolacionite formuli na Wutn, za interpolacija vo intervalot desno od to~kata x0 i levo od to~kata xn. Wutnovi interpolacioni polinomi Wutnov polinom za interpolacija napred
P( x ) = y 0 + +
n y 0 ( x x 0 ) ( x x 1 )......( x x n 1 ) n!h n
n y 0 u (u 1) (u 2)....(u n 1) n!
Primer 1. Da se opredeli polinom od tret stepen koj minuva niz ~etiri dadeni to~ki. k xk yk 0 4 1 1 6 3 2 8 8 3 10 20
NUMERI^KI METODI
32
Interpolacija
k 0
2y0 2y1 3y0
x 4 6 8 10
y 1 3
y 2
2y
3y0
1 2 3
3 5 4 7 12
8 20
P( x ) =
P( x ) = y 0 + +
y 0 2 y 0 (x x 0 ) + ( x x 0 ) ( x x 1 ) + ....... + h 2!h 2
n y 0 ( x x 0 ) ( x x 1 )......( x x n 1 ) n!h n
P( x ) = y 0 + +
y 0 2 y 0 3 y 0 u+ u (u + 1) + u (u + 1)(u + 2) + ....... + 1! 2! 3!
Primer 2. Da se opredeli polinom od tret stepen koj minuva niz dadeni to~ki. k xk yk -3 4 1 -2 6 3 -1 8 8 0 10 20
Interpolacija
33
y-3 y-2
k
y-2 y-1 y-1
2
x 4 6 8 10
y 1
2y
3y
0
-3
y0
3
2 -2 -1 0 3 5 8 12 20 7 3 4
y-1 y 0 y0
2y0
12 7 4 ( x 10) + ( x 10) ( x 8) + ( x 10) ( x 8)( x 6) 2 2 2 1 2 3 2 1 23 So sreduvawe se dobiva istiot polinom od treti red kako i so Wutnovata interpolaciona formula napred. P( x ) = 20 +
P(x)=0.0833 x3 - 1.125x2 + 5.917x - 9.458
NUMERI^KI METODI
34
Pribli`no diferencirawe
3. PRIBLI@NO DIFERENCIRAWE Pri re{avaweto na prakti~ni zada~i od in`enerstvoto, ~esto se postavuva zada~a da se opredelat izvodi na funkcijata f(x) koja e zadadena grafi~ki ili so tabela na vrednosti vo nekolku to~ki. Isto taka, vo slu~ai koga funkcijata e zadadena vo matemati~ka forma so slo`en analiti~ki izraz, poradi toa {to neposrednoto diferencirawe e slo`eno, se pristapuva kon numeri~ko diferencirawe. Osnovnata definicija za diferenciraweto e:
y ' ( x ) = lim
h 0
y( x + h ) y( x ) h
i od nea podocna }e se dobijat nekolku formuli za numeri~ko diferencirawe. Grafi~ko diferencirawe Poznato e deka izvodot na nekoja funkcija vo nekoja to~ka x , koja e grafi~ki pretstavena, mo`e da se interpretira kako naklon na tangentata na funkcijata vo taa to~ka. y'( x )=[(x2)-y(x1)]/(x2- x1) y'( x )=tg
x x1 x x2
Postapkata za grafi~ko diferencirawe e sledna: se crta grafik na funkcijata i vo to~kata so abscisa x se povlekuva tangenta na krivata. Paralelno so tangentata se povlekuva prava koja ja se~e krivata vo to~kite (x1,y1) i (x2,y2), preku koi se opredeluva tangensot na agolot {to tangentata go zaklopuva so oskata x.
y ' (x) =
y( x 2 ) y( x 1 ) y 2 y 1 = x 2 x1 x 2 x1
To~nosta na grafi~koto diferencirawe e ograni~ena so to~nosta so koja mo`e da se ~ita grafikot i so to~nosta na povlekuvaweto na tangentata.
NUMERI^KI METODI
Pribli`no diferencirawe
35
Diferencirawe so pomo{ na kone~ni razliki Pri re{avawe na in`enerski problemi, ~esto e potrebno numeri~ki da se procenat vrednostite na izvodite na nekoja funkcija. Pritoa postojat dva pristapa: funkcijata e poznata no izvodite ne mo`e da bidat presmetani analiti~ki funkcijata e zadadena tabli~no, a izvodite se presmetuvaat analiti~ki, so diferencirawe na interpoliranata funkcija koja pribli`no ja pretstavuva stvarnata funkcija. Vo prviot pristap, ako funkcijata e poznata a izvodot ne mo`e da se presmeta analiti~ki, istiot mo`e da se proceni kako:
dy f ( x ) f ( x + x ) f ( x ) = x dx x
Zna~i, za da ja presmetame vrednosta na prviot izvod vo to~ka x, f(x), potrebno e da ja presmetame vrednosta na funkcijata vo dve to~ki, x i x+x, i nivnata razlika da se podeli so ~ekorot x. Ovoj pristap e poznat kako diferencirawe so pomo{ na kone~ni razliki napred. Izvodot mo`e da se presmeta i so kone~ni razliki nazad:
dy f ( x ) f ( x ) f ( x x ) = dx x x
Isto taka, izvodot mo`e da se presmeta i so kone~ni razliki na vrednostite vo to~kite koi se na rastojanie 2x.
dy f ( x ) f ( x + x ) f ( x x ) = dx 2 x 2x
Za mnogu funkcii so pove}e promenlivi, metodot so dvoen ~ekor mo`e da se dobijat poto~ni rezultati otkolku so kone~nite razliki napred ili nazad. Primer 1. Podatocite dadeni vo narednata tabela pretstavuvaat vrednosti na tretiot stepen od brojot x. Da se aproksimira vrednosta na prviot izvod za x=2, koristej}i kone~ni razliki napred, nazad i {ema na kone~ni razliki so dvoen ~ekor. Rezultatot da se sporedi so to~noto re{enie. x 0 1 2 3 4 f(x)=x3 0 1 8 27 64
NUMERI^KI METODI
36
Pribli`no diferencirawe
f (2) f ( x + x ) f ( x ) 27 8 19 = = 19 = = x x 3 2 1
Kone~ni razliki nazad:
f ( 2) f ( x ) f ( x x ) 8 1 7 = = = =7 x x 2 1 1
f ( 2) f ( x + x ) f ( x x ) 27 1 26 = = = = 13 2 x 2 x 3 1 2
To~na vrednost:
df (2) = 3 2 2 = 12 dx
Sporedba na rezultatite so to~noto re{enie:
x f(2) %gre{ka
k. r. napred 19 58.33
k. r. nazad 7 41.67
dvoen ~ekor 13 8
to~no 12 /
Primer 2. Da se opredeli polinom od vtor red koj pominuva niz dadenite to~ki, a potoa, koristej}i go toj polinom, da se aproksimira prviot izvod na tabli~no zadadenata funkcija za x=2. Re{enieto da se sporedi so rezultatite od primer 1 i so to~noto re{enie.
x f(x)
1 1
2 8
3 27
P( x ) = a 0 + a 1 x + a 2 x 2
Nepoznati se tri koeficienti na polinomot, zna~i potrebno e da sostavime i da re{ime sistem od 3 ravenki so 3 nepoznati. Sistemot
NUMERI^KI METODI
Pribli`no diferencirawe
37
P( x i ) = a 0 + a 1 x i + a 2 x i2
2 2 P( x 0 ) = a 0 + a 1 x 0 + a 2 x 0 P( x 1 ) = a 0 + a 1 x 1 + a 2 x 1
1 = a 0 + a 1 1 + a 2 12 1 = a 0 + a1 + a 2
8 = a 0 + a1 2 + a 2 22 8 = a 0 + 2a 1 + 4a 2
P( x 2 ) = a 0 + a 1 x 2 + a 2 x 2 2 27 = a 0 + a 1 3 + a 2 3 2 27 = a 0 + 3a 1 + 9a 2
Sistemot ravenki od koj }e gi opredelime nepoznatite koeficienti na polinomot a1, a2 i a3, e:
a 0 + a1 + a 2 = 1
a 0 + 2a 1 + 4a 2 = 8 a 0 + 3a 1 + 9a 2 = 27
Vo matri~na forma mo`e da se napi{e:
1 1 1 a 0 1 1 2 4 a = 8 1 1 3 9 a 2 27
Re{enie so inverzna matrica na sistemot ravenki:
a 0 1 1 1 1 a 1 = 1 2 4 8 a 1 3 9 27 2
1 1 6 3 a 0 3 a 1 = 2.5 4 1.5 8 = 11 a 0.5 1 0.5 27 6 2
Polinomot od II red koj pominuva niz dadenite tri to~ki e:
P2 ( x ) = 6 11x + 6x 2
Prviot izvod za x=2 }e go opredelime so direktno diferencirawe na polinomot P2(x).
P' ( x ) = 11 + 12x
P' (2) = 11 + 12 2 = 24 11 = 13
NUMERI^KI METODI
38
Pribli`no diferencirawe
x f(2) %gre{ka
k. r. napred 19 58.33
k. r. nazad 7 41.67
to~no 12 /
Tabelata na kone~ni razliki, isto taka, mo`e da se koristi za opredeluvawe vrednosti na izvodi na tabli~no zadadena funkcija.
Na primer, vo narednata tabela na kone~ni razliki, kolonata f mo`e da se koristi za procena na vrednosta na prviot izvod vo nekoja to~ka, Isto taka, vrednostite vo kolonata 2f mo`e da se koristat za opredeluvawe na vtoriot izvod na tabli~no zadadenata funkcija vo nekoja to~ka, itn.
x x x+x
f(x) f(x)
2 f
x+2x
2f(x+x)= f(x+2x)f(x+x)
x+3x
x+4x
x+5x .
f(x+5x) . .
Za da se opredeli prviot izvod vo to~kata x, se koristi kone~nata razlika f(x); toa e kone~na razlika od I red, a se nao|a vo redot pod dadenata vrednost za x. Na toj na~in se opredeluva izvodot so kone~ni razliki napred.
NUMERI^KI METODI
Pribli`no diferencirawe
39
So koristewe na kone~nite razliki koi se nao|aat vo redot nad dadenata vrednost na x, se opredeluva izvodot so kone~ni razliki nazad. Prose~nata vrednost od ovie dve kone~ni razliki se koristi za opredeluvawe na prviot izvod po metodot so dvoen ~ekor. Na sli~en na~in se opredluvaat vrednostite za vtoriot izvod, pri {to se koristat vrednostite od kolonata 2f.
Primer 3. Za dadeniot set na podatoci, da se proceni vrednsta na prviot izvod za x=11, so koristewe tabela na kone~ni razliki po metodite napred, nazad i so dvoen ~ekor. Isto taka, da se opredeli vrednosta na vtoriot izvod za x=11 so kone~ni razliki napred.
x f(x)
10 1000
11 1331
12 1728
12 2197
14 2744
x 10 11 12 13 14
f(x) 1000
f 331
2 f
3 f
4 f
66 6 72 6 78 0
So kone~ni razliki napred, za x=11 se zema kone~nata razlika f=397 koja se nao|a vo redot pod redot x=11. Spored toa, vrednsta na prviot izvod }e bide:
So kone~ni razliki nazad, za x=11 se zema kone~nata razlika f=331 koja se nao|a vo redot nad redot x=11. Vrednosta na prviot izvod }e bide:
NUMERI^KI METODI
40
Pribli`no diferencirawe
So kone~ni razliki so dvoen ~ekor, za x=11 se zema srednata vrednost od prethodnite dve kone~ni razliki, pa izvodot }e bide:
Vrednosta na vtoriot izvod za x=11 po metodot kone~ni razliki napred }e go procenime so kone~nata razlika od II red 2fi+1
To~no re{enie
Ako gi pogledneme vrednostite od tabelata, }e zabele`ime deka toa e funkcijata f(x)=x3. Spored toa, vtoriot izvod }e bide:
f ( x 0 + h ) = f ( x 0 ) + hf (1) ( x 0 ) + + h n (n) f ( x 0 ) + R n +1 n!
h 2 ( 2) h 3 ( 3) f ( x 0 ) + ..... + f (x 0 ) + 2! 3!
kade {to: x=x0+h; h=x-x0=x Vo toj slu~aj, Tajlorovata serija mo`e da se zapi{e kako:
f ( x ) 2 f ( x ) (x ) 2 3 f ( x ) (x ) 3 x + + f ( x + x ) = f ( x ) + ....... x 2! 3! x 2 x 3
NUMERI^KI METODI
Pribli`no diferencirawe
41
Ako Tajlorovata serijata ja prekineme po vtoriot ~len, }e ja dobiveme formulata za diferencirawe so pomo{ na kone~ni razliki:
f ( x + x ) = f ( x ) +
f ( x ) x x
f ( x ) x = f ( x + x ) f ( x ) x f ( x ) f ( x + x ) f ( x ) = x x
Poslednata ravenka dobiena preku Tajlorovata serija e navistina aproksimacija od prv red na formulata za opredeluvawe prv izvod so pomo{ na kone~ni razliki napred. Ako ja prekineme Tajlorovata serija po tretiot ~len (~lenot so vtor izvod), }e dobieme:
f ( x + x ) = f ( x ) +
f ( x ) 2 f ( x ) (x ) 2 x + x 2! x 2
f ( x ) 2 f ( x ) (x ) 2 x = f ( x + x ) f ( x ) x 2! x 2
ili:
f ( x ) f ( x + x ) f ( x ) 2 f ( x ) (x ) 2 = x x x 2 2!x f ( x ) f ( x + x ) f ( x ) 2 f ( x ) x = .........1 x x x 2 2
Poslednata ravenka e aproksimacija od vtor red na formulata za opredeluvawe na prviot izvod vo to~ka x. Kako {to gledame, za ovaa aproksimacija e potrebno poznavawe na vrednosta na vtoriot izvod na funkcijata vo to~ka x. Potreben ni e izraz za opredeluvawe na vtoriot izvod. Ako f(x) e prviot izvod na f(x) vo to~kata x, toga{ aproksimacijata za vtoriot izvod so kone~ni razliki napred e dadena so:
f 2 ( x ) f ' ( x + x ) f ' ( x ) = x x 2
NUMERI^KI METODI
42
Pribli`no diferencirawe
f ( x + 2x ) f ( x + x ) f ( x + x ) f ( x ) f ( x ) f ' ( x + x ) f ' ( x ) x x = = x x x 2
2
f 2 ( x ) f ( x + 2x ) f ( x + x ) f ( x + x ) + f ( x ) = (x ) 2 x 2 f 2 ( x ) f ( x + 2x ) 2f ( x + x ) + f ( x ) = x 2 (x ) 2
Poslednata ravenka ja zamenuvame vo ravenkata 1 i ja dobivame aproksimacijata od II red na prviot izvod:
f ( x ) f ( x + x ) f ( x ) 2 f ( x ) x 2 = = x x 2 x 2 f ( x ) f ( x + x ) f ( x ) f ( x + 2x ) 2f ( x + x ) + f ( x ) x = x x 2 (x ) 2 f ( x ) 2f ( x + x ) 2f ( x ) f ( x + 2x ) + 2f ( x + x ) f ( x ) = x 2x f ( x ) f ( x + 2x ) + 4f ( x + x ) 3f ( x ) = x 2x
Zna~i, vtora aproksimacija na prviot izvod so kone~ni razliki napred, dobiena so Tajlorovata serija e slednava formula:
f ( x ) f ( x + 2x ) + 4f ( x + x ) 3f ( x ) = x 2x
NUMERI^KI METODI
Pribli`no diferencirawe
43
Na sli~en na~in mo`e da se dobie i formula za aproksimacija od vtor red na vtoriot izvod, izvedena od ekspanzijata na Tajlorovata serija. Ponatamu se dadeni i drugi formuli izvedeni od Tajlorovata serija, za prva i za aproksimacija od vtor red na prviot i na vtoriot izvod, so kone~ni razliki napred, nazad i so dvoen ~ekor. Aproksimacija na vrednosti za prviot izvod vo to~ka x
f ( x ) f ( x + x ) f ( x ) = x x
aproksimacija od vtor red
f ( x ) f ( x + 2x ) + 4f ( x + x ) 3f ( x ) = 2x x
f ( x ) f ( x ) f ( x x ) = x x
aproksimacija od vtor red
f ( x ) 3f ( x ) 4f ( x x ) + f ( x 2x ) = 2x x
f ( x ) f ( x + x ) f ( x x ) = 2x x
aproksimacija od vtor red
f ( x ) f ( x + 2x ) + 8f ( x + x ) 8f ( x x ) + f ( x 2x ) = 12x x
NUMERI^KI METODI
44
Pribli`no diferencirawe
2 f ( x ) f ( x + 2x ) 2f ( x + x ) + f ( x ) = x 2 (x ) 2
aproksimacija od vtor red
2 f ( x ) f ( x + 3x ) + 4f ( x + 2x ) 5f ( x + x ) + 2f ( x ) = x 2 (x ) 2
2 f ( x ) f ( x ) 2f ( x x ) + f ( x 2x ) = x 2 (x ) 2
aproksimacija od vtor red
2 f ( x ) 2f ( x ) 5f ( x x ) + 4( x 2x ) f ( x 3x ) = x 2 (x ) 2
2 f ( x ) f ( x + x ) 2f ( x ) + f ( x x ) = x 2 (x ) 2
aproksimacija od vtor red
NUMERI^KI METODI
Pribli`no diferencirawe
45
Primer 4. Dadeni se podatoci za temperaturata na vozduhot T i pritisokot na zasitenata parea es. Koristej}i aproksimacija od II red na prviot izvod, so kone~ni razliki napred, nazad i so dvoen ~ekor, da se proceni vrednosta na gradientot na funkcijata es , pri T=22 C0. to~ka x-2x x-x x x+x x+2x x+3x
T(C0) 20 21 22 23 24 25
f ( x ) f ( x + 2x ) + 4f ( x + x ) 3f ( x ) = x 2 x e S (22) e S (24) + 4e S (23) 3e S (22) = 2(1) x e S (22) 22.37 + 4(21.05) 3(19.82) = = 1.185mm Hg / C 0 x 2
So kone~ni razliki nazad:
f ( x ) 3f ( x ) 4f ( x x ) + f ( x 2x ) = 2x x e S (22) 3e S (22) 4e S (21) + e S (20) = x 2(1) e S (22) 3(19.82) 4(18.65) + (17.53) = = 1.195mm Hg / C 0 x 2
So kone~ni razliki so dvoen ~ekor:
f ( x ) f ( x + 2x ) + 8f ( x + x ) 8f ( x x ) + f ( x 2x ) = 12x x e S (22) e S (24) + 8e S (23) 8e S (21) + e S (20) = x 12(1) e S (22) (22.37) + 8(21.05) 8(18.65) + (17.53) = = 1.1966mm Hg / C 0 x 12(1)
Zna~i, pri T na vozduhot 22C0 , gradientot na krivata na pritisokot na zasitenata parea iznesuva 1.1966 mm Hg/C0.
NUMERI^KI METODI
46
Pribli`no diferencirawe
Numeri~ko diferencirawe po metodot na sekanta Prethodno dadenite aproksimacii na prviot izvod dobieni so ekspanzija na Tajlorovi serii, poznati se i kako formuli za diferencirawe po metodot na sekanta:
1) 2) 3)
y ' (x)
Prvata formula e aproksimacija od I red na prviot izvod so kone~ni razliki napred, vtorata e dobiena so kone~ni razliki nazad, a tretata so centralni kone~ni razliki ili so kone~ni razliki so dvoen ~ekor. Interpretacija na ovie formuli e dadena na slednava slika:
C
xh
h
x
h
x+h
Ravenkata 1) koristi to~ka koja se nao|a desno od dadenata to~ka kade {to se bara izvodot na funkcijata, i naklonot e definiran so linijata AC. Ravenkata 2) koristi to~ka koja se nao|a levo od dadenata to~ka kade {to se bara izvodot na funkcijata, i naklonot e definiran so linijata AB. Kako {to mo`e da se vidi od prethodnata slika, i za dvete aproksimacii ne mo`e da se ka`e deka se zadovolitelno to~ni, odnosno postoi golema razlika pome|u naklonot na tangentata (linijata t), i liniite AC i AB. Podobra aproksimacija se dobiva primenuvaj}i ja ravenkata 3), pri koja naklonot e definiran so linijata BC (sekanta) i e najpribli`en so naklonot na tangentata t, {to mo`e da se zabele`i od slikata. Izrazite za kone~nite razliki mo`e da se opredelat: 1) geometriski, pri {to naklonot na tangentata se zamenuva so naklonot na tetivata 2) so pomo{ na interpolacionite polinomi.
NUMERI^KI METODI
Pribli`no diferencirawe
47
Pri ramnomerno raspredeleni jazli na interpolacijata mo`e da se primenuvaat slednive izrazi za numeri~ko diferencirawe.
tangenta
tetiva
y
u i' u i''
y' (i +1) / 2 =
i-1 h
i h
i+1
y i +1 y i h y y i 1 y' (i 1) / 2 = i h
y i +1 y i y i y i 1 y 2 y i + y i 1 h h y' 'i = = i +1 2 h h2
y IV i = y i 2 4 y i 1 + 6 y i 4 y i +1 + y i + 2 4 h4 y i 2 + 2 y i 1 2 y i +1 + y i + 2 3 2h 3
Koga h0, to~kite se zgusnuvaat i aproksimaciite se stremat kon izvodite na funkcijata vo jazlite, i to~nosta se zgolemuva so namaluvawe na ~ekorot. Primer 5. Dadena e funkcijata y=sinx. Da se aproksimira vrednosta y i y za x=/8, koristej}i gi kone~nite razliki od prv i od vtor red, so ~ekor h=/16. i i-2 i-1 i i+1 i+2 i+3 x 0 3/16 4/16 5/16 /16 2/16 y 0 0.195090 0.382683 0.555570 0.707106 0.831469 To~no re{enie:
y i' 1
y i +1 y i 1 = 2h
1 2 16
NUMERI^KI METODI
48
Pribli`no diferencirawe
y i'' 2 =
y i +1 2 y i + y i 1 = h2
To~no re{enie:
Za opredeluvawe na izvodite na edna funkcija, koja e opredelena so vrednostite f(x0)=y0; f(x1)=y1 f(x2)=y2; ....... f(xn)=yn, vo to~kite xn , (n=1,2,...,n) mo`e da se koristi Wutnoviot interpolacionen polinom P(x). Ovde treba da se naglasi deka, pri opredeluvawe na vrednostite na f(x), treba da se koristat jazolni to~ki na dovolno mali rastojanija za f(x) pome|u niv da nema golem broj ekstremi. Vo sprotivno, mo`e da se slu~i razlikata pome|u P(x) i f(x) da bide mala, a razlikata pome|u nivnite izvodi da e mnogu golema.
f(x)
P(x)
x0
2
x1
x2
3
xn
P( x ) = y 0 + +
y 0 y0 y0 u+ u (u 1) + u (u 1) (u 2) + ...... + 1! 2! 3!
n y 0 u (u 1) ( u 2)....(u n 1) n!
odnosno:
2 y 0 2 3 y 0 3 4 y 0 4 (u 6u 3 + 11u 2 6u ) (u 3u 2 + 2u ) + (u u ) + 24 6 2 kade {to u=(x-xo)/h. ; du/dx=1/h y( x ) = y 0 + y 0 u +
NUMERI^KI METODI
Pribli`no diferencirawe
49
dy dy du 1 dy = = dx du dx h du
y' ( x ) = (3u 2 6u + 2) (2u 3 9u 2 + 11u 3) 1 1 + 4 y 0 + .....] [y 0 + 2 y 0 (u ) + 3 y 0 h 2 6 12 (6u 2 18u + 11) 1 + .....] y' ' ( x ) = 2 [2 y 0 + 3 y 0 (u 1) + 4 y 0 12 h (2u 3) 1 + .....] y' ' ' ( x ) = 3 [3 y 0 + 4 y 0 2 h 1 y IV ( x ) = 4 [4 y 0 + ......] h
Ako funkcijata f(x) e diferencijabilna vo razgleduvaniot interval i se menuva nezna~itelno, a polinomot P(x) dobro ja aproksimira funkcijata f(x), toga{ mo`e da se smeta deka i P(x) dobro ja aproksimira f (x). Pri nao|awe na vrednosta na izvodot na nekoja funkcija vo to~ka x*, za x0 treba da se odbere to~ka vo tablicata koja e najbliska i se nao|a pred x*. Vo slu~aj koga treba da se presmeta izvodot vo nekoj od jazlite na interpolacijata, toga{ formulite se uprostuvaat. Bidej}i sekoja tabli~na vrednost mo`e da se izbere za po~etna, mo`e da stavime deka x=x0, pa imame: u=(x-x0)/h=(x0-x0)/h=0 a od toa: 1 1 1 1 1 y' ( x 0 ) = [y 0 2 y 0 + 3 y 0 4 y 0 + 5 y 0 + ....] h 2 3 4 5 1 11 5 y' ' ( x 0 ) = 2 [2 y 0 3 y 0 + 4 y 0 5 y 0 + ....] 12 6 h 1 1 1 y' ( x 1 ) = [y 0 + 2 y 0 3 y 0 + .....] h 2 6 Primer 6. tabli~no e zadadena nekoja funkcija so ~ekor h=0.1. Znaej}i deka taa e diferencijabilna vo dadeniot interval, da se presmetaat vrednostite na prviot izvod za x=3.5 i za x=3.57. i 0 1 2 3 x 3.5 3.6 3.7 3.8
NUMERI^KI METODI
50
Pribli`no diferencirawe
f ' (3.5) =
Koga se bara izvod na nekoja funkcija za vrednost na argumentot {to se nao|a nazad vo dadenata tabela, toga{ se primenuva interpolacionata formula na Wutn za interpolacija nazad. Primer 7. Tabelarno se dadeni vrednostite y(x)= x za 7 argumenti so ~ekor h=0.05. i 0 1 2 3 4 5 6 x 1.00 1.05 1.10 1.15 1.20 1.25 1.30 na funkcijata
y
0.02470 0.02411 0.02357 0.02307 0.02259 0.02214
2y
-0.00059 -0.00054 -0.00050 -0.00048 -0.00045
3y
0.00005 0.00004 0.00002 0.00003
Da se opredelat izvodite vo to~ka k=0, odnosno x0=1.0, so pomo{ na formulite za diferencirawe dobieni od Wutnoviot interpolacionen polinom napred:
y ' (1 . 0 ) = 1 [ 0 .02470 + 0 . 000295 + 0 .000017 ] = 0 .50024 0 .05 1 [ 0 . 00059 0 . 00005 ] = 0 .256 y ' ' (1 . 0 ) = 0 . 05 2 1 y ' ' ' (1 . 0 ) = [ 0 . 00005 ] = 0 . 4 0 . 05 3 NUMERI^KI METODI
Pribli`no diferencirawe
51
To~nite rezultati se :
y( x ) = x y' (1.0) = 0.5 y' ' (1.0) = 0.25 y' ' ' (1.0) = 0.375
Od primerot se zaklu~uva deka gre{kite se zna~itelni. Metodite za numeri~ko diferencirawe se zasnovani vrz zamena na izvodite na nekoja funkcija so koli~nici na kone~ni razliki. Vsu{nost, se pravi matemati~ka aproksimacija, odnosno zamena na izvodite du/dx, koi pretstavuvaat odnos na beskrajno mali golemini so odnos na dve kone~ni golemini y/x (ova se vsu{nost podeleni razliki, bidej}i prirastot na ordinatite na funkcijata se podeleni so prirastot na abscisite).
NUMERI^KI METODI
52
Numeri~ka integracija
4. NUMERI^KA INTEGRACIJA
Za razlika od numeri~koto diferencirawe, pri koe ne sekoga{ mo`e da se dobijat rezultati so prifatliva to~nost, numeri~kata integracija mo`e da se sprovede do sekakva barana to~nost. Toa e i pri~ina za golemata primena na ovaa postapka vo site oblasti na mehanikata, posebno koga algoritmot se izveduva kompjuterski. Ovde podetalno }e se zadr`ime na numeri~kite formuli za integracija, dobieni so koristewe na interpolacionite polinomi, kako i na Gausovata integracija. Pri sproveduvaweto na postapkata treba da se ima predvid fizikalnata smisla na opredeleniot liniski i povr{inski integral, a toa e deka tie pretstavuvaat povr{ina, odnosno volumen pod krivata vo dadeni granici.
b
f ( x )dx so formalnite
metodi ~esto e te{ko i nevozmo`no, duri i koga f(x) e funkcija so relativno ednostavna analiti~ka forma. Za vakvi slu~ai, kako i za nekoi poop{ti slu~ai na integracija pri koi se dostapni samo nekolku slu~ajni vrednosti na f(x) za vrednosti na argumentot xi, i=0,1,....n, potrebni se drugi metodi. O~igledna alternativa e da se najde funkcija g(x) koja e ednostavna i pogodna aproksimacija na f(x) i ednostavna za integrirawe. Vo toj slu~aj mo`e da se napi{e:
b a
f ( x )dx g ( x )dx
a
Za sre}a, prethodno dadenite interpolacioni polinomi davaat adekvatni aproksimacii i se lesno integrabilni. Vakvite karakteristiki se glavna pri~ina za golemata primena na interpolacionite polinomi vo numeri~kata matematika.
P4(x)
f(x)
x x x0 x1 x2 x3 x4
NUMERI^KI METODI
Numeri~ka integracija
53
Gornata slika ja ilustrira aproksimacijata na funkcijata f(x) so polinom P4(x), koj to~no gi pretstavuva vrednostite na f(x) vo jazlite x0,x1,x2,x3,x4. To~nata vrednost na f ( x )dx e dadena so povr{inata pod
x0 x4
zabele`uvame deka, ako razlikata pome|u ovie dve funkcii: x= f(x) P4(x) se razlikuva po znak vo razli~nite segmenti od intervalot x0 do x4 vo koj se integrira ({to e voobi~aen slu~aj), toga{ vkupnata gre{ka pri integracijata mo`e da bide mala, odnosno:
x4 x0
x4
x4
duri i vo slu~aj koga P4(x), vo site to~ki dovolno dobro ne ja aproksimira f(x). Pozitivnite gre{ki vo eden segment se poni{tuvaat so negativnite gre{ki vo drugite segmenti. Metodite za integracija {to voobi~aeno se koristat mo`e da se podelat na dve grupi: Wutn-Kotesovi formuli za integracija so ekvidistantni jazolni to~ki Gausovi kvadraturni formuli za jazli na neednakvi rastojanija. Integracionite formuli so ednakvi intervali mo`e da se generiraat so integrirawe na eden od op{tite interpolacioni polinomi. Bidej}i f(x) e poznata samo so vrednostite vo jazolnite to~ki ednakvo raspredeleni so ~ekor h, logi~en izbor za polinomna prezentacija e onoj dobien so forma na kone~ni razliki (napred, nazad ili centralni) Formuli dobieni od Wutnoviot interpolacionen polinom So integrirawe na Wutnoviot interpolacionen polinom za interpolacija napred vo granicite od x0 do xn, se dobivaat pove}e formuli za numeri~ka integracija.
P( x ) = y 0 + + y 0 2 y 0 3 y 0 u+ u (u 1) + u (u 1) (u 2) + ...... + 1! 2! 3!
n y 0 u (u 1) ( u 2)....(u n 1) n!
Ovde }e bidat izvedeni samo tri, a za drugite }e bidat dadeni potrebnite koeficienti.
NUMERI^KI METODI
54
Numeri~ka integracija
x1
a)
x0
funkcija od x0 do x1. P1(x)=y0+y0.u x=x0+h.u; dx=h .du; za x=xo u=0 za x=x1 u=1
x1
x0
P(x ) dx = h P(u ) du = h ( y0 + y0 u) du =
0 0
= h ( y 0 u + y 0 y 0 = y1 y 0
x1
u2 1 y ) = h( y0 + 0 ) 2 0 2 + y1 y 0 2 y + y1 y 0 h )=h 0 = ( y1 + y 0 ) 2 2 2
x0
P(x ) dx = h ( y
b)
x0
funkcija od x0 do x2. P1(x)=y0+y0.u+2y0.u(u-1)/2 x=x0+h.u; dx=h .du; za x=xo u=0 za x=x2 u=2
x2
x0
P(x ) dx = h P(u ) du = h [ y 0 + y 0 u +
0 0 2 2 3
2 y 0 u (u 1)] du = 2
2 y0 u 2 y 0 u u2 + ( )] = h (2 y 0 + 2y 0 + ) 2 2 3 2 3 0 y 0 = y1 y 0 ; 2 y 0 = y 0 2 y1 + y 2
= h[ y 0 u + y 0
x2
x0
P(x ) dx = h[2 y
+ 2 y1 2 y 0 +
y 0 2 y1 y 2 y + 4 y1 + y 2 + = h( 0 )= 3 3 3 3
Ovaa formula e poznata kako osnovna formula na Simpsonovoto pravilo za numeri~ka integracija.
NUMERI^KI METODI
h ( y 0 + 4 y1 + y 2 ) 3
Numeri~ka integracija
55
x3
v)
x0
x0
P(x ) dx = h P(u ) du =
0 3 0
= h [ y 0 + y 0 u + = h[ y 0 u + y 0
2 y 0 3 y 0 u (u 1)(u 2)] du = u (u 1) + 3 2 2
3 0
3 y 0 u 4 u3 u2 u 2 2 y 0 u 3 u 2 + ( 3 + )] ( )+ 3 2 4 6 3 2 2 2 2 3 9 y 0 3 y 0 9 = h (3y 0 + y 0 + + ) 4 8 2 itn
x3
x0
P(x ) dx =
3h ( y 0 + 3y 1 + 3y 2 + y 3 ) 8
x0
x1
x0
x1
x2
x0
x1
x2 x3
P( x )dx = Ch (c 0 y 0 + c1 y1 + ..........c n y n )
x0
56
Numeri~ka integracija
n 1 2 3 4 6 8
C
1/2 1/3 3/8 2/45 1/140 4/14175
c0
1 1 1 7 41 989
c1
1 4 3 32 216 5888
c2
1 3 12 27 -928
c3
c4
c5
c6
c7
c8
1 32 272 10496
7 27 -4540
216 10496
41 -928
5888
989
Trapezno pravilo Ako osnovnata ravenka dobiena so integrirawe na linearna funkcija ja primenime na site intervali na funkcijata, }e ja dobieme formulata za numeri~ka integracija so pomo{ na trapeznoto pravilo.
y y0
h
y1
h
y2
h
y3 x3
yn-1 h xn-1
yn x xn
x0
x1
x2
So pove}ekratno koristewe na osnovnate formula na trapeznoto pravilo ja dobivame formulata za numeri~ka integracija na funkcijata P(x) vo grancite x[x0,xn], so pomo{ na trapeznoto pravilo.
xn
x0 xn
P(x ) dx = 2 ( y P(x ) dx = 2 ( y
h
+ y0 ) +
h h h ( y1 + y 2 ) + ( y 2 + y 3 ) + ......... + ( y n 1 + y n ) 2 2 2
+ 2 y1 + 2 y 2 + ......... + 2 y n 1 + y n )
x0
Simpsonovo pravilo Ova e naj~esto upotrebuvana formula za numeri~ka integracija. Taa se dobiva primenuvaj}i ja formulata dobiena pod b) so integrirawe na kvadratna funkcija vo intrevalite [x0- x2], [x2- x4] itn.
NUMERI^KI METODI
Numeri~ka integracija
57
y0
y1 y2
y3
y4
yn-2 yn-1
yn
x x0 x1 x2 x3 x4 xn-2 xn-1 xn
xn
x0 xn
P(x ) dx = 3 ( y P(x ) dx = 3 ( y
h
+ 4 y1 + y 2 ) +
h h ( y 2 + 4 y 3 + y 4 ) + ..... + ( y n 2 + 4 y n 1 + y n ) 3 3
+ 4 y1 + 2 y 2 + 4 y 3 + ......... + 2 y n 2 + 4 y n + y n )
x0
Treba da se naglasi deka intervalite se ednakvi i nivniot broj e paren, a brojot na to~kite e neparen.
pravilo, so ~ekor h=0.1. k 0 1 2 3 4 5 6 xk 0.4 0.5 0.6 0.7 0.8 0.9 1.0 exk 1.4918 1.6487 1.8221 2.0138 2.2255 2.4596 2.7183
5
y k = 14.7163
1
NUMERI^KI METODI
58
Numeri~ka integracija
1 ex dx = h[ y 0 + 2( y1 + y 2 + y 3 + y 4 + y 5 ) + y 6 ] = 2 0.4 x
1
ex h dx = [ y 0 + 4 y1 + 2 y 2 + 4 y 3 + 2 y 4 + 4 y 5 + y 6 ] = 3 0.4 x
1
Primer 3. Da se presmeta
sin(x )dx ,
koristej}i gi vrednostite na
funkcijata dadeni vo tabelata. Pritoa da se koristi: a) op{tata integraciona formula interpolacionen polinom b) trapeznoto pravilo v) Simpsonovoto pravilo x Sin(x) 0 0 /12 0.25882 2/12 0.5 3/12 0.70711 dobiena od Wutnoviot
4/12 0.86603
5/12 0.96593
6/12 1.00
Dobienite rezultati da se sporedat so to~noto re{enie koe iznesuva 1.00. a) So primena na ravenkata dobiena od Wutnoviot interpolacionen polinom za n=6:
/2
sin(x )dx = 140 12 (41 0.0 + 216 0.25882 + 27 0.5 + 272 0.70711 +
0
NUMERI^KI METODI
Numeri~ka integracija
59
sin( x )dx =
sin( x )dx =
I = f ( x )dx (b a )
a
f ( b) + f (a ) 2
f ( b ) + f (a ) 2
x a b NUMERI^KI METODI
60
Numeri~ka integracija
Trapeznoto pravilo bara linijata da pominuva niz krajnite to~ki (takanare~eni pivotni to~ki); ima slu~ai koga formulata rezultira vo golema gre{ka, {to mo`e da se vidi i od gornata slika. Ako go otstranime ograni~uvaweto za fiksni krajni to~ki, toga{ mo`eme da ja procenime povr{inata pod pravata linija koja povrzuva koi i da bilo dve to~ki od krivata.
f(x)
So pravilen izbor na ovie dve to~ki mo`e da se postigne poni{tuvawe na pozitivnite i negativnite gre{ki na integracijata, odnosno mo`e da se dobie poto~na procena na vrednosta na integralot (povr{inata pod funkcijata). Ovoj koncept e osnova na Gausovata kvadratura, ili na Gausovata formula, za numeri~ka integracija. Izveduvaweto na Gausovata formula }e bide pojasno ako prethodno ja izvedeme trapeznata formula, koristej}i go metodot na neopredeleni koeficienti.
I = f ( x )dx (b a )
a
f ( b) + f (a ) ......................1) 2
kade {to C1 i C2 se konstanti koi treba da bidat opredeleni. Treba da zabele`ime deka trapeznoto pravilo }e dade to~no re{enie ako funkcijata {to se integrira e konstanta ili prava linija. Najednostavni dve ravenki koi gi pretstavuvaat ovie dva slu~aja se:
f (x) = 1 i f (x) = x
NUMERI^KI METODI
Numeri~ka integracija
61
(b a ) 2 (b a ) 2
(b a ) 2
(b a ) 2
I=
( ba ) 2
f (x )dx = C
( ba ) 2
C1 + C 2 = C1 + C 2 =
( b a ) 2
f (x )dx =
( b a ) 2
1dx = x
( ba ) 2 ( b a ) 2
(b a ) (b a ) ( )= 2 2
(b a ) (b a ) + = ba 2 2 C1 + C 2 = b a ......................3)
Ako f ( x ) = x , toga{: f (a ) =
(b a ) (b a ) i f ( b) = vo ravenkata 2). 2 2
( ba ) 2
f (x )dx = C
f (a ) + C 2 f ( b ) = C 1
( b a ) 2
(b a ) (b a ) + C2 ( ) 2 2
( b a ) 2 ( b a ) 2 ( b a ) 2
(b a ) (b a ) C1 + C2 = 2 2
x2 f ( x ) dx = xdx = 2 ( ba ) ( b a )
2 2
(b a ) 2 (b a ) 2 =0 8 8
NUMERI^KI METODI
62
Numeri~ka integracija
C1
(b a ) (b a ) + C2 = 0 ......................4) 2 2
C1 + C 2 = b a C1 (b a ) (b a ) + C2 =0 2 2
(b a )(C1 +C 2 ) = 0
Bidej}i (b-a) ne mo`e da bide nula, od vtorata ravenka imame:
( C1 + C 2 ) = 0 C 2 = C1
Ako zamenime vo prvata ravenka, }e dobieme:
C1 + C 2 = b a C1 + C1 = b a 2C1 = b a
ba 2 ..............5) ba C2 = 2 C1 =
Ako gi zamenime ovie dve vrednosti vo ravenkata 2), }e ja dobieme formulata na trapeznoto pravilo:
I = C1 f (a ) + C 2 f ( b ) I= ba ba f (a ) + f ( b) 2 2 f (a ) + f ( b) 2
I = (b a )
NUMERI^KI METODI
Numeri~ka integracija
63
Opredeluvawe na Gausovata kvadraturna formula so dve to~ki Ovaa formula mo`e da se izvede na sli~en na~in kako i prethodno izvedenata trapezna formula, koristej}i ja slednava forma:
I = f ( x )dx C1 f ( x 1 ) + C 2 f ( x 2 ) ..............6)
a
Sprotivno na trapeznoto pravilo koe koristi fiksni krajni to~ki a i b, vo ovoj slu~aj argumentite x1 i x2 ne se poznati i fiksni (ne se krajni to~ki), taka {to vo gorniot izraz imame vkupno 4 nepoznati. Isto taka se menuvaat i granicite na integracijata, od granici [a,b] vo granici [-1,+1]
f(x) f(x1) f(x2)
-1
x1
x2
+1
Granicite se menuvaat za da se uprostat matemati~kite operacii i za da se napravi {to e mo`no pogeneralna formulacija. Za da gi opredelime nepoznatite, C1, C2, x1 i x2, potrebno e da definirame ~etiri uslovi, kako {to sledi. Ravenkata 6) mo`e da se primeni za integracija na: konstantna, linearna, paraboli~na i kubna funkcija: konstantna linearna kvadratna kubna 1 x x2 x3
f(x)
C1 f ( x 1 ) + C 2 f ( x 2 ) = (1)dx = 2
1
C1 f ( x 1 ) + C 2 f ( x 2 ) = xdx = 0
1
NUMERI^KI METODI
64
Numeri~ka integracija
C1 f ( x 1 ) + C 2 f ( x 2 ) = x 2 dx =
1 1
2 3
C1 f ( x 1 ) + C 2 f ( x 2 ) = x 3 dx = 0 ...............................7)
1
C1 (1) + C 2 (1) = 2 C1 ( x 1 ) + C 2 ( x 2 ) = 0
2 C1 ( x 1 ) + C 2 (x 2 )= 2
2 ....................8) 3 3 3 C1 ( x 1 ) + C 2 ( x 2 ) = 0
Od prvata ravenka na sistemot se dobiva C2=2- C1. So zamena na ovaa vrednost vo vtorata ravenka od sistemot 8), se dobiva:
C 1 x 1 + ( 2 C1 ) x 2 = 0 x1 =
(2 C1 ) x 2 (C1 2) x 2 = C1 C1
2 3 = ) + ( 2 C1 ) x 2 2 2 3
C1 (
( C 1 2) 2 x 2 2 C1
2
=( x2 2
C1 ) 6 3C 1
C1 ( x 3 ) + C 2 (x 3 )=0 1 2 C1
{to e ekvivalentno na:
2 x3 (C1 2)[(C1 2) 2 C 1 ]=0 2
(C1 2) 3 x 3 2 C
3 1
+ ( 2 C1 ) x 3 =0 2
NUMERI^KI METODI
Numeri~ka integracija
65
Poradi toa {to x2 ne mo`e da bide nula i C2 ne mo`e da bide ednakvo na 2, od poslednata ravenka imame:
2 [(C1 2) 2 C 1 ]=0 2 2 C1 4C1 + 4 C 1 =0
4C1 = 4
Spored toa, C1=1, a drugite nepoznati se: C2=1
x2 =
C1 = 6 3C1
1 1 = = 0.5773503 6 3(1) 3
x1 = x 2 =
1 3
= 0.5773503
I = f ( x )dx C1 f ( x 1 ) + C 2 f ( x 2 )
1 +1
+1
I = f ( x )dx 1 f (
1
1 3
) + 1 f (
1 3
Gausovi kvadraturni formuli od povisok red Drugi Gausovi formuli, so pove}e Gausovi to~ki, mo`e da se izvedat na sli~en na~in. Kako {to i se o~ekuva, kolku e pogolem brojot na Gausovite to~ki tolku e povisoka preciznosta {to mo`e da bide postignata. Ravenkite potrebni za opredeluvawe na koeficientite, vo kompaktna forma, se dadeni kako:
C1 x 1 + C 2 x + .....C n x = (1)dx = 2
0 0 2 0 n 1 C1 x 1 + C 2 x 1 2 + .....C n x n = ( x )dx = 0 1 2 2 2 C1 x 1 + C 2 x 2 2 + .....C n x n = ( x )dx = 0 ......................9)
1 1
1 1
.........
NUMERI^KI METODI
66
Numeri~ka integracija
2 C1 x 2 + C 2 x 2 2 + .....C n x n = 1
0 = 2 k +1
C1 x 1
2 n 1
+ C 2 x
2 n 1 2
+ .....C n x
2 n 1 n
(+1) 2 n (1) 2 n = =0 2n
I = f ( x )dx = C1 f (z 1 ) + C 2 f (z 2 ) + ...... + C n f (z n )
a
Te`ini i apscisi na Gausovata kvadratura so 6 Gausovi to~ki to~ka 1 2 3 4 5 6 apscisa z1=-0.932469514 z2=-0.661209386 z3=-0.238619186 z4=0.238619186 z5=0.661209386 z6=0.932469514 te`ina C1=0.171324492 C2=0.360761573 C3=0.467913935 C4=0.467913935 C5=0.360761573 C6=0.171324492
Vidovme deka granicite na integracijata se promeneti vo novi granici [-1 , +1]. Promenata na granicite e napravena so pretpostavkata deka novata promenliva z e vo linearna zavisnost so starata promenliva x:
x = A + Bz
Ako dolnata granica e x=a, ova odgovara na: z= -1. Ako zamenime vo gornata ravenka, }e dobieme:
x = A + Bz a = A + B( 1)
NUMERI^KI METODI
Numeri~ka integracija
67
x = A + Bz b = A + B(1)
a = A + B( 1) b = A + B(1)
Re{enijata se:
A=
b+a ; 2
B=
ba 2
x = A + Bz , }e dobieme:
x=
odnosno:
b+a ba + z 2 2
x=
Ako te`inite gi ozna~ime so W (kako {to se sre}ava vo literaturata), Gausovata formula za numeri~ka integracija mo`e da se zapi{e vo forma:
b a
f ( x )dx Wk f ( x k )
k =1
kade {to Wk se te`ini, a xk se apscisi na jazlite na integracijata. Smislata na ovie te`ini mo`e da se ilustrira i so prethodno dadenite formuli za numeri~ka integracija. Taka, na primer, kaj trapeznoto pravilo:
b a
f ( x ) dx
h h y 0 + hy1 + hy 2 + ......... + hy n 1 + y n 2 2
te`inite se pretstaveni so izrazite pred vrednostite na funkcijata: h/2,h,h,h, ,h,h/2. Toa se te`ini koi odgovaraat na
NUMERI^KI METODI
68
Numeri~ka integracija
f ( x ) dx
4h 2h 4h 2h 4h h h y0 + y1 + y2 + y 3 + ......... y n 2 + y n 1 + y n 3 3 3 3 3 3 3
goleminite h/3, 4h/3, 2h/3, 4h/3, 2h/3,......,2h/3, 4h/3, h/3 gi pretstavuvaat te`inite za jazlite x0,x1,x2, x3, x4,......, xn-2, xn-1,xn. Pri Gausovata integracija, brojot na to~kite n se smeta za fiksiran i za nego se izbiraat Wk i xk koi se zadadeni vo tablica. Pritoa, kako {to be{e prethodno poka`ano, se vr{i transformacija na funkcijata f(x), a x b, vo intervalot -1 z +1, koja se postignuva so zamenata:
x=
Ottuka:
z(b a ) + (b + a ) 2 z= 2x (b + a ) (b a )
dx =
(b a ) dz; 2
Pri ovaa transformacija, kako {to vidovme prethodno, se menuvaat i granicite na integracijata: za x= a z = -1 za x= b z = +1 So toa levata strana na ravenkata za Gausovata integracija stanuva:
b a
f ( x )dx
b a +1 z ( b a ) + ( b + a ) )dz f ( 2 1 2
f (z)dz Wk f (z k ) ,
k =1
f ( x )dx
z (b a ) + b + a ba n ) Wk f ( k 2 k =1 2
Vo narednata tabela se dadeni parametrite na Gausovata integracija so 2, 3, 4 i 5 Gausovi to~ki, a prethodno bea dadeni vrednostite i za 6 to~ki.
NUMERI^KI METODI
Numeri~ka integracija
69
n br. na to~ki 2 3
k to~ka 1 2 1 2 3 1 2 3 4 1 2 3 4 5
zk (apscisi)
Wk (te`ini)
-0.577 350 27 0.577 350 27 -0.774 596 67 0 0.774 596 67 -0.861 136 31 -0.339 981 04 0.339 981 04 0.861 136 31 -0.906 179 85 -0.538 469 31 0. 0.538 469 31 0.906 179 85
1.0 1.0 0.555 555 56 0.888 888 89 0.555 555 56 0.347 854 85 0.652 145 15 0.652 145 15 0.347 854 85 0.236 926 89 0.478 628 67 0.568 888 89 0.478 628 67 0.236 926 89
Primer 4. So Gausovata integraciona formula za dve Gausovi to~ki, da se opredeli vrednosta na integralot.
+1 1 3 2 f (z)dz = (z + z + z + 1) dz 1 +1
{to se poklopuva so to~noto re{enie. Primer 5. Da se primeni Gausovata integraciona formula so pet to~ki za presmetuvawe na integralot:
I=
dx ; 1 x
2
=0.693 147 18
NUMERI^KI METODI
70
Numeri~ka integracija
z=
2x (b + a ) 2x 2 1 = 2x 3; = (b a ) 2 1
1 ; x
dz = 2dx;
dx =
dz 2
f (x) =
Presmetuvaweto po Gausovata formula so 5 Gausovi to~ki e dadeno vo slednava tabela: k 1 2 3 4 5 zk -0.906 179 85 -0.538 469 31 0. 0.538 469 31 0.906 179 85 Wk 0.236 926 89 0.478 628 67 0.568 888 89 0.478 628 67 0.236 926 89 F(zk)=1/(zk+3) 0.477 595 93 0.406 251 28 0.333 333 33 0.282 608 08 0.256 004 60
k =1
Wk.f(zk) 0.113 155 29 0.194 443 51 0.189 629 62 0.135 264 33 0.060 654 37 0.693 147 12
Wk f (z k )
Dobienoto re{enie so 5 Gausovi to~ki e to~no do 6-tiot decimal. Primer 6. Koristej}i ja Gausovata formula za integracija so 2 i so 3 Gausovi to~ki, da se proceni vrednosta na integralot za koj to~noto re{enie iznesuva:
Pritoa, da se koristi formata na Gausovata formula vo koja ne se vr{i transformacija na funkcijata f(x) vo F(z). So dve Gausovi to~ki:
b a
f ( x )dx
z (b a ) + b + a ba n ) Wk f ( k 2 k =1 2
F =
0.61619 2 = 1.9358 2
NUMERI^KI METODI
Numeri~ka integracija
71
integralot
0 1
0.5 1.22
1.0 1.414
1.5 1.58
2.0 1.73
x + 1 dx
Primer 8. Da se interpolira polinom koj minuva niz dadenite to~ki. Pritoa da se koristi Wutnoviot interpolacionen polinom napred. x y -1 3 1 3 3 27 5 75
Potoa da se opredeli povr{inata zafatena od interpoliraniot polinom vo granicite od -1,0 do 5,0 i apscisnata oska, a so pomo{ na Simpsonovot pravilo za 6 intervali i so Gausovata formula so 3 Gausovi to~ki. Rezultatot da se sporedi so to~noto re{enie dobieno so direktna integracija. y i x 3y y 2y 0 -1 3 0 24 0 1 1 3 24 24 2 3 27 48 3 5 75
P( x ) = y 0 +
NUMERI^KI METODI
72
Numeri~ka integracija
- Direktna integracija: 3x 2 dx 3
1
x3 3
5 1
0 -1 3
1 0 0
2 1 3
3 2 12
4 3 27
5 4 48
6 5 75
2 3x dx
h [ y 0 + 4( y1 + y 3 + y 5 ) + 2( y 2 + y 4 ) + y 6 ] = 3
f ( x )dx Wk f ( x k )
k =1
z=
2x (b + a ) 2x (5 1) 2 x 4 = = (b a ) (5 + 1) 6
n 3
k 1 2 3
NUMERI^KI METODI
73
Op{to za sistemite linearni algebarski ravenki Simultanite linearni algebarski ravenki (SLAR) se javuvaat vo skoro sekoja granka na primenetata matematika, ponekoga{ u{te vo po~etokot na formuliraweto na problemot, a nekoga{ i kako edna od fazite na re{avaweto. Mnogu problemi od mehanikata, fizikata, ekonomijata itn, kako matemati~ki model, se sveduvaat na sistem od linearni algebarski ravenki. Ova poglavje ima golemo zna~ewe bidej}i golem broj problemi se izrzuvaat vo forma na linearni diferencijalni ravenki. So soodvetni transformacii, re{avaweto na sistem od linearni diferencijalni ravenki so konstantni koeficienti mo`e da se svede na re{avawe na sistem od linearni algebarski ravenki. Za daden sistem ravenki, bez ispituvawe, ne mo`e da se ka`e dali ima re{enie i, ako ima, dali e toa edinstveno. Postojat tri i samo tri mo`nosti:
6 4 2
x1-x2 = -1
x2 0
-2 -4 -6 0 1 2 3 4 5
2x1+x2 = 4
x1
NUMERI^KI METODI
74
2x1 + 3x2=6
-2
-2
Sistemite od tipot 2 i 3 se vikaat singularni sistemi. Vo op{t slu~aj postojat dva tipa numeri~ki tehniki za re{avawe na simultanite ravenki:
NUMERI^KI METODI
75
ostvari, pa iteraciite mora nekade da se prekinat. Poradi toa indirektnite metodi sodr`at i t.n. gre{ki od zanemaruvawe. Sepak, za golemi i za lo{o usloveni sistemi, gre{kite na zaokru`uvaweto mo`e da bidat mnogu golemi, a dobienoto re{enie da nema nikakva smisla. Sistem od n linearni ravenki so n nepoznati mo`e da se napi{e vo forma:
i =1
a ij x j = b i ;
i = 1,2,.....n
Ili vo matri~na forma: [A ] {x} = {b} Ovde [A]=[aij] e nxn matrica na koeficientite, {x}T={x1,x2,....,xn} i {b}T={b1,b2,....,bn}. Pred da pristapime kon metodite za re{avawe na sistemi linearni algebarski ravenki, }e go definirame poimot rang na matrica. Rang na matrica e ednakov na redot na najgolemata determinanta razli~na od nula, koja se sodr`i vo matricata na sistemot ravenki. Taka, na primer, rangot na slednive matrici e:
0 0 0 1 0 1 1 0 0 1 ; 0 0 0; 2 1 1; 0 0 0
1 0 0 0 2 0 ; 0 0 3
1 0 2 2 3 4 1 2 2
2 0 2 3 2 Kako {to se gleda konceptot na rang, ne e povrzan so kvadratni matrici. Neka so [Ab] ja ozna~ime matricata nx(n+1), koja se dobiva od [A] so dodavawe na vektorot {b} kako (n+1)-vi stolb. Rangot na matricata [A] }e go obele`ime so r(A) a na [Ab] so r(Ab). Osnovnata teorema za postoewe re{enie na sistemot [A ] {x} = {b} mo`e da se definira vo tri dela i taa glasi: 1. sistemot ima re{enie ako i samo ako r(A)= r(Ab); 2. ako r(A)= r(Ab)=k<n i ako xi1,xi2,....,xik se k promenlivi, ~ii stolbovi se linearno nezavisni vo [A], drugite n-k promenlivi mo`at da se zadavaat proizvolno; 3. ako e r(A)= r(Ab)=n, postoi edinstveno re{enie. Od 3. sleduva deka, vo slu~aj na homogen sistem ravenki ({b}={0}), netrivijalno re{enie postoi samo i edinstveno toga{ koga r(A)<n.
NUMERI^KI METODI
76
Efikasnosta na eden algoritam mo`e da se proceni spored dva kriteriuma: 1) kolku e brz (kolku operacii se vklu~eni vo algoritamot) 2) kolku e to~no presmetanoto re{enie. Ovie dva kriteriuma treba da se zemat predvid pri izborot na algoritamot za re{avawe na sistemi od visok red, pri koristewe na ESM. So ogled na ogromniot broj operacii pri golemi sistemi, potrebata za odgovor na prvoto pra{awe e sosema jasna, dodeka potrebata za odgovor na vtoroto pra{awe se nametnuva od faktot {to mali gre{ki pri zaokru`uvaweto mo`at da imaat golemo vlijanie na dobienite rezultati. Vidovi sistemi ravenki a) Polni so sredna golemina. Pod polni podrazbirame deka matricata na sistemot ima malku nenulti elementi, a pod sredna golemina redot na matricata da e do 30x30. Vakvi matrici se sre}avaat pri problemite od statistikata, matemati~kata fizika, in`enerskite nauki. b) Nepolni sistemi so lentesti matrici i eventualno golemi. Za razlika od polnite, lentestite matrici imaat mal broj nenulti elementi blisku do glavnata dijagonala. Za golemi se smetaat onie ~ii matrici se od red 100 i pove}e. Pri re{avaweto na sistemite od ovie dve kategorii, obi~no se koristat razli~ni pristapi. Pri re{avaweto na sistemite so polni matrici skoro redovno se koristat direktni metodi, dodeka pri re{avaweto sistemi od vtorata grupa ~esto se koristat iterativnite metodi. Vo ponovo vreme, so pojavata na kompjuteri so golem kapacitet, direktnite metodi se koristat i za re{avawe na sistemite od vtorata kategorija. Lo[a uslovenost ili nestabilnost na sistemite ravenki Ponekoga{, u{te od formulacijata na problemot se znae deka sistemot ne mo`e da bide singularen, (K*U=P). Ako vakva informacija nedostasuva, mora da se odbere takov metod na re{avawe koj }e go otkrie toa, ili treba da se napravi ekspliciten test za vakva mo`nost (preku rangot na matricata na sistemot). Podocna }e bide poka`ano deka Gausovata eliminaciona postapka dava brza informacija za singularnosta na sistemot.
NUMERI^KI METODI
77
I 4x+6y = 10 :2 II 2x+3y = 6 __________________________ I 2x+3y = 5 *(-1) II 2x+3y = 6 (-1)*I+ II = II __________________________ I 2x+3y = 5 II 0 +0y = 1 y=1/0 ??!! ________________________________________ Direkten test za singularnosta e da se opredeli vrednosta na determinantata na matricata na sistemot ravenki. Vrednosta nula uka`uva na singularnost na sistemot ravenki. Sepak, opredeluvaweto na determinantata bara re~isi isto tolku rabota kolku i za re{avawe na sistemot ravenki. Od gledna to~ka na aritmetikata so beskone~na preciznost, eden sistem e ili ne e singularen. Od gledna to~ka na prakti~nata numerika, eden sistem mo`e da bide skoro singularen {to vodi kon re{enie so mala doverlivost. Eden sistem ravenki se vika stabilen ako relativno mali promeni vo koeficientite predizvikuvaat mali promeni vo vektorot na re{enieto. Vo sprotivno, sistemot se vika lo{o usloven ili nestabilen. Toa }e bide ilustrirano so narednite primeri. Da gi sporedime re{enijata na slednive dva sistema ravenki: xy=1 x-1.00001 y = 0 ________________ x=100 001 y=100 000 xy=1 x-0.999999 y = 0 ________________ x= - 99 999 y= -100 000
Od dobienite rezultati se gleda deka tie enormno se razlikuvaat, i pokraj toa {to imaat skoro identi~ni koeficienti. Sekoj od ovie dva sistema ravenki pretstavuva presek na dve skoro paralelni pravi, pa sosema mal otklon predizvikuva promena na mestopolo`bata na prese~nata to~ka. Vakvi problemi ~esto se sre}avaat pri astronomskite problemi, no i vo drugite oblasti na fizikata, i, ako ne se otkrijat, mo`e da dovedat do sosema pogre{ni reultati. Da go razgledame sledniov sistem ravenki: 35 x + 49 y = 84 :7 -35x 50y =-85 :(-5) ____________________________________
NUMERI^KI METODI
78
5x + 7y = 12 7x +10y = 17
Ako vo ovoj sistem ravenki se obideme da gi zamenime vrednostite x=2.415 i y=0, dobivame: 5*(2.415) + 7*0 = 12,075 7*(2.415) +10*0 = 16.905 Ako desnite strani se zaokru`at na dva decimala, toga{ i pogre{noto re{enie izgleda isto tolku dobro kako i korektnoto. Pri~ina za ova e {to dadeniot sistem ravenki pretstavuva ravenki na dve pravi koi se skoro paralelni, odnosno se se~at pod mnogu mal agol. Nekorektnoto re{enie, iako ne le`i na niedna od niv, sepak e blisku i do dvete pravi.
(1,1) (2.415 , 0)
Vakvi sistemi ravenki se vikaat lo{o usloveni. Sekoga{ koga dve pravi (ili ramnini, odnosno hiperramnini vo pove}edimenzionalen prostor) se re~isi paralelni, ravenkite }e bidat lo{o usloveni. Vo takov slu~aj, te{ko e da se najde numeri~ko re{enie ili, ako se najde, toa e so somnitelna to~nost. Kaj sistemite so 3 i so pove}e nepoznati, mo`no e sistemot da bide singularen ili skoro singularen, bez pritoa ramninite da se paralelni ili skoro paralelni. Izvori na gre[ki-Postojat tri pri~ini za gre{ki vo re{enieto na sistem algebarski ravenki. 1. Prvata se dol`i na gre{kite vo koeficientite na vektorot {b}. Koga ovie koeficienti se dobieni empiriski, mo`eme da se pomirime i da gi prifatime kako takvi. Pritoa, ako e poznata gornata granica na empiriskata gre{ka vo {b},toa mo`eme da go
NUMERI^KI METODI
79
iskoristime za ocenka na gornata granica na gre{kata vo re{enieto {x}. Koga koeficientite vo vektorot {b} se to~no poznati, no pri kompjuterskite presmetki treba da se zaokru`at, ovoj izvor na gre{ki mo`e da se kontrolira so primena na aritmetika so dvojna preciznost (double precision). 2. Vtor izvor na gre{ki e gre{kata od zaokru`uvawe pri izveduvaweto na presmetkovni operacii 3. Tret izvor na gre{ki e gre{kata od prekinuvawe na iterativniot proces {to se javuva kaj indirektnite odnosno na iterativnite metodi, vo koi konvergencijata na re{enieto e bavna, odnosno brojot na iterativnite ~ekori raste neograni~eno, pa procesot nekade mora da go prekineme. Re{avawe na sistemi ravenki so pomo{ na inverzna matrica
[A]{x} = {b}
{x} = [A]1 {b}
Primer 1. So pomo{ na inverznata matrica na matricata na sistemot, da se najdat re{enijata na sledniov sistem od 3 ravenki so 3 nepoznati:
x + 2y + 2x + x+ 2y +
z=5 z=6
2 y + 2z = 7
____________________________________
1 2 1 [A] = 2 2 1 ; 1 2 2
x {x} = y ; z
5 {b} = 6 7
1 2 1 1 0 0 (2) 2 2 1 0 1 0 1 2 2 0 0 1
(1) -
NUMERI^KI METODI
80
1 1 0 0 1 2 0 2 1 2 1 0 : (-2) 0 0 1 1 0 1 1 0 0 1 2 1 0 1 0 .5 1 0 .5 0 0 0 1 1 0 1
(2)
1 0 1 0 0 1 0 1 0 1 .5 0 .5 0 .5 0 0 1 1 0 1 (0.5)
Kontrola :
[A][A]1 = [I]
Re{enie:
Metod na Gausova eliminacija Ovoj metod se sostoi vo postapna eliminacija na nepoznatite golemini, s dodeka ne se dobie edna ravenka so edna nepoznata. Metodot dava mo`nost za neprekinata kontrola i site presmetki mo`e da se sprovedat tabelarno. Razgleduvame sistem od 4 ravenki so 4 nepoznati:
a 11 x1 + a 12 x 2 + a 13 x 3 + a 14 x 4 = b1 a 21 x1 + a 22 x 2 + a 23 x 3 + a 24 x 4 = b 2 a 31 x1 + a 32 x 2 + a 33 x 3 + a 34 x 4 = b 3 a 41 x1 + a 42 x 2 + a 43 x 3 + a 44 x 4 = b 4
NUMERI^KI METODI
81
Pretpostavuvame deka ravenkite se taka podredeni {to a110. Prvata ravenka ostanuva kako takva i se vika glavna ravenka, a ozna~ena e so I. Se definiraat (n-1) mno`iteli vo forma mi=ai1/a11, kade i=2,3,.....,n, odnosno:
m2 =
a 21 ; a 11
m3 =
a 31 ; a 11
m3 =
a 41 ; a 11
( I) m 2 ( I) m 3 ( I) m 4
a 21 a a a a a 11 x 1 + 21 a 12 x 2 + 21 a 13 x 3 + 21 a 14 x 4 = 21 b1 a 11 a 11 a 11 a 11 a 11 a 31 a 31 a 31 a 31 a 31 a 11 x 1 + a 12 x 2 + a 13 x 3 + a 14 x 4 = b2 a 11 a 11 a 11 a 11 a 11 a 41 a a a a a 11 x 1 + 41 a 12 x 2 + 41 a 13 x 3 + 41 a 14 x 4 = 41 b 3 a 11 a 11 a 11 a 11 a 11
Potoa, od site drugi ravenki se odzema prvata ravenka pomno`ena so soodvetniot koeficient.
Koeficientite na novodobieniot sistem ravenki na ovoj na~in vo skratena forma mo`e da se napi{at:
mi =
a i1 ; a 11
i = 2,3,...., n j = 2,3,...., n
a ij ' = a ij m i a 1 j ; b i ' = b i m i b1
O~igledno e deka ai1=0.
NUMERI^KI METODI
82
Na takov na~in sistemot se sveduva na ekvivalenten sistem ravenki vo koj e eliminirana nepoznatata x1 od 2-rata do n-tata ravenka.
a 11 x1 + a 12 x 2 + a 13 x 3 + a 14 x 4 = b1 0 + a 22 'x 2 + a 23 'x 3 + a 24 'x 4 = b 2 ' 0 + a 32 'x 2 + a 33 'x 3 + a 34 'x 4 = b 3 ' 0 + a 42 'x 2 + a 43 'x 3 + a 44 'x 4 = b 4 '
( I) ( 2) (3) ( 4)
Procesot prodol`uva na ist na~in, so eliminacija na nepoznatata x2 od tretata do poslednata ravenka, pa potoa nepoznatata x3 od ~etvrtata ravenka do poslednata ravenka itn. Kone~no se dobiva triagolen sistem ravenki vo koj poslednata ravenka e so edna nepoznata, a toa vo slu~ajot e nepoznatata x4:
a 11 x 1 + a 12 x 2 + a 13 x 3 + a 14 x 4 = b1
( I) (2)
a 33 ' 'x 3 + a 34 ' 'x 4 = b 3 ' ' (3) a 44 ' ' 'x 4 = b 4 ' ' ' (4)
Minimizirawe na gre{kite od zaokru`uvaweto mo`e da se izvr{i so soodvetna izmena na mestata na redovite. Ovoj proces na eliminacija na nepoznatite ne ja menuva vrednosta na determinantata na matricata na sistemot ravenki, iako sekoja izmena na redovite go menuva znakot. Po zavr{uvaweto na eliminacijata, vrednosta na determinantata e ednakva na proizvodot na koeficientite od glavnata dijagonala na triagolniot sistem ravenki. Pritoa, znakot se menuva ako brojot na promenite vo redovite e neparen. Vo slu~aite koga treba da se opredeli vrednosta na determinantata na sistemot, eliminacijata e mnogu dobar na~in za toa. Potoa, od poslednata ravenka se opredeluva poslednata nepoznata, pa so zamena nanazad se opredeluvaat drugite nepoznati. Primer 2. Dadeniot sistem ravenki da se re{i so pomo{ na Gausovata eliminaciona postapka.
_________________________________
x+ y+z = 4 2 x + 3y + z = 9 x y z = 2
(2/1)
(1/1) -
x+ y+ z = 4 0+ y z = 1 0 2 y 2 z = 6
(-2/1)
_________________________________________
NUMERI^KI METODI
83
x+ y+ z = 4 0+ y z = 1 0 4 z = 4
Triagolen sistem
_________________________________________
z= 1 Zamena nazad y = 1+ z = 2 x = 4 y z = 43 =1
Primer 3. Sistem bez re{enie (singularen sistem)
4 x + 6 y = 10 2 x + 3y = 6
(2/4)
______________________________________
4 x + 6 y = 10 0x + 0 y = 1
______________________________________ y = 1/0 singularitet ? Primer 4. Sistemot ravenki od zada~a 1, da se re{i so pomo{ na Gausovata eliminacija.
1 x + 2 y + 1z = 5 2x + 1x + 2 y + 1z = 6 2 y + 2z = 7
(2)
(1) -
___________________________________________
I II III
1 x + 2y + 0 + 2y + 0
1z = 5 1z = 4
+ 0 1z = 2
z=2
III II I
NUMERI^KI METODI
84
Primer 5. Koristej}i ja Gausovata eliminacija, da se opredelat re{enijata na dadeniot sistem ravenki. Pritoa da se re{ava tabli~no i so kontrola na koeficientite.
red. br [1] [2] [3] [4] [5] [6] [7] [8] [9]
x 6 13 35 1 0 0 / / /
zabele{ka rav. 1 rav. 2 rav. 3 [1]/6 [2] - 13*[4] [3] - 35*[4] [5]/6.8342 [6] - 33.169*[7] [8]/5.862
[9] [7] y
z + y
= 4.8531z =
[4]
+ x
2.1666y =
+ -0.1985
5.8333z =
3.0000
NUMERI^KI METODI
85
METOD-LU dekompozicija Osnovna ideja Vo Gausoviot metod na eliminacija site desni strani, odnosno site vektori b koi se od interes za daden problem, mora da se poznati pred da zapo~ne procesot na eliminacija. Metodot na LUdekompozicija ja ima taa prednost {to ~ekorot na modifikacija na matricata (ili dekompozicijata) mo`e da se vr{i nezavisno od vektorot na desnata strana. Ovaa karakteristika e prili~no korisna vo praktikata poradi {to, vo najgolem broj slu~ai, izborot na metodot za re{avawe na sistemot ravenki pa|a na metodot na dekompozicija. Za da se razvie osnovniot metod, matricata na koeficienti pred nepoznatite vo sistemot ravenki ja razbivame na produkt od dve matrici:
kade {to [L] e dolna triagolna matrica, a [U] e gorna triagolna matrica. Sega, originalniot sistem ravenki
Dadeniot sistem ravenki se razbiva na dva oddelni sistema ravenki koi se ednostavni za re{avawe: i
Spored toa, klu~ot na ovoj metod e da se najdat dvete matrici, [L] i [U], koi ja zadovoluvaat ravenkata [A ] = [L ] [U ] . Postapkata e poznata kako LU dekompozicija, a postojat pove}e algoritmi za toa. Naj~esto se koristat narednite tri pristapi za dekompozicija. Dekompozicija na Doolittle:
1 l 21 l 31 l 41
0 1 l 32 l 42
0 0 1 l 43
0 u 11 0 0 0 0 1 0
u 12 u 22 0 0
u 13 u 23 u 33 0
u 14 a 11 u 24 = a 21 u 32 a 31 u 44 a 41
a 12 a 22 a 32 a 42
a 13 a 23 a 33 a 43
a 14 a 24 a 34 a 44
re{avaweto
86
Dekompozicija na Crout:
l11 l 21 l 31 l 41
0 l 22 l 32 l 42
0 0 l 33 l 43
0 1 u 12 0 0 1 0 0 0 l 44 0 0
u 13 u 23 1 0
u 14 a 11 a u 24 = 21 u 32 a 31 1 a 41
a 12 a 22 a 32 a 42
a 13 a 23 a 33 a 43
a 14 a 24 a 34 a 44
Opredluvaweto na [L] i [U] se vr{i na sli~en na~in kako i vo prethodniot metod. Faktorizacija na Cholesky: Koga matricata [A] e pozitivno definitna i simetri~na, toga{ va`i : i {x} [A ]{x} > 0 za site {x}0 Ako matricata [A] e realna, postoi edinstveno opredelena dolna triagolna matrica [L], koja e isto taka realna:
T
[A] = [A ]T
l11 l [L] = 21 l 31 l 41
0 l 22 l 32 l 42
0 0 l 33 l 43
0 0 0 l 44
a ii = l i1 + l i 2 + ....... + l ii
2 2
a ij = l i1 l j1 + l i 2 l j2 + ..... + l ij l jj ,
j < i, i = 1,2,...., n
.1
l11 = a 11 ,
i 1
l i1 =
2
a i1 l11
j1 1 l ij = (a ij l ik l jk ), l jj k =1
l ii = a ii l ik ,
k =1
1< j< i n
Poradi pozitivnata definiranost na matricata [A], potkorenovite golemini vo gornite formuli se pozitivni.
NUMERI^KI METODI
87
a ii ,
elementite na matricata [L] ne mo`e da bidat mnogu golemi i metodot e stabilen. Otkako }e se opredelat elementite na matricata [L], re{enieto na dadeniot sistem ravenki se opredeluva so re{avawe na dva triagolni sistema ravenki:
[L]{y} = {b},
l ii = a ii l ik ,
2
l 22 = a 22 l 21
k =1
= 2.5 0.85194
k =1
NUMERI^KI METODI
88
l 33 = a 33 l 31
k =1
l ij = l 32 =
1 (a ij l ik l jk ), l jj k =1 1 l 22 (a 32 l 31 l 21 ) =
k =1 1
j1
1 < j < i n;
j = 2, i = 3
2.97276 6.89178}
T
Re{enieto na sistemot [L] {x} = {y} e re{enie na dadeniot sistem ravenki i iznesuva:
2.2 3.5}
[A] =
-1
89
[A]=[L]*[L] =
Indirektni (iterativni) metodi za re{avawe SLAR Jakobiev metod Re{avaweto na sistemite ravenki kaj ovie metodi zapo~nuva od edno pretpostaveno ili po~etno re{enie i postepeno se pribli`uva kon to~noto re{enie so pomo{ na iterativen proces. Eden sistem od simultani linearni ravenki se vika dijagonalen koga, vo sekoja ravenka, koeficientot od glavnata dijagonala vo matricata na sistemot po apsolutna vrednost e pogolem od sumata na drugite koeficienti vo soodvetnata ravenka. Mnogu sistemi ravenki koi proizleguvaat pri re{avaweto na fizi~ki problemi se od dijagonalen tip. Na naredniot primer }e prika`eme dva tipa iterativni procesi. Primer 7:
10 x +
y + z = 12
(1)
2 x + 10 y + z = 13 2 x + 2 y + 10 z = 13
Prviot ~ekor e sekoja ravenka da se re{i po nepoznatata vo dijagonalniot ~len. Taka, od prvata ravenka go izrazuvame x, od vtorata y, a od tretata- nepoznatata z.
NUMERI^KI METODI
90
prethodno napi{anite ravenki. Pritoa rabotime so pogolem broj decimali. Vo prviot ~ekor od iterativniot proces dobivame: x=1.2 y=1.3 z=1.4 Ovie vrednosti pretstavuvaat vtoro probno re{enie i so negova zamena vo ravenkite (1), dobivame novo re{enie:
x y z
Ako se izvr{i kontrola, lesno se zaklu~uva deka re{enieto e x=y=z=1.0 . Ovaa postapka e poznata kako Jakobiev iterativen metod. Gaus-Zajdelov iterativen metod Alternativna postapka na prethodnata e Gaus-Zajdeloviot iterativen metod koj }e go ilustrirame na dolunavedeniot primer: Primer 8.
NUMERI^KI METODI
91
x=1.2-0.1(0.0)-0.1(0.0)=1.2 y=1.3-0.2(1.2)-0.1(0.0)=1.060 z=1.4-0.2(1.2)-0.2(1.060)=0.948 x=1.2-0.1(1.060)-0.1(0.948)=0.9992 y=1.3-0.2(0.9992)-0.1(0.948)=1.0054 z=1.4-0.2(0.9992)-0.2(1.0054)=0.9991 x=1.2-0.1(1.0054)-0.1(0.9991)=0.9996 y=1.3-0.2(0.9996)-0.1(0.9991)=1.0002 z=1.4-0.2(0.9996)-0.2(1.0002)=1.0002 xIV=1.2-0.1(1.0002)-0.1(1.0002)=1.000 0
Metod na matri~na dekompozicija Pri re{avawe na golemi sistemi linearni algebarski ravenki mo`e da se primeni metodot na matri~na dekompozicija. Vo ovoj metod matricata na sistemot ravenki se deli na podmatrici (blokovi), a sistemot se razbiva na re{avawe pomali sistemi so matrici od ponizok red, za koi polesno mo`e da se najde inverzija. Neka e zadadena matricata A koja e podelena na 4 podmatrici:
[A] =
a 11 a 21
a 12 a 22
b11
b 21
b12 b 22
Proizvodot na ovie dve matrici e ednakov na matricata na identitetot: kade {to I1 i I2 se edini~ni matrici.
NUMERI^KI METODI
92
Uslov za primena na ovaa postapka e podmatricata a11 da e kvadratna matrica i da postoi nejzina inverzija. Ako ovoj uslov ne e ispolnet, matricata [A] treba da se preuredi taka, ~lenot a11 kako podmatrica da ima inverzija. Metodot na matri~na dekompozicija e mnogu pogoden za primena vo slu~aj koga matricata na sistemot ravenki ne e napolno ispolneta, odnosno ima nulti ~lenovi ili blokovi, kako na primer, ako imame matrica od tipot:
[A] =
a 11
a 21
0 a 22
b12 = 0
1 b11 = a 11 1 b 22 = a 22 1 b 21 = b 22 a 21 a 11
Otkako }e se opredeli inverzijata, lesno mo`e da se najdat re{enijata na dadeniot sistem ravenki. Primer 9. Da se opredelat re{enijata na dadeniot sistem ravenki so primena na matri~na dekompozicija.
1 2 1 x 5 2 2 1 y = 6 1 2 2 z 7
[A]{x} = {b}
{x} = [A]1 {b}
[A]1 = {B} = ?
NUMERI^KI METODI
93
a 11 = 1;
a 12 = [2 1];
2 a 21 = ; 1
2 1 a 22 = 2 2
1 1 a 12 [a 22 a 21 a 11 a 12 ] 1 b12 = a 11
b12
2 1 2 1 1 = [2 1] [2 1] 1 2 2 1 1 2 1 4 2 = [2 1] 2 2 2 1
1
b12
2 1 = [2 1] 0 1
[2 1]
1 1 1 1 = [2 0] = [1 0] (2) 0 2 2
2 1 4 2 = 2 2 2 1
2 1 = 1 0
[A]
x 5 1 1 y = [A ] 6 = 1 z 7 2
Metod na kondenzacija na matricata Sistemot ravenki mo`e da se re{i so pomo{ na sli~en proces, koj e nare~en matri~na kondenzacija.
a 11 a 21
a 12 x P1 = a 22 y P2
94
a 11 x + a 12 y = P1
1 x = a 11 [P1 a 12 y]
Matricata [K] se vika kondenzirana matrica na matricata [A]. Metodot na matri~na kondenzacija se primenuva pri analiza na nekoj problem koga opredeluvaweto na x (odnosno eden podvektor od nepoznatite) ne e neophodno. Takov e slu~ajot, na primer, pri dinami~ka analiza na edna pove}ekatna ramka, koga prisustvoto na rotacionite stepeni na sloboda ne e neophodno, taka {to tie se kondenziraat, a ostanuvaat samo stepenite na sloboda po pomestuvawata na sekoj kat. Ako se zameni izrazot za P2* vo izrazite za nepoznatite x i y, }e se dobijat istite izrazi za ~lenovite od inverznata matrica b11 do b22 kako i po metodot na matri~na dekompozicija. Primer 10. Primerot re{en so matri~na dekompozicija da se re{i so matri~na kondenzacija.
a 11 a 21
a 12 x P1 = a 22 y P2
2 1 2 a 11 = 1; a 12 = [2 1]; a 21 = ; a 22 = 1 2 2
1 * y = [a 22 a 21 a 11 a 12 ] 1 P2
P1 = 5;
6 P2 = 7
6 10 4 6 2 1 1 * P2 = P2 a 21 a 11 P1 = 5 = = 7 5 2 7 1 1 0.5 0.5 4 1 = y= 1 0 2 2
* 1 1 [P1 a 12 (a 22 a 21 a 11 a 12 ) 1 P2 = x = a 11
1 2 2 2 1 4 4 [2 1] = 15 [ 1 0] = 5 4 = 1 15 [2 1] 2 2 2 1 1 2
NUMERI^KI METODI
95
f ( x ) = ax 2 + bx + c = 0
poznata e kvadratnata formula:
x 1, 2 =
b b 2 4ac 2a
Vrednostite presmetani so ovaa formula se vikaat koreni na kvadratnata ravenka. Tie gi pretstavuvaat vrednostite na x, za koi funkcijata f(x) ima vrednosti ednakvi na nula. Koren (koreni) na edna funkcija mo`e da se definira kako vrednost (vrednosti) na x za koja f(x)=0. Korenite na funkcijata mo`e da se nare~at i nuli na funkcijata. Analiti~ko re[enie Korenite na kvadratnata ravenka se opredeleni analiti~ki so koristewe na kvadratnata formula. Za polinom od treti red, trite koreni mo`e,isto taka, da se opredelat analiti~ki. No, ne postoi generalno re{enie za korenite na polinomi od povisok red. Numeri~ko re[enie Re{enieto na mnogu in`enerski problemi ~esto bara opredeluvawe koreni na funkcii koi se slo`eni i nelinearni po priroda. Na primer, funkcijata f(x)=e-x-x ne mo`e da se re{i analiti~ki. Vo takov slu~aj, edinstvena alternativa e aproksimacija so numeri~ki metodi. Pritoa se primenuva iterativna postapka, pri {to e potreben golem broj presmetuvawa, posebno ako korenite treba da se opredelat so pogolema preciznost.
NUMERI^KI METODI
96
Tipovi ravenki Postojat dva tipa ravenki pri opredeluvaweto koreni na funkcii: algebarski ravenki transcendentni ravenki Polinomite se ednostavna klasa na algebarski funkcii koi vo op{ta forma mo`e da se pretstavat so:
f n ( x ) = a 0 + a 1 x + a 2 x 2 + ........ + a n x n
Nekoi specifi~ni primeri na algebarski ravenki (polinomi) se:
f 2 ( x ) = 2 3,47 x + 8.5x 2 i
f 6 ( x ) = 4x 2 x 3 + 6x 6
Transcendentni funkcii se nealgebarski funkcii koi vklu~uvaat vo sebe trigonometriski, eksponencijalni, logaritamski ili drugi tipovi funkcii. Na primer:
x f ( x ) = sin( x ) = 0 i f ( x ) = ln(x 2 ) 1 2
Vo zavisnost od tipot, ravenkata mo`e da ima eden, dva ili pove}e koreni. Isto taka, korenite na funkciite mo`e da bidat realni ili kompleksni. Primer za kompleksni koreni se x 1 = 1 + 2i i x 2 = 1 2i vo slednava kvadratna ravenka:
x 2 2x + 5 = 0
x 1, 2 = b b 2 4ac 2 4 4(1)(5) 2 16 = = = 1 2i 2a 2(1) 2
Pri opredeluvawe koreni na funkcii mo`e da se javat slednive slu~ai: funkcijata nema koren
f(x)
x
NUMERI^KI METODI
97
f(x)
koren
x
funkcijata ima dva korena
f(x)
koreni
x
funkcijata ima tri korena, itn.
f(x)
koreni
x
Iako postojat situacii koga e potrebno da se opredelat kompleksni koreni na nepolinomni funkcii, sepak tie slu~ai se poretki otkolku opredeluvawe koreni na polinomni funkcii. Standardnite metodi za locirawe koreni mo`e da se podelat na dve me|usebno na nekoj na~in povrzani no, sepak, razli~ni klasi problemi: 1. opredeluvawe eden realen koren na algebarska ili transcendentna ravenka vrz osnova na postoewe na aproksimativno re{enie za lokacijata na korenot
NUMERI^KI METODI
98
2. opredeluvawe na site realni i kompleksni koreni na polinomi. Ovie metodi se specijalno razvieni za polinomnite funkcii. Golem broj in`enerski problemi baraat opredeluvawe na set od vrednosti, takanare~eni sopstveni vrednosti ili karakteristi~ni vrednosti. Na primer, konstruktivniot in`ener ja koristi analizata na sopstvenite vrednosti pri proektirawe konstrukcii otporni na zemjotres. Sopstvenite vrednosti, naj~esto obele`ani so , se vrednosti za koi sledniov sistem ravenki ima netrivijalno (nenulto) re{enie X:
[A I]X = 0
kade {to se: A - matrica od red n x n. I - dijagonalna edine~na matrica, - parametar nare~en sopstvena vrednost na matricata A X - sopstven vektor koj odgovara na sopstvenata vrednost. Edna matrica od n-ti red ima n sopstveni vrednosti, 1, 2, ...... n. Sopstvenite vrednosti na edna matrica se koreni na takanare~eniot karakteristi~en polinom koj se dobiva so razvivawe na determinantata na matricata na sistemot ravenki vo polinom i negovo izedna~uvawe na nula:
A I = 0
Primer 1. Da se opredelat sopstvenite vrednosti na dadenata matrica [A].
1 2 4 3
[I] =
1 0 0 1
1 2 2 1 0 1 2 0 1 = = 3 0 1 4 3 0 4 4 3 1 2 = (1 )(3 ) 2(4) = 2 4 5 4 3
det([A ] [I]) =
2 4 5 = 0
NUMERI^KI METODI
99
Re{avaj}i po , gi dobivame 1=-1, i 2=5, a toa se sopstvenite vrednosti na matricata [A]. Metodi za opredeluvawe koreni na funkcii Ovde }e bidat razgledani slednive metodi za opredeluvawe koreni na funkcii: 1. 2. 3. 4. 5. grafi~ki metod metod na direktno barawe metod na prepolovuvawe Wutn-Rafsonov metod metod na sekanta
Grafi~ki metod Eden metod za opredeluvawe aproksimativno re{enie e da se nacrta grafikot na funkcijata i da se opredeli kade toj ja se~e x oskata. To~kata koja ja pretstavuva vrednosta x za koja f(x)=0, e koren na funkcijata. Iako grafi~kite metodi se korisni za gruba procena na korenite, nivnata primena e ograni~ena poradi malata preciznost. Primer 2. Dadena e ravenka na brzinata na pa|awe na padobran:
V(t ) = f (c) =
gm [1 e ( c / m ) t ] c
gm [1 e ( c / m ) t ] V ( t ) = 0 c
Pri slobodno pa|awe na padobranot so masa m i brzina V, po t=10 sekundi, koristej}i go grafi~kiot metod, da se opredeli vrednosta na koeficientot c, za koja f(c)=0. Zadadeni se: m=68.1 kg (masa na padobranecot) V(t)=40 m/sek (brzina) t=10 sek (vreme) g=9.8 m/sec2 (Zemjino zabrzuvawe) c -koeficient na triewe (koj treba da go opredelime), ili koren na ravenkata f(c)=0.
f (c) =
9.81(68.1) [1 e ( c / 68.1)10 ] 40 = 0 c
NUMERI^KI METODI
100
f (c) =
667.38 [1 e 0.146843 c ] 40 = 0 c
Ja tabelirame gornata funkcija za razli~ni vrednosti na c i crtame grafik. c 4 5 6 7 8 9 10 11 f( c ) 34.19047157 29.49406869 25.20892131 21.29388952 17.71225754 14.43123592 11.42152149 8.65690824 c 12 13 14 15 16 17 18 19 f( c ) 6.11394308 3.77162120 1.61111635 -0.38445806 -2.23026071 -3.93990998 -5.52565050 -6.99850079
c=14.75
Od tabelata zabele`uvame deka vrednosta na funkcijata go menuva znakot pome|u vrednostite za c=14 i c=15. Od grafikot procenuvame deka c14.75, i toa go zemame za koren na funkcijata opredelen so grafi~kiot metod. Primer 3. So grafi~ki metod da se opredelat sopstvenite vrednosti na matricata [A] dadena vo primer 1.
[A] =
1 2 4 3
Vo primer 1 vidovme deka sopstvenite vrednosti na dadenata matrica se koreni na nejziniot karakteristi~en polinom, koj be{e daden so:
NUMERI^KI METODI
101
f ( ) = 2 4 5
Ja tabelirame ovaa funkcija i crtame grafik.
-3 -2 -1 0 1 2 3 4 5 6 7 8
f() 16 7 0 -5 -8 -9 -8 -5 0 7 16 27
Od tabelata i od grafikot gi ot~ituvame vrednostite na dvata korena na kvadratnata ravenka: 1=-1, i 2=5. Nedostatok na ovoj metod e {to odnapred ne znaeme vo koi granici da ja tabelirame funkcijata. Vo ovoj primer odnapred ni bea poznati re{enijata, no vo sprotiven slu~aj bi ni trebalo pove}e vreme za da otkrieme vo koi granici se nao|aat korenite na dadenata funkcija. Metod na direktno barawe - metod na probawe (Direct-Search or Trial and Error Approach) So ovoj metod mo`e da se opredelat korenite na op{ta nelinearna funkcija so direktno presmetuvawe na vrednosta na funkcijata f(x) vo daden interval na x, se dodeka ne se postigne f(x)0. So ovoj metod te{ko se doa|a do egzaktnoto re{enie, duri i pri prebaruvawe so mal ~ekor i vo mal interval na x. Namesto to~no re{enie, so ovoj metod se procenuva vo koi granici se nao|a korenot na funkcijata, {to naj~esto ni e dovolno pri re{avawe na in`enerski problemi. Metodot na direktno barawe se sproveduva vo slednite nekolku ~ekori: 1. Se specificira intervalot [A,B] za x vo koj se nao|a korenot na funkcijata.
NUMERI^KI METODI
102
f(x) x
Te{ko e da se pogodi vo koj interval postoi koren, a za toa se potrebni prethodni poznavawa na tekot na funkcijata ili pak treba da se nacrta nejziniot grafik za pogolem interval i da se proceni vo koi intervali mo`e da ima koren. 2. Specificiraniot interval go delime na pove}e podintervali ~ija golemina zavisi od preciznosta {to sakame da ja postigneme. Na primer ako korenot treba da go opredelime so to~nost do 0,002, toga{ vrednosta vo podintervalite treba da iznesuva 0,002.
0,002
3. Se presmetuva vrednosta vo site podintervali s dodeka ne se najde korenot na funkcijata, odnosno poidntervalot kade {to pa|a to~kata f(x)=0. Ednostaven test da se opredeli dali korenot se nao|a vo daden interval e da se presmeta vrednosta na funkcijata vo krajnite to~ki na intervalot i da se sporedat znacite na tie dve vrednosti. Za da ima koren vo daden interval, funkcijata treba da go promeni znakot, odnosno da bide zadovolen uslovot f(A)*f(B)<0.
f(x)
f(A)*f(B)>0
f(x) B x
f(A)*f(B)>0
B A
f(A)*f(B)<0
A f(x) B A
f(x) B A x
NUMERI^KI METODI
103
Primer 4. So pomo{ na metodot na direktno barawe da se procenat korenite na slednava karakteriisti~na ravenka:
f ( ) = 3 32 + 2.3146 0.504188 = 0
Ravenkata e od treti red, pa spored toa treba da se opredelat tri koreni. Za taa cel ja tabelirame funkcijata so ~ekor 0.05 i gi locirame intervalite vo koi pa|aat trite koreni. 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 f( ) -0.50419 -0.39583 -0.30173 -0.22112 -0.15327 -0.09741 -0.05281 -0.0187 0.005652 0.021007 0.028112 0.55 0.6 0.65 0.7 0.75 0.8 0.85 0.9 0.95 1 1.05 f( ) 0.027717 0.020572 0.007427 -0.01097 -0.03386 -0.06051 -0.09015 -0.12205 -0.15544 -0.18959 -0.22373 1.1 1.15 1.2 1.25 1.3 1.35 1.4 1.45 1.5 1.55 1.6 f( ) -0.25713 -0.28902 -0.31867 -0.34531 -0.36821 -0.3866 -0.39975 -0.40689 -0.40729 -0.40018 -0.38483 1.65 1.7 1.75 1.8 1.85 1.9 1.95 2 2.05 2.1 2.15 f( ) -0.36047 -0.32637 -0.28176 -0.22591 -0.15805 -0.07745 0.016657 0.125012 0.248367 0.387472 0.543077
Od tabelata gi locirame trite intervali vo koi pa|aat trite koreni, a toa se:[0,35;0,40] ;[0,65;0,70] ; [1,90;1,95] Ako go nacrtame grafikot na funkcijata, }e mo`eme da gi procenime vrednostite na korenite:
0.6 0.4 0.2
f( )
0
-0.2 -0.4 -0.6
0.2
0.4
0.6
0.8
1.2
1.4
1.6
1.8
2.2
20.7,
31.9,
NUMERI^KI METODI
104
Ako se bara to~nost do 0.005, toga{ sekoj od intervalite go delime na podintervali so golemina 0.005 i gi procenuvame korenite. Na primer, za prviot koren dobivame: 0.3500 0.3550 0.3600 0.3650 0.3700 0.3750 0.3800 0.3850 0.3900 0.3950 0.4000 f( ) -0.0187 -0.0158 -0.0131 -0.0104 -0.0078 -0.0054 -0.0030 -0.0007 0.0015 0.0036 0.0057 Korenot se nao|a vo intervalot [0.385; 0.390]. Korenot go opredeluvame kako sredna vrednost:
Op[ti karakteristiki na metodot na direktno barawe So ovoj metod mo`e da se opredelat koreni na koja bilo funkcija ako tie se realni i ako se nao|aat vo daden interval. Za postignuvawe visok stepen na preciznost ovoj metod mo`e da bide pridru`en so mnogu golem broj presmetuvawa poradi mnogu maliot ~ekor, odnosno so goleminata na podintervalite. Pri selektirawe na goleminata na podintervalite treba da bideme pretpazlivi. Ako ~ekorot e premnogu golem, nekoi od korenite mo`e napolno da se proma{at so primenata na ovoj metod. Goleminata na intervalite treba da bide takva {to vo niv da postoi pove}e od eden koren na funkcijata. Metodot pretpostavuva deka ima eden i samo eden koren vo ramkite na eden podinterval. Ako postoi neparen broj koreni vo intervalot koj se prebaruva, toga{ f(A) i f(B) }e imaat ist znak, vo koj slu~aj }e bidat proma{eni korenite vo ovoj interval.
105
x 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 1.1 1.2 1.3
f(X) 0.9 0.792 0.672 0.546 0.42 0.3 0.192 0.102 0.036 0 0 0.042
f1(x) 0.9 0.792 0.672 0.546 0.42 0.3 0.192 0.102 0.036 0 0 0.042
f ( x ) = x 2 2 x + 1 = ( x 1) 2 = 0
NUMERI^KI METODI
106
Dadenata funkcija ima dva ednakvi korena x1=1 i x2=1. Ovoj metod ne mo`e da gi locira i dvata korena. x1=x2=1.
x 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2 2.1
y 0.01 0.04 0.09 0.16 0.25 0.36 0.49 0.64 0.81 1 1.21
0.5
1.5
2.5
2. To~ka na diskontinuitet Na primer, funkcijata: f ( x ) = x cos( x ) + e koj ne mo`e da bide otkrien so ovoj metod.
2 x 2
700 500 300 100 -40 -30 -20 -10 -100 0 -300 10 20 30 40
NUMERI^KI METODI
107
Metod na prepolovuvawe na intervalot (Bisection) Metodot na prepolovuvawe na intervalite se nadovrzuva na metodot na direktno barawe. Toj se koristi vo slu~ai koga e poznato deka vo daden interval na x, postoi samo eden koren. Za isto nivo na preciznost, ovoj metod bara pomalku presmetuvawa otkolku metodot na direktno barawe. Metodot na prepolovuvawe na intervalite e edna od najednostavnite tehniki za opredeluvawe koreni na funkcii. Postapkata e sledna: - ja razgleduvame funkcijata y=f(x) i treba da ja opredelime vrednosta na x za koja y=0; - se opredeluva vrednost na funkcijata vo dve to~ki, na primer, za x=x1 i za x=x2, taka {to f(x1)*f(x2)<0; - implikacijata e deka ednata vrednost e negativna a drugata e pozitivna; - isto taka, funkcijata mora da bide kontinualna vo intervalot x1x x2; - ako ja nacrtame funkcijata vo toj interval, mo`e da zabele`ime kade e lociran korenot.
y y=f(x)
x1 x3 x2
x
Od slikata se gleda deka funkcijata e negativna vo to~kata x1 a pozitivna vo to~kata x2, i deka e kontinuirana vo intervalot pome|u dvete to~ki. Spored toa, korenot se nao|a pome|u ovie dve to~ki, a novoto pribli`uvawe kon korenot mo`e da se presmeta kako:
x3 =
x1 + x 2 2
Sega, korenot se nao|a pome|u novoto pribli`uvawe x3 i vrednosta x1. So ovie vrednosti se presmetuva novo pribli`uvawe. Ovoj process prodol`uva se dodeka f(x)0, ili dodeka ne se dostigne baranata preciznost. Treba da se zabele`i deka vo sekoja iteracija se koristat novata vrednost za x i edna od prethodnite dve, taka {to kontinuitetot i produktot na vrednostite na funkcijata se zadovoleni.
NUMERI^KI METODI
108
Primer 5. Koristej}i grafi~ki metod, najdeno e deka slednava funkcija ima realen koren pome|u x1=1 i x2=3:
f ( x ) = x 3 5x 2 2x + 10
Da se aproksimira korenot so metodot na prepolovuvawe. Go crtame grafikot na funkcijata vo intervalot pome|u x[1,3] x 0 0.5 1 1.5 2 2.5 3 3.5 y 10 7.875 4 -0.875 -6 -10.625 -14 -15.375
15 10 5 0 -5 0 -10 -15 -20 0.5 1 1.5 2 2.5 3 3.5 4
x1=1 i x2=3:
f(x1)=4; f(x2)=-14
O~igledno e deka f(x1)*f(x2)=(4)(-14)<0, i korenot ima vrednost pome|u 1 i 3. Spored toa, novata vrendost mo`e da se aproksimira so:
x3 =
x1 + x 2 1 + 3 = = 2 f ( x 3 ) = f (2) = 6 2 2
Od grafikot se gleda deka korenot e pome|u 1 i novata vrednost 2, poradi razli~niot znak na funkcijata vo ovie dve to~ki. Novoto pribli`uvawe e:
x4 =
x5 =
Bidej}i znakot na funkcijata za to~kite x1 i x5 e ednakov, korenot se nao|a pome|u x5 i x4, pa novoto pribli`uvawe e:
NUMERI^KI METODI
109
x6 =
x7 =
f(x6)*f(x7)=f(1.375)*f(1.4375)=0.39648*(-0.23657)<0
x8 =
Evidentno e deka vrednostite na funkcijata se pribli`uvaat kon nula kako raste brojot na iteraciite. Po 6 iteracii vrednosta na korenot se aproksimira so vrednosta 1.40625, {to dobro se sovpa|a so to~noto re{enie 2 . Za da se obezbedi zavr{uvawe i prekinuvawe na iteracijata, potrebno e da se definira kriterium za konvergencija, odnosno tolerancija ili razlika pome|u dve posledovatelni pribli`uvawa. Primer 6. Sledniov polinom ima koren vo intervalot 3.75 x 5:
f ( x ) = x 3 x 2 10x 8
x 3 3.25 3.5 3.75 4 4.25 4.5 4.75 5 5.25 5.5 y -20 -16.7344 -12.375 -6.82813 0 8.203125 17.875 29.10938 42 56.64063 73.125
Ako se bara tolerancija od 0.01 (1%), koristej}i go metodot na prepolovuvawe, da se opredli korenot na funkcijata.
NUMERI^KI METODI
110
i
1
xs
2
xm
3
xe
4
f(xs)
5
f(xm)
6
f(xe)
7
5*6
8
6*7
9
gre{.
10
1 2 3 4 5 6 7 8 9 10
3.7500 3.7500 3.7500 3.9063 3.9844 3.9844 3.9844 3.9941 3.9990 3.9990
4.3750 4.0625 3.9063 3.9844 4.0234 4.0039 3.9941 3.9990 4.0014 4.0002
5.0000 4.3750 4.0625 4.0625 4.0625 4.0234 4.0039 4.0039 4.0039 4.0014
-6.8281 -6.8281 -6.8281 -2.7166 -0.4661 -0.4661 -0.4661 -0.1754 -0.0293 -0.0293
12.8496 1.9182 -2.7166 -0.4661 0.7092 0.1174 -0.1754 -0.0293 0.0440 0.0073
42.000 12.8496 1.9182 1.9182 1.9182 0.7092 0.1174 0.1174 0.1174 0.0440
+ + + + -
+ + + + + +
So pomo{ na programata Excel, izvr{eno e iterativno presmetuvawe, spored Bisection metodot, do 10 iteracii. Rezultatite se prika`ani vo gornata tabela. Od tabelata mo`e da se vidi deka tolerancijata od 1%, e postignata vo 7. ~ekor na iteracija, i vo ovoj ~ekor aproksimacijata na korenot iznesuva xm=3.9941. Od poslednite dva reda se gleda deka rezultatot se pribli`uva kon vrednosta xm=4.0, {to e to~na vrednost na korenot na dadenata funkcija vo dadeniot interval. Iako metodot na prepolovuvawe na intervalite sekoga{ }e konvergira kon korenot, konvergencijata e mnogu bavna. Pobrz metod na pribli`uvawe kon korenot na funkcijata vo daden interval e Wutn-Rafsonoviot iterativen metod.
Wutn-Rafsonov metod (Newton-Raphson Method) Ova e naj~esto koristen metod za opredeluvawe koreni na funkcii od site poznati formuli. Grafi~ko izveduvawe na formulata:
f(x)
tangenta
slope = tan = f (x i ) x i +1 x i
koren
f(xi) xi xi+1
NUMERI^KI METODI
111
slope = f ' ( x i ) =
ili:
df ( x ) dx
x =xi
x i+1 x i =
f (x i ) f ' (x i )
x i +1 = x i
f (x i ) f ' (x i )
Primer 7. Koristej}i go iterativniot metod na Wutn-Rafson, da se proceni korenot na slednata funkcija, ako za po~etna procena e zemena vrednosta x0=0:
f (x) = e x x
f ' (x) =
Prva iteracija: i=0, x0=0
df ( x ) = e x 1 dx
f (x 0 ) 1 =0 = 0.5 2 f ' (x 0 )
NUMERI^KI METODI
112
x i +1 = x i x 2 = x1
Treta iteracija:
f (x i ) f '(x i )
i=2, x1=0.5663
x i +1 = x i x3 = x2
^etvrta iteracija: i=3, x1=0.5671
f (x i ) f ' (x i )
x i +1 = x i x4 = x3
f (x i ) f ' (x i )
Po 4 ~ekori od iteracijata, vrednosta na korenot se pribli`i kon re{enieto x=0.5671. Primer 8. Sledniov polinom ima koren vo intervalot 3.75 x 5:
f ( x ) = x 3 x 2 10x 8
Istiot primer prethodno be{e re{en po metodot na prepolovuvawe, pri {to vo devet ~ekori re{enieto se pribli`i kon to~noto re{enie koe iznesuva 4.0 (so tolerancija od 0.001, odnosno 0.1%). Koristej}i go metodot na Wutn-Rafson, da se opredeli korenot na dadenata funkcija so to~nost do 0.1% i da se sporedi so re{enieto i so brzinata na konvergencija od metodot na prepolovuvawe. Po~etnata vrednost na korenot e x0=3.75.
NUMERI^KI METODI
113
f ( x ) = x 3 x 2 10x 8 f ' ( x ) = 3x 2 2x 10
f (3.75) = 3.753 3.752 10 3.75 8 = 6.8281 f ' (3.75) = 3 3.752 2 3.75 10 = 24.6875
x i +1 = x i f (x i ) f ' (x i )
x1 = x 0
x 1 = 3.75
Vtora iteracija i=1 x=4.0266
f ( x ) = x 3 x 2 10x 8 f ' ( x ) = 3x 2 2x 10
f (4.0266) = 4.02663 4.02662 10 4.0266 8 = 0.8052 f ' (4.0266) = 3 4.02662 2 4.0266 10 = 30.5869
x i +1 = x i
x 2 = x1 f (x1 ) f ' (x1 )
f (x i ) f ' (x i )
x 2 = 4.0266
e=
114
Problemi so Wutn-Rafsonoviot metod Nekonvergencija - mo`e da se pojavi vo slu~aj ako po~etnata vrednost na x e takva {to vrednosta na prviot izvod e ednakva na nula:
x i +1 = x i
-
f (x i ) f (x i ) = xi f ' (x i ) 0
Nekonvergencija se javuva koga f (x)=0, {to zna~i deka tangentata e paralelna na x oskata:
f(x)
x x0
-
x1
Nekonvergencija - isto taka mo`e da se javi ako f(xi)/f(xi)= f(xi+1)/f(xi+1). Vo ovoj slu~aj re{enijata se povtoruvaat od ~ekor vo ~ekor.
y y=f(x)
x0= x2= x1 x0= x2= x1
Golem broj ~ekori na iteracijata }e se javat ako f(x) e mnogu pogolemo od f(x). Vo toj slu~aj, odnosot f(xi)/f(xi) e mnogu mal, poradi {to vo sekoj ~ekor se dobiva sosema malo pridvi`uvawe kon re{enieto. Ovaa situacija mo`e da se javi vo slu~aj koga korenot na funkcijata e blizok do nula, odnosno koga xi e mal broj ili koga korenot e vo blizina na prevojnata to~ka.
NUMERI^KI METODI
115
Metod na sekanta (Secant Method) Potencijalen problem pri koristeweto na Wutn-Rafsonoviot metod e opredeluvaweto na vrednostite na izvodot na funkcijata. Za polinomnite funkcii ne e te{ko da se opredelat izvodite, no postojat funkcii za koi e te{ko da se opredelat izvodite. Metodot na sekanta e sli~en na Wutn-Rafsonoviot metod, so taa razlika {to ovde vrednostite na izvodite se opredeluvaat numeri~ki so kone~ni razliki:
f ' (x i ) =
f ( x i ) f ( x i1 ) ( x i x i 1 )
x i+1 = x i x i+1 = x i
f (x i ) f ' (x i ) f (x i ) f ( x i ) f ( x i1 ) ( x i x i 1 )
x i +1 = x i x i +1 = x i
f ( x i ) ( x i x i 1 ) f ( x i ) f ( x i 1 ) f ( x i ) ( x i 1 x i ) f ( x i 1 ) f ( x i )
Spored metodot na sekanta, nova procena na korenot mo`e da se opredeli koristej}i gi vrednostite na funkcijata vo dve drugi proceni na re{enieto, xi i xi-1, primenuvaj}i ja slednava formula vo iterativna procedura:
x i+1 = x i
f ( x i ) ( x i 1 x i ) f ( x i1 ) f ( x i )
f (x) = e x x
Da se zemat po~etnite vrednosti xi-1=0 i xi=1. Prva iteracija, i=1:
x 0 = 0 f ( 0) = e 0 0 = 1 x 1 = 1 f (1) = e 1 1 = 0.63212
x i +1 = x i x 2 = x1
f ( x i ) ( x i 1 x i ) f ( x i 1 ) f ( x i )
NUMERI^KI METODI
116
x i +1 = x i x3 = x2
f ( x i ) ( x i 1 x i ) f ( x i 1 ) f ( x i )
x4 = x3
Bidej}i f(0.56717)= -0.00004, toa zna~i deka vrednosta x=0.56717 e koren na funkcijata, za koj f(x)0. Pove}ekratni koreni Narednata slika poka`uva slu~aj na pove}ekratni koreni, koga oskata x e tangenta na funkcijata f(x). Vo ovoj slu~aj, funkcijata ima dva korena so ednakva vrednost i znak:
f ( x ) = x 2 2x + 1 = ( x 1) 2 = 0 ; x1=x2=1
1.4 1.2 1 0.8 0.6 0.4 0.2 0 -0.2 0
f(x) A
Dvoen koren
0.5
1.5
2.5
Generalno, mo`e da postojat dvojni, trojni, ~etvorni i pove}ekratni koreni za funkcijata f(x). Mo`e da bide poka`ano deka paren broj
NUMERI^KI METODI
117
ednakvi koreni rezultira pri funkcija f(x) tangentna na oskata x, dodeka neparen broj ednakvi koreni rezultiraat pri funkcija f(x) koja ja se~e x oskata so to~ka na infleksija vo samiot koren. Toe e to~kata kade {to funkcijata ja menuva krivinata. Na primer, slednava funkcija ima ~etiri koreni, od koi edniot e troen koren: f ( x ) = x 4 8x 3 + 18x 2 16x + 5 = ( x 1) ( x 1) ( x 1) ( x 5) = 0 ; x1=x2= x3=1; x4=5 Na narednata slika e prika`an grafikot na dadenata funkcija, na koj se gleda deka to~kata na infleksija e vo to~kata x=1, a toa e trojniot koren na funkcijata.
140 y = x 4 - 8x 3 + 18x 2 - 16x + 5 90 40 -10 -60
Troen koren
koren
Problemi so pove]ekratnite koreni Pove}ekratnite koreni predizvikuvaat te{kotii pri koristeweto na prethodno spomenatite metodi za opredeluvawe koreni na funkcii. Bisection - metodot ima problemi so pove}ekratnite koreni poradi toa {to funkcijata ne go menuva znakot vo to~kata kade {to ima neparen broj multiplicirani koreni. Vo Wutn-Rafsonoviot metod ima te{kotii poradi toa {to izvodot vo multipliciraniot koren e ednakov na nula.
Sistemi nelinearni ravenki Prethodno spomenatite metodi za opredeluvawe koreni na funkcija se odnesuvaa na ravenki so edna promenliva od tipot f(x)=0. Nekoi in`enerski problemi se pretstaveni so 2 ili so pove}e funkcii, za koi e potrebno da se opredelat korenite.
NUMERI^KI METODI
118
Problem so dve promenlivi Za problemot so dve promenlivi, funkcijata ima forma: fi(x,y)=0 kade {to indeksot i se odnesuva na brojot na ravenkata, a x i y se nezavisno-promenlivi. Primer 10. Sledniov sistem e primer za sistem od nelinearni ravenki so dve promenlivi:
x 3 3x 2 + xy = 0 4 x 4 xy + 3y = 0
2 2 2
I II
Metodite {to se koristat za ravenki so edna promenliva ne mo`at direktno da se primenat i vo ovoj slu~aj. Ravenkite mo`e da se re{at iterativno, na sledniov na~in (od ravenkata I se izrazuva x, a od II y):
x = (3x 2 xy)1 / 3 4 x 2 + 3y 2 4x
y=
Pretpostavuvame po~etni re{enija: x=3; y=3. Ako go zamenime x=3 vo prethodnata ravenka za x, }e dobieme novo re{enie za x, a po~etnoto y=3 go zadr`uvame, pa dobivame:
y=
y=
119
x 3 2.621 2.446 2.353 2.297 2.260 2.234 2.215 2.200 2.190 2.182
y 3 2.280 2.010 1.908 1.867 1.848 1.839 1.833 1.829 1.826 1.824
x 2.176 2.171 2.168 2.165 2.163 2.162 2.161 2.160 2.159 2.159
y 1.823 1.822 1.821 1.820 1.820 1.820 1.819 1.819 1.819 1.819
NUMERI^KI METODI
120
Ako nekoja funkcija f(x) e poznata vo kone~en broj to~ki, x0, x1, , xn, vo intervalot [a,b], edna od mo`nite aproksimacii na funkcijata f(x) e interpolacioniot polinom opredelen so zadadenite podatoci. Me|utoa, ako brojot na to~kite m+1 e golem, ili pak podatocite se dadeni so odredena gre{ka, vakov izbor na aproksimacija ne e najpogoden. Pri eksperimentalnite istra`uvawa mnogu ~esto se javuva potrebata da se generira funkcija so koja mo`e da se modeliraat dadeni podatoci za mno`estvo od to~ki. Taa funkcija mo`e da bide linearna, kvadratna ili od povisok red. Metodot na najmali kvadrati e postapka za opredeluvawe "mazna", kontinuirana i diferencijabilna kriva, so minimizirawe na gre{kata na otstapuvaweto pome|u zadadenite vrednosti na funkcijata i vrednostite dobieni so krivata. Neka e dadeno mno`estvo od n to~ki koi sakame da gi modelirame so linearna funkcija (prava linija). Taa funkcija ne pominuva niz site to~ki (toa bi bila interpolacionata funkcija), tuku minuva blisku do niv. "Blizinata" obi~no se definira so pomo{ na kriteriumot na najmali kvadrati. Pravata linija mo`e da se izrazi vo forma: y=a0+a1 x Izrazite od koi se opredeluvaat nepoznatite koeficienti a0 i a1 pretstavuvaat sistem od linearni algebarski ravenki.
y=a0+a1 x
kb
y0 y1 yk yn
x
Vo op{t slu~aj, krivata ne pominuva niz site to~ki. Ordinatata na linearnata funkcija vo to~ka xk }e bide: yk =a0+a1 xk.
NUMERI^KI METODI
121
Razlikata pome|u dadenata vrednost na yk i vrednosta presmetana so linearnata funkcija e gre{kata {to se pravi pri provlekuvawe na ovaa funcija pome|u to~kite: k =yk (a0+a1 xk) Ako gi sumirame kvadratite na gre{kite vo site to~ki }e ja dobieme vkupnata gre{ka:
2 E = 2 k = [ y k - (a 0 + a 1 x k )] k =1 k =1 n n
Kvadrirawe na gre{kata se primenuva za da se izbegnat mo`nite poni{tuvawa na gre{kite so pozitiven i so negativen znak. Vkupnata gre{ka zavisi od toa kolku dobro pravata linija se vklopuva pome|u dadenite to~ki. O~igledno e deka najdobro provlekuvawe }e ima koga vkupnata gre{ka e najmala, odnosno minimizirana. Pritoa vkupnata gre{ka ja pretstavuvame kako funkcija od nepoznatite koeficienti a0 i a1, a minimumot na fukcijata go dobivame ako nejzinite izvodi po ovie nepoznati gi izedna~ime so nula:
n E = 2 [ y k - (a 0 + a 1 x k )] = 0 a 0 k =1
n E = 2 [ y k - (a 0 + a 1 x k )] x k = 0 a 1 k =1
y k - a 0 a1 x k = 0
k =1 n k =1 k =1
yk x k - a 0
k =1
k =1
x k a1 x 2 k =0
k =1
na 0 + a 1 x k = y k
k =1 k =1
(5)
n
a 0 x k + a1 x 2 k = yk x k
k =1 k =1 k =1
(6)
Poslednite dve ravenki se dve simultani algebarski ravenki po nepoznatite koeficienti a0 i a1. Ovie ravenki mo`eme da gi napi{eme vo matri~na forma:
n n xk k =1
n n y xk a 0 k =1 k k =1 = n n 2 x k a1 x k yk k =1 k =1
[A ] {a} = {b}
NUMERI^KI METODI
122
od kade:
Od poslednata ravenka se opredeluvaat nepoznatite koeficienti na linearnata funkcija. Vo op{t slu~aj, ako sakame da provle~eme kriva od m-ti red pri n zadadeni to~ki (xk,yk), k=1,...n, imame: y=a0+a1 x + a1 x2 + a2 x3 +....+ am-1 xm Sledej}i ja pogore poka`anata postapka, se dobiva op{tiot izraz za opredeluvawe na koeficientite na polinomot od m-ti red: n n n n m 2 n x x ... x yk k k k k =1 k =1 k =1 a 0 n k =1 n n n n 2 m +1 3 xk xk xk ... x k a1 x k yk k =1 k =1 k =1 k =1 k =1 n n n n a2 = n 2 2 3 4 m+2 xk xk xk ... x k xk yk ... k = 1 k =1 k =1 k =1 k =1 ... ... ... ... ... a ... m n n n n n 2m m m+2 m +1 m xk xk ... xk xk yk x k k =1 k =1 k =1 k =1 k =1
Spored toa, za da se provle~e kriva niz dadeno mno`estvo to~ki, potrebno e da se presmetaat ~lenovite na matricata [A] i vektorot {b}. Primer 1. Dadenite podatoci da se modeliraat so polinom od I, II i III red. X Y 0.00 0.99 1.00 0.03 2.00 -1.02 3.00 -1.94 4.00 -3.04
2 1 0 -1 0 -2 -3 -4 1 2 3 4 5
Mo`e da se zabele`i deka to~kite le`at pribli`no na edna prava linija. Ako so metodot na najmali kvadrati se provle~e polinom od I red, }e se dobijat koeficientite na polinomot:
NUMERI^KI METODI
123
a0 = 1.00999 a1 = -1.00299 Za polinom od vtor red se dobiva: a0 = 0.98856 a1 = -0.96013 a2 = -0.01071 Za polinom od tret red se dobiva: a0 = 0.999756 a1 = -1.02463 a2 = 0.03428 a3 = - 0.00749 Od rezultatite se gleda deka koeficientite od kvadratniot i od kubniot ~len se mali vo sporedba so konstantniot i linearniot ~len. Ova zna~i deka e dominanten linearniot trend na podatocite, pa mo`e da se izvle~e zaklu~ok deka, duri i pri primena na polinomi od povisok stepen, metodot na najmali kvadrati gi prisposobuva koeficientite na dominantnite ~lenovi da go odr`at dominantniot trend na dadenite podatoci. Vidovme deka mno`estvoto od n to~ki mo`e da se pretstavi so polinomi od I red do (n-1) red. Pritoa treba da se vnimava na slednovo: 1. ako brojot na to~kite e golem, ravenkite od koi se opredeluvaat koeficientite na polinomite mo`e da bidat lo{o usloveni. Vo takov slu~aj se koristat ortogonalni polinomi (Le`androvi, ^ebi{evi); 2. ako se primeni polinom koj e za edinica pomal od brojot na to~kite, vkupnata gre{ka e ednakva na nula, me|utoa dobienata kriva mo`e da bide daleku od o~ekuvanite rezultati. Ova e prika`ano na narednata skica, kade {to e pretstaveno modelirawe na podatocite za 4 to~ki so polinom od III red.
5 4 3 2 1 0 0 1 2 3 4 5 6
To~kite imaat linearen trend koj ne odgovara na polinomot od treti red. Vo slu~aj da se ovie podatoci dobieni so merewe primenata na metodot na najmali kvadrati bi dal podobri rezultati.
NUMERI^KI METODI
124
Primer 2: Dadeni se koordinatite na 5 to~ki. x y 0,0 1,0 1,0 1,0 2,0 2,0 3,0 2,0 4,0 4,0
Koristej}i go metodot na najmali kvadrati, pome|u dadenite podatoci da se provle~e polinom od I, II i III red. 1. Vmetnuvawe na polinom od III red (kubna parabola) vo vid P3(x)=a0+a1.x+a2.x2+a3.x3
n a 0 n a x k 1 k =1 = n 2 a 2 x k k =1 n 3 a 3 xk k =1
x 0 1 2 3 4 10 y 1 1 2 2 4 10 x2 0 1 4 9 16 30 x3 0 1 8 27 64 100
k =1 n
xk
2
k =1 n k =1 n k =1
xk
3
k =1 n
2 k 3
xk
4
k =1 n k =1 n k =1
xk
4
xk
5
xk
x4 0 1 16 81 256 354
xk
x5 0 1 32 243 1024 1300
n yk x k =1 k =1 n n 4 x k x k yk k =1 =1 kn n 5 2 x k x k yk k =1 =1 kn n 6 3 x k yk xk k =1 k =1 n 3 k
x.y 0 1 4 6 16 27
x2y 0 1 8 18 64 91
5 10 30 100
10 30 100 354
-1
{a}=[A]-1{b}=
0.985714 = -1.4881 0.642857 -0.08333 -1.4881 6.378968 -3.86905 0.597222 0.642857 -3.86905 2.571429 -0.41667 -0.08333 0.597222 -0.41667 0.069444
10 27 91 327
NUMERI^KI METODI
125
n a 0 n a 1 = x k =1 a kn 2 x2 k k =1
5 10 30 0.885714 -0.77143 0.142857 10 30 100
k =1 n k =1 n k =1
xk xk
2
xk
3
n yk x k =1 k =1 n n 3 x k x k yk =1 k =1 kn n 2 4 x k x k yk k =1 k =1 n 2 k
-1
{a}=[A]-1{b}=
= -0.77143 1.242857 -0.28571
10 27 91
2.5
NUMERI^KI METODI
126
a 0 n = n a 1 x k k =1
n y xk k k =1 k =1 n n 2 x x y k k k k =1 k =1 n
{a}=[A]-1{b}=
= 0.6 -0.2
10 27
0.6 0.7
y = 0.7x + 0.6
2.5
NUMERI^KI METODI
127
Edna od osnovnite zada~i na linearnata algebra e iznao|awe na sopstvenite vrednosti i sopstvenite vektori na edna matrica. Numeri~kite metodi za re{avawe na ovoj problem se razlikuvaat od ite zada~i (re{avawe sistemi ravenki, opredeluvawe na inverzna matrica i determinanta na matrica), pa za se ovde izdvoeni. Sopstvenite vrednosti na edna matrica [A] se koreni na nejziniot karakteristi~en polinom koj e pretstaven so izrazot:
D() det(A I) = 0
Sopstvenite vrednosti na realna ili kompleksna kvadratna matrica [A] od n-ti red se onie vrednosti na skalarot , za koi sistemot:
[A ] {x} = {x}
ima netrivijalni re{enija. Ovie netrivijalni re{enija se vikaat sopstveni vektori. Sistemot ravenki mo`e da se napi{e vo forma na homogen sistem
kade { I e edini~na matrica. Ovoj sistem ima netrivijalno re{enie dokolku determinantata na matricata na sistemot e ednakva na nula:
D() det(A I) = 0
na
sopstvenite vektori koi odgovaraat na razli~ni sopstveni vrednosti se linearno nezavisni; matricite [A], [A], [A]k, k=1,2,....,n, imaat ednakvi sopstveni vektori, a za sopstvenite vrednosti va`i: ( [A])= ([A]); ( [A]k)= (([A])) k; T matricite [A] i [A] imaat ednakvi sopstveni vrednosti.
NUMERI^KI METODI
128
Teoriski, determinantata sekoga{ mo`e da se razvie so standarden metod od linearnata algebra. Me|utoa, ako dimenzijata na matricata n, e golema, golem e i obemot na presmetuvawata i, po pravilo, doa|a do natrupuvawe na presmetuva~ki gre{ki. Poradi toa, za re{avawe na problemot na sopstveni vrednosti i vektori se koristat numeri~ki metodi koi mo`e da se podelat na dve grupi: 1. metodi za re{avawe problemi na sopstveni vrednosti i vektori vo celost, so koi se opredeluvaat site sopstveni vrednosti i vektori; 2. metodi za re{avawe na delumniot problem, so koi se opredeluva edna sopstvena vrednost ( naj~esto najgolemata ili najmalata) i soodvetniot sopstven vektor. Ovde }e razgledame dva metoda, po eden od dvete grupi, i toa: Jakobieviot metod, za opredeluvawe na site sopstveni vrednosti i vektori na edna matrica, i metodot na Vijanelo Stodola, za opredeluvawe na najgolemata i najmalata sopstvena vrednost na edna matrica i soodvetnite sopstveni vektori. Jakobiev metod Ova e metod so koj se opredeluvaat site sopstveni vrednosti na matricata [A], na toj na~in {to taa se dijagonalizira so pomo{ na beskone~na niza od transformacii. Na toj na~in se anuliraat vondijagonalnite ~lenovi vo matricata, a novodobienata dijagonalna matrica gi sodr`i, po glavnata dijagonala, sopstvenite vrednosti 1, do n. Pritoa se koristi matricata na rotacija R. Matricata Rij , so koja se anulira ~lenot bij , ima forma:
[R ]ij
1 = 0
0 i j 1
So ovaa matrica na rotacija nao|ame nova matrica [B] koja e sli~na na matricata [A], taka {to:
T [B] = [R ]ij [A ] [R ]ij
NUMERI^KI METODI
129
tg =
2a ij
b ii = cos 2 a ii + sin 2 a jj + 2 sin cos a ij b jj = sin 2 a ii + cos 2 a jj 2 cos sin a ij b ij = cos sin (a ii a jj ) + a ij (cos 2 sin 2 ) b ik = a ik cos + a jk sin b lj = a ik sin + a jk cos
b ij = a ij
i,jk,l
1 0 0 2 = 0 0 0 0
0 0 0 0 3 0 0 ...
Sopstvenite vektori se ednakvi na kolonite od matricata na rotacija [R ]ij . Primer 1. Dadena e matricata [A] od red 2x2. Koristej}i go Jakobieviot metod, da se opredelat sopstvenite vrednosti i sopstvenite vektori na dadenata matrica.
[A] =
2 1 1 2
Matricata }e se dijagonalizira ako so elementarni transformacii se dobie nova matrica vo koja ~lenovite b12=b21 se ednakvi na nula. Pritoa ja koristime matricata na rotacija [R]12:
T [R ]12 [A ] [R ]12
[R ]12 =
NUMERI^KI METODI
130
Za da se anulira ovoj ~len, vo izrazot za tg zemame i=1 a j=2. Pritoa dobivame: 2 1/ 2 (a 11 a 22 ) + [(a 11 a 22 ) 2 + 4a 12 ] tg = 2a 12
tg = tg = (2 2) + [(2 2) 2 + 4 12 ]1 / 2 2 1 4 =1 2 1 2
cos = (1 + 1) 1/ 2 = sin = 1 1 = 1
1 2 1 2
1 2 1 2
{x}1
1 2 ; 1 2
{x}2
1 2 = 1 2
Za da gi opredelime sopstvenite vrednosti ja dijagonalizirame matricata [A], odnosno gi opredeluvame ~lenovite na novata dijagonalna matrica [B]: b11 = cos 2 a 11 + sin 2 a 22 + 2 sin cos a ij
b11 =
1 1 1 1 2+ 2+ 2 1 = 3 2 2 2 2
b 22 = sin 2 a 11 + cos 2 a 22 2 cos sin a 12 b 22 = 1 1 1 1 2+ 2 2 1 = 1 2 2 2 2 b12 = cos sin (a 11 a 22 ) + a 12 (cos 2 sin 2 ) b12 = 0 b 21 = 0
NUMERI^KI METODI
131
T [R ]ij [A ] [R ]ij =
0 3 0 = 2 0 1
tg = tg =
1/ 2 (a 22 a 33 ) + [(a 22 a 33 ) 2 + 4a 2 23 ] 2a 23
b 22 = cos 2 a 22 + sin 2 a 33 + 2 sin cos a 23 b 22 = b 23 1 1 1 1 1.3 + 1.3 + 2 0.5 = 1.8 2 2 2 2 = cos sin (a 22 a 33 ) + a 23 (cos 2 sin 2 ) 1 2 1 1 1 (1.3 1.3) + 0.5( ) = 0 2 2 2
b 23 =
NUMERI^KI METODI
132
kolona 1
k =1 b ik = b 21 = a 21 cos + a 31 sin = 0
1 2
+ 0
1 2
=0
red 1 kolona 2
kolona 3
k = 1; l = 1;
j=3
j = 3, k = 3 b jj = sin 2 a ii + cos 2 a jj 2 cos sin a ij b 33 = sin 2 a 22 + cos 2 a 33 2 cos sin a 23 1 1 1 b 33 = 1.3 + 1.3 2 0.5 = 0.8 2 2 2
kolona 1
k =1 b 31 = a 21 sin s + a 31 cos = 0
1 2
+ 0
1 2
=0
1 [R ]T [A] [R ] = 0 0
0 2 0
0 b11 0= 0 3 0
0 b 22 0
0 1.3 0 0 0 = 0 1.8 0 b 33 0 0 0 . 8
Sopstvenite vektori nemaat fiksni, odnosno strogo definirani komponenti. Toa {to e definirano e odnosot pome|u komponentite. Pri~ina za toa e {to od ravenkata ([A]-[I]){x}=0 se zemaat (n-1) ravenki so n nepoznati. Za da se re{at ovie ravenki, ednata promenliva mora da se fiksira-izbere proizvolno.
NUMERI^KI METODI
133
Primer 3. Da se opredelat sopstvenite vrednosti na matricata [A] so pomo{ na metodata na Jakobi (dijagonalizirawe na matricata so matri~no mno`ewe): 10 1 [A]= 1 5 i=1 j=2
tg=-(aii-ajj)+[(aii-ajj)2+4aij2](1/2) / 2aij tg=-(-1+2)+[(-1+2)2+4*12](1/2) / (2*1) =0.2 cos=(1+tg2)(1/2) =1.0 sin=costg =0.2 Dijagonaliziraweto na dadenata matrica od red 2x2 se vr{i so mno`ewe so matricata na rotacija, vo eden ~ekor, bidej}i treba da se anulira samo eden ~len (a12=a21). cos [R]= sin 1-sin cosq [D] = [R]T*[A]*[R] 10.0087 -0.9091 1.9275 4.7207 10.2 0.0 0.0 4.8 [R]= 1.0 0.2 -0.2 1.0
[R] *[A]=
[D] =
[D] = [R ] [A ] [R ]
T ij
ij
= 1 0
0 10.2 0 = 2 4 .8 0
Sopstvenite vektori koi odgovaraat na ovie sopstveni vrednosti se koloni na matricata [R]:
[R ] =
{x}
1.0 = ; 0.2
{x}
0.1 = 1 .0
NUMERI^KI METODI
134
Primer 4. So pomo{ na metodot na Jakobi, da se opredelat sopstvenite vrednosti i vektori na dadenata matrica.
j [A]= 1 1 0 0 2 0 1.3 0.5 3 0 0.5 1.3 i 1 2 3
Anulirawe na ~lenot a23 i=2 sin cos j=3 0.707107 0.707107 1 0 0 0 0.707107 0.707107 0 -0.70711 0.707107
[R]23
1 [R]23t 0 0
0 0.707107 -0.70711
0 0.707107 0.707107
1 0 0
0 1.272792 0.565685
Iterativen metod na Vijanelo-Stodola Ovoj metod e iterativen i se koristi za opredeluvawe na najniskite sopstveni vektori, so najmala sopstvena vrednost min, i najvisokite so najgolemo max. Se re{ava sistemot ravenki:
[A]{x} = {x}
NUMERI^KI METODI
135
kade {to: [A] e realna simetri~na matrica od n-ti red, {x} e sopstven vektor na matricata [A], e skalar koj ja pretstavuva sopstvenata vrednost {to odgovara na sopstveniot vektor. Za da ja opredelime najgolemata sopstvena vrednost max i soodvetniot sopstven vektor, trgnuvame od po~etnoto re{enie {x}(1), i go zamenuvame vo ravenkata:
re{enijata
od
dva
2 1 . Da se opredelat 1 2
najgolemata i najmalata sopstvena vrednost i soodvetnite sopstveni vektori. Trgnuvame od po~etniot vektor: {x}
(1)
1 = 0
Go zamenuvame vo ravenkata i dobivame nov vektor {x}(2). ^lenovite vo ovoj vektor gi izrazuvame kako proizvod na nekoj skalar po nekoj vektor, vo koj prviot ~len e ednakov so prviot ~len vo po~etniot vektor:
[A] {x}(1) =
2 1 1 3 1 ( 2) = = 3 = {x} 1 2 0 1 0.3333
2 1 1 2.7143 1 ( 4) = = 2.7143 = {x} 1 2 0.7143 2.4286 0.8947 2 1 1 2.8947 1 = = 2.8947 1 2 0.8947 2.7895 0.96365
NUMERI^KI METODI
[A] {x}(4) =
136
2 1 1 2.96365 1 1 2 0.96365 = 2.92731 = 2.96365 0.9877 2 1 1 2.9877 1 1 2 0.9877 = 2.97547 = 2.9877 0.9959 2 1 1 2.9959 1 = = 2 . 9959 1 2 0.9959 2.99182 0.9986
Vrednostite se poklopuvaat do vtoriot decimal, taka {to mo`eme da prestaneme so presmetuvaweto. Rezultatite od iteracijata se:
0 = 1
[A]1 =
0.666 0.333 0 0.333 0.5 0 . 666 = = 0.333 0.666 1 0.666 1 0.666 0.333 0.5 0.666 0.8 0.333 0.666 1 = 0.8325 = 0.8325 1 0.666 0.333 0.8 0.8658 0.9277 0.333 0.666 1 = 0.93324 = 0.93324 1
NUMERI^KI METODI
137
0.666 0.333 0.9277 0.9514 0.9759 = = 0.9749 0.333 0.666 1 0.9749 1 0.666 0.333 0.9759 0.9829 0.992 = = 0.99097 0.333 0.666 1 0.99097 1 0.666 0.333 0.992 0.9936 0.997 0 . 9963 = = 0.333 0.666 1 0.9963 1
Re{enijata za najmalata sopstvena vrednost i soodvetniot sopstveni vektor se:
{x}min
1 1
NUMERI^KI METODI
138
Op{to za re{avaweto na diferencijalni ravenki Diferencijalnite ravenki se ~esto koristeni vo in`enerstvoto i vo naukata za pretstavuvawe na fizi~kiot fenomen na problemite. Diferencijalna ravenka e sekoja ravenka koja sodr`i eden ili pove}e ~lenovi vo koi figuriraat izvodi na funkcija. Obi~na diferencijalna ravenka e onaa koja vklu~uva samo edna nezavisno promenliva. Diferencijalnite ravenki koi vklu~uvaat dve ili pove}e nezavisno promenlivi, se vikaat parcijalni diferencijalni ravenki. Analiti~koto re{enie na obi~nite i na parcijalnite diferencijalni ravenki se vika re{enie vo zatvorena forma. Klasifikacija na diferencijalnite ravenki Obi~ni diferencijalni ravenki: - diferencijalna ravenka od prv red - dif. rav. od povisok red - linearna dif. rav. - nelinearna dif. rav. Parcijalni diferencijalni ravenki - Ovie ravenki obi~no se klasificiraat spored nivnata matemati~ka forma.
C 0 (x) + C i (x)
i =1 n
di =0 dx i di m ) =0 dx i ( m 0)
(1) ( 2)
C 0 ( x ) + C i ( x )(
i =1
Pritoa ravenkata (1) e linearna obi~na diferencijalna ravenka, dodeka ravenkata (2) e nelinearna obi~na diferencijalna ravenka.
NUMERI^KI METODI
139
Ako koeficientot C0(x) e ednakov na nula, ravenkata se vika homogena, a vo sprotivno, nehomogena diferencijalna ravenka. Razli~ni tipovi na obi~nite diferencijalni ravenki (ODR) imaat golema primena vo in`enerstvoto i vo naukata. Primeri na ODR:
dy = 5x; dx
dy 1 = 0; dx 2
d2y x+y=0 dx 2
Parcijalni diferencijalni ravenki: toa se diferencijalni ravenki koi sodr`at dve ili pove}e nezavisno promenlivi. Ovie ravenki mo`e da imaat samo grani~ni uslovi, pri {to opi{uvaat t.n. problem na grani~ni vrednosti. Primeri na parcijalni diferencijalni ravenki: 2T 2T + =0 x 2 y 2
C1
2W 2W 2W C C + + + C4 = 0 2 3 xy x 2 y 2
4 W FZ k 4W 4W 2 = w + + D D x 2 y 2 y 4 x 4
Primena vo in`enerstvoto, primeri: Mehani~ki sistem:
d2x dx +c + kx = F( t ) 2 dt dt
x C m k F(t)
Vibrirawe na greda:
F(t) m
d2y dy + c + ky = F( t ) 2 dt dt
y NUMERI^KI METODI
140
2h 2h kx 2 + ky 2 = 0 x y
x y h
4w 4w 4 w FZ k +2 2 2 + 4 = w D D x 4 x y y
x
FZ
y NUMERI^KI METODI
141
Mal broj diferencijalni ravenki imaat analiti~ko re{enie vo zatvorena forma. Spored toa, vo naj~est slu~aj se potrebni numeri~ki tehniki za re{avawe na problemite. Op[ti izrazi na diferencijalni ravenki:
dy dx dy dx dy dx dy dx
= f ( x , y); = f ( x ); = f ( y); = C;
dy = 2 + x2 y dx dy 1 = 3 dx x dy = ey 2 dx dy = 4 dx dy d2y = 1 x + 2y 2 dx dx 2 d y dy = 3x + 2 dx dx 2 d y dy 1 =2 + 2 dx y dx d2y 2 == 2 x + 2 y dx
dy = f ( x 1 , x 2 , y); dx dy = f ( x 1 , x 2 ); dx dy = f ( x 1 , y); dx
dy 2 1 = x1 x2 2y 2 dx dy 1 = x2 2 dx x 1 dy = 3x 1 + 3y 2 1 dx
Od kade proizleguvaat diferencijalnite ravenki? - Diferencijalnite ravenki mo`e da proizlezat pri re{avaweto na geometriski ili fizi~ki problemi. - Za geometriski slu~aj, da go razgledame naklonot na funkcijata f(x), koj naj~esto e vrska pome|u x i y:
NUMERI^KI METODI
142
dy = c( y x ) dx
Re{enie na gornata ravenka }e bide relacijata vo forma: y=g(x). Pritoa, vo ova re{enie mo`e da bidat vovedeni edno ili pove}e ograni~uvawa, odnosno grani~ni uslovi. Fizi~kite problemi, isto taka, mo`e da bidat definirani so diferencijalni ravenki. Kako {to vidovme prethodno, problemot na transfer na toplina, dvi`ewe na mehani~ki sistem, vibrirawe na greda, deformacija na plo~a na elasti~na podloga, struewe na fluid itn, vklu~uvaat diferencijalni ravenki. Ednostavnite problemi na dvi`ewe, isto taka, mo`e da se izrazat so diferencijalni ravenki, na primer ravenkata na II Wutnov zakon:
F = ma = m
dV dt
Re{avawe na diferencijalni ravenki so pomo{ na Tajlorovi serii Da pretpostavime deka problemot e opi{an so diferencijalna ravenka od I red vo forma:
y0
dy
y
0
=
x
x0
f ( x ) dx
ili:
y y = f ( x )dx
x0
y y 0 = f ( x )dx
x0
y = y 0 + f ( x )dx ..(1)
x0
NUMERI^KI METODI
143
- osnovna ili po~etna vrednost na nezavisno promenlivata - vrednost na nezavisno promenlivata, odnosno to~ka za koja se bara vrednosta na funkcijata - rastojanie pome|u x0 i x, ili ~ekor - faktorijal od n; n!=n(n-1)(n-2)(n-3)1 - vrednost na funkcijata vo po~etnata to~ka
- vrednost na n-tiot izvod na funkcijata vo po~etnata to~ka Ovaa ravenka mo`e da se izrazi kako:
y( x ) = y 0 + ( x x 0 ) + (x x 0 ) d y 3! dx 3
3 3
dy dx
+
x=x0
(x x 0 ) 2 d 2 y 2! dx 2
+
x=x0
.......
(2)
+ .....
x =x0
(x x 0 ) 2 d 2 y dy + y( x ) = y 0 + ( x x 0 ) dx x = x 0 2! dx 2 y( x ) = y 0 + f ( x )dx
x0 x
x =x0
(x x 0 )3 d 3 y + + ..... 3! dx 3 x = x
0
}e dobieme:
x0
f (x)dx = (x x 0 )
dy dx
+
x =x0
(x x 0 ) 2 d 2 y 2! dx 2
+
x =x0
(x x 0 ) 3 d 3 y 3! dx 3
+ .....
x=x0
NUMERI^KI METODI
144
Spored toa, ravenkite (1) i (2) mo`e da se koristat za re{avawe na diferencijalnite ravenki od I red. Primer 1. Da se re{i slednava diferencijalna ravenka koristej}i ja ekspanzijata na Tajlorovi serii:
d2y dx 2
= 6x 0 = 6 1 = 6 ;
x =x 0
d3y dx 3
=6;
x =x0
d4y dx 4
= 0; za n 4
x =x 0
y( x ) = y 0 + ( x x 0 )
dy dx
+
x =x0
(x x 0 ) 2 d 2 y 2! dx 2
2
+
x =x0 3
(x x 0 ) 3 d 3 y 3! dx 3
x=x0
2 y( x ) = 1 + ( x 1) (3x 0 )+
( x 1) ( x 1) ( 6) (6 x 0 ) + 2 6
x0 = 1 y( x ) = 1 + ( x 1) 3 + 3( x 1) 2 + ( x 1) 3
To~noto re{enie mo`e da se opredeli kako:
2 dy = 3x dx 1 1 y x
3x 3 y 1 = 3 y = x3
= x3
1
x 1
y 1 = x 3 1
NUMERI^KI METODI
145
1 ~len 1 1 1 1 1 1 1 1 1 1 1
2 ~lena 1 1.3 1.6 1.9 2.2 2.5 2.8 3.1 3.4 3.7 4
3 ~lena 1 1.33 1.72 2.17 2.68 3.25 3.88 4.57 5.32 6.13 7
4 ~lena 1 1.331 1.728 2.197 2.744 3.375 4.096 4.913 5.832 6.859 8
to~no 1 1.331 1.728 2.197 2.744 3.375 4.096 4.913 5.832 6.859 8
Analiziraj}i ja tabelata zabele`uvame deka Tajlorovata serija dava to~no re{enie za ovoj primer koga se zemaat 4 ~lena od serijata, poradi toa {to izvodite povisoki od III red se ednakvi na nula. Vo ovoj slu~aj se dobiva to~no re{enie bidej}i se zemeni site postojni ~lenovi. Da pretpostavime deka problemot e opi{an so diferencijalna ravenka od I red vo forma:
y( x , y) = y 0 + ( x x 0 )
dy dx
x =x0 y= y0
(x x 0 ) 2 d 2 y 2! dx 2
x =x0 y= y0
(x x 0 ) 3 d 3 y 3! dx 3
x =x0 y = y0
+ .......
Vo in`enerskite problemi, mnogu ~esto tie se opi{uvaat so diferencijalni ravenki. Ponekoga{ se slu~uva ovie ravenki da se mnogu kompleksni ili nelinearni, pa ne mo`at ednostavno da se re{at so pomo{ na analiti~kite metodi. Vo toj slu~aj, edinstveno mo`no re{enie e numeri~koto integrirawe. Za razlika od analiti~kite metodi, pri koi pribli`noto re{enie e dadeno vo vid na analiti~ki izraz, vo numeri~kite metodi se bara samo numeri~ka vrednost, t. e., za kone~en broj vrednosti na
NUMERI^KI METODI
146
argumentot x, se baraat soodvetnite vrednosti na pribli`noto re{enie. Postojat pove}e metodi za numeri~ko re{avawe na diferencijalni ravenki. Ovde }e ilustrirame nekolku klasi~ni metodi. Ojlerovi metodi -obi~ni diferencijalni ravenki od I red Kako {to zabele`avme vo prethodnite primeri, vo nekoi slu~ai ne e taka lesno da se opredelat povisokite izvodi na funkcijata. Ako pri ekspanzijata na Tajlorovata serija go zememe samo ~lenot vo koj se sodr`i prviot izvod na funkcijata vo to~ka x0, [y(x0)], }e imame:
y( x ) = y 0 + ( x x 0 )
dy dx
x=x0 y= y0
+e
Za pogolema to~nost, treba da se odbere mal ~ekor, h= (x-x0). Gornata raveka mo`e da se zapi{e vo pokompaktna forma za primena na kompjuter:
y i +1 = y i + h y' ( x i , y i )
kade {to: y(xi,yi)=f(xi,yi) h=(x-x0); Ova e osnovnata ravenka za iterativnata procedura na Ojler ili t.n. osnovna Ojlerova formula za re{avawe obi~ni diferencijalni ravenki od I red. Ojleroviot metod e eden od najednostavnite numeri~ki metodi. Re{enijata dobieni so ovoj metod obi~no se grubi i poradi toa se primenuva samo za orientacioni presmetuvawa. Ideite na koi e zasnovan ovoj metod, vo su{tina, se pojdovni za mnogu drugi metodi. Neka f(x,y) e neprekinata funkcija vo dadena oblast. Ja razgleduvame diferencijalnata ravenka od prv red: y=f(x,y), so po~eten uslov y0=y(x0). Da pretpostavime deka soodvetnoto re{enie e y=F(x). Toga{ F(x)=f(x,y). Pritoa mo`e da odbereme dovolno mal ~ekor h, taka {to za site vrednosti na x vo intervalot [x0, x0+h), vrednosta na y=F(x0) malku }e se razlikuva od y0. Vo toj slu~aj, za razgleduvaniot interval mo`e da se napi{e: y=y0+(x-x0)y0=y0+(x-x0)*f(x0,y0) odnosno, krivata y=F(x) vo toj interval se zamenuva so otse~ka koja pretstavuva del od tangentata na taa kriva vo to~kata [x0,F(x0,y0)].
NUMERI^KI METODI
147
y
y=y(x)
F(x)y 0 y0 y1 y2 x0 x1 x2
Za desniot kraj na prvata otse~ka dobivame: y0=f(x0, y0) y(x1)=y0+hy0=y1; za x=x2=x0+2h y(x2) =y2=y1+hy1; y1=f(x1, y1) Zna~i, zada~ata se sveduva na posledovatelno presmetuvawe na razlikite na vrednostite na baranata funkcija F(x). Geometriski, metodot na Ojler poka`uva deka integralnata kriva y=F(x) e zameneta so iskr{enata linija koja po~nuva od zaedni~kata to~ka (x0,y0) so krivata, a sekoja otse~ka e paralelna so tangentata na to~nata kriva vo levata krajna to~ka od soodvetniot interval. Primer 2. Koristej}i go metodot na Ojler da se re{i diferencijalnata ravenka y=2x, ako e zadadena po~etnata vrednost y0=0, h=0.1, a argumentot pripa|a na intervalot x[0,1]. To~no re{enie e funkcijata y=1+x2
k 0 1 2 3 4 5 6 7 8 9 10
yk+1=yk+h.yk' 1 1 1.02 1.06 1.12 1.2 1.3 1.42 1.56 1.72 1.9
to~no re{enie yk=1+xk2 1 1.01 1.04 1.09 1.16 1.25 1.36 1.49 1.64 1.81 2
NUMERI^KI METODI
148
2.5
1.5
0.5
yk+1=yk+h.yk'
Modificiran Ojlerov metod Vo formulata na osnovniot Ojlerov metod se zema vrednosta na prviot izvod vo prethodnata to~ka:
y i +1 = y i + h y' ( x i , y i )
Podobreniot (modificiran) metod na Ojler e sli~en na osnovniot metod na Ojler. Toj ja podobruva to~nosta na procenetoto re{enie so toa {to, namesto vrednosta na prviot izvod vo prethodnata to~ka (ili naklonot na tangentata vo po~etnata to~ka na sekoj interval), se zema vrednosta na prose~niot naklon.
f(x) naklon 1 prose~en naklon naklon 2
Postapkata, spored modificiraniot Ojlerov metod, se sproveduva vo slednive nekolku ~ekori: 1. se opredeluva naklonot S1 (dy/dx) vo po~etnata to~ka na intervalot;
NUMERI^KI METODI
xi
xi+1
149
2. koristej}i go osnovniot metod na Ojler, se opredeluva vrednosta na y na krajot od intervalot vo to~ka xi+1; 3. se opredeluva naklonot na krajot od intervalot S1 (dy/dx) za to~ka xi+1; 4. se opredeluva prose~en naklon, spored formulata:
dy dx
=
prosek
dy dx
+
x = xi
dy dx
x = x i +1
5. se presmetuva nova vrednost na y na krajot od intervalot, so prethodno presmetaniot prose~en naklon, koristej}i ja formulata:
yi+1 = yi + h
Modificiraniot Ojlerov ekvivalentna formula:
dy dx prosek
e daden so slednava
metod
y i+1 = yi + h
ili:
[f ( x i , y i ) + f ( x i + h, y i + hf ( x i , y i ))] 2
naklon 1 S1
dy dx x = xi
dy dx
x = x i +1
naklon 2 S2
dy 1 y = 0; dx 2
^ekor 1:
x 0 = 0; y 0 = 1 = y 1 = 2 2
dy dx
x =0 y =1
NUMERI^KI METODI
150
y1 = y 0 + h
dy dx
x =0 y =1
= 1 + 0 .1
1 = 1.05 2
x 1 = x 0 + h = 0 + 0.1 = 0.1
^ekor 3:
dy dx
^ekor 4:
x = 0.1 y =1.05
y 1.05 = = 0.525 2 2
dy dx
^ekor 5:
=
prosek
y1 = y 0 + h
Vtora iteracija, i=1, ^ekor 1:
dy dx
prosek
x 1 = 0.1; y 0 = 1.05125
y 1.05125 = = 0.52563 2 2
dy dx
x = 0.1 y =1.05125
^ekor 2:so osnovnata ravenka na Ojler: dy y1 = y 0 + h = 1.05125 + 0.1 0.52563 = 1.10381 = 0.1 dx x y =1.05125
dy dx
^ekor 4:
x = 0.2 y =1.10381
y 1.10381 = = 0.55191 2 2
y 2 = y1 + h
dy dx
NUMERI^KI METODI
151
Primer 4. Koristej}i go prviot podobren metod Ojler, da se re{i diferencijalnata ravenka y=y-2x/y, so po~eten uslov y0=1, vo segmentot [0,1] so ~ekor h=0.2.
k 0 1 2 3 4 5 xk 0 0.2 0.4 0.6 0.8 1 yk 1 1.1836 1.3426 1.4850 1.6152 1.7361 fk=yk' 1 0.8456 0.7468 0.6769 0.6246 0.5842 h/2. fk 0.1 0.0845 0.0746 0.0676 0.0624 xk+1/2= xk+h/2 0.1 0.3 0.5 0.7 0.9 yk+1/2= yk+h/2fk 1.1 1.2682 1.4173 1.5527 1.6776 fk+1/2 0.9181 0.7950 0.7117 0.6510 0.6047 h*fk+1/2 0.18363 0.15901 0.14235 0.13021 0.12095
Primer 5. Da se re{i slednava diferencijalna ravenka za 0 x1, koristej}i ~ekor so golemina h=0.1:
dy 1 y = 0; dx 2
y(0) = 1
y ' = f ( y) =
y 2
y i +1 = y i + h y' ( x i , y i )
NUMERI^KI METODI
152
y1 = y 0 + h f ( x 0 , y 0 )
x0=0; y0=1, h=0.1
f ( x 0 , y 0 ) = y ' ( x 0 , y 0 ) = y' ( y 0 ) =
dy dx
x=x0 y= y0
y0 1 = = 0.5 2 2
y 2 = y1 + h f ( x 1 , y1 )
x1=x0+h=0+0.1=0.1; y1=1.05, h=0.1
f ( x 1 , y 1 ) = y ' ( x 1 , y 1 ) = y' ( y 1 ) =
dy dx
x = x1 y = y1
y1 1.05 = = 0.525 2 2
y 3 = y 2 + h f (x 2 , y 2 )
x2=x1+h=0.1+0.1=0.2; y1=1.1025, h=0.1
f ( x 2 , y 2 ) = y' ( y 2 ) =
dy dx
x =x 2 y=y2
y 2 1.1025 = = 0.55125 2 2
dy 1 = y dx 2 ln y ln 1 =
dy 1 = dx ; y x0 2 y0
x0 = 0 ln 1 = 0
1 1 ( x x 0 ) ln y = x 2 2 y=e
x 2
NUMERI^KI METODI
153
i 0 1 2 3 4 5 6 7 8 9 10
f(xi,yi) 0.500000 0.525000 0.551250 0.578813 0.607753 0.638141 0.670048 0.703550 0.738728 0.775664 0.814447
yi 1.000000 1.050000 1.102500 1.157625 1.215506 1.276282 1.340096 1.407100 1.477455 1.551328 1.628895
yto~no= e 2 1.000000 1.051271 1.105171 1.161834 1.221403 1.284025 1.349859 1.419068 1.491825 1.568312 1.648721
% gre{ka 0.12 0.24 0.36 0.49 0.61 0.73 0.85 0.97 1.09 1.22
Primer 6. Da se re{i slednava diferencijalna ravenka za 1x2, koristej}i ~ekor so golemina h=0.1:
dy = 3x 2 ; dx
y(1) = 1
y i +1 = y i + h y' ( x i , y i )
Prva iteracija i=0:
y1 = y 0 + h f ( x 0 , y 0 )
x0=1; y0=1, h=0.1
f ( x 0 , y 0 ) = y' ( x 0 ) =
dy dx
2 = 3x 0 = 3 12 = 3 x =x0
y 2 = y1 + h f ( x 1 , y1 )
x1=x0+h=1+0.1=1.1; y1=1.3, h=0.1
NUMERI^KI METODI
154
y 3 = y 2 + h f (x 2 , y 2 )
x2=x1+h=1.1+0.1=1.2; y2=1.663, h=0.1
x0 = 1 y0 = 1
x 1
y0
3x 3 y 1 = 3 y = x3
= x3
1
y 1 = x3 1
Vo narednata tabela e dadena sporedba na rezultatite so to~noto re{enie.
i 0 1 2 3 4 5 6 7 8 9 10 x 1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2 xi 1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2 f(xi,yi) 3.00 3.63 4.32 5.07 5.88 6.75 7.68 8.67 9.72 10.83 12.00 yi(Ojler) 1.000000 1.300000 1.663000 2.095000 2.602000 3.190000 3.865000 4.633000 5.500000 6.472000 7.555000 yto~no=x3 1.000 1.331 1.728 2.197 2.744 3.375 4.096 4.913 5.832 6.859 8.000 2.38 3.91 4.87 5.46 5.80 5.98 6.04 6.04 5.98 5.89 % gre{ka
NUMERI^KI METODI
155
Primer 7. Da se re{i slednava diferencijalna ravenka za 1x2, koristej}i ~ekor so golemina h=0.1:
dy = 3x 2 y; dx
y(1) = 1
y i +1 = y i + h y' ( x i , y i )
Prva iteracija i=0:
y1 = y 0 + h f ( x 0 , y 0 )
x0=1; y0=1, h=0.1
f ( x 0 , y 0 ) = y' ( x 0 , y 0 ) =
dy dx
x=x0 y= y0
2 = 3x 0 y 0 = 3 12 1 = 3
y 2 = y1 + h f ( x 1 , y1 )
x1=x0+h=1+0.1=1.1; y1=1.3, h=0.1
y 3 = y 2 + h f (x 2 , y 2 )
x2=x1+h=1.1+0.1=1.2; y2=1.7719, h=0.1
dy = 3x 2 dx ; y x0 y0
x0 = 1 y0 = 1
NUMERI^KI METODI
156
3x 3 ln y ln 1 = 3 ln y = x 1
3
= x3
1
x 1
= x3 1
y = ex
Vo narednata tabela e dadena sporedba na rezultatite so to~noto re{enie. i 0 1 2 3 4 5 6 7 8 9 10 x 1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2 xi 1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2 f(xi,yi) yi(Ojler) yto~no 3.00 1.000000 1.000 4.72 1.300000 1.392 7.65 1.771900 2.071 12.86 2.537361 3.310 22.48 3.823803 5.720 40.99 6.072199 10.751 78.11 10.170933 22.109 155.91 17.982209 50.049 326.33 33.572785 125.462 717.01 66.205532 350.374 1654.87 137.906122 1096.633 gre{ka 6.63 14.44 23.35 33.15 43.52 54.00 64.07 73.24 81.10 87.42
dy = 3x 2 y; dx
y(1) = 1 ; y i +1 = y i + h y' ( x i , y i ) ;
y1 = y 0 + h f ( x 0 , y 0 )
x0=1; y0=1, h=0.05
2 f ( x 0 , y 0 ) = 3x 0 y 0 = 3 12 1 = 3 ; y1 = 1 + 0.05 3 = 1 + 0.15 = 1.15
y 2 = y1 + h f ( x 1 , y1 )
x1=x0+h=1+0.05=1.05; y1=1.15, h=0.05
NUMERI^KI METODI
157
i 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
x 1 1.05 1.1 1.15 1.2 1.25 1.3 1.35 1.4 1.45 1.5 1.55 1.6 1.65 1.7 1.75 1.8 1.85 1.9 1.95 2
xi 1 1.05 1.1 1.15 1.2 1.25 1.3 1.35 1.4 1.45 1.5 1.55 1.6 1.65 1.7 1.75 1.8 1.85 1.9 1.95 2
f(xi,yi) 3.00 3.80 4.86 6.28 8.20 10.82 14.44 19.52 26.73 37.11 52.23 74.60 108.13 159.15 237.94 361.44 558.05 875.97 1398.30 2270.42 3750.59
yi(Ojler) 1.000000 1.150000 1.340181 1.583424 1.897536 2.307404 2.848201 3.570220 4.546229 5.882821 7.738116 10.349730 14.079513 19.486047 27.443661 39.340488 57.412524 85.315011 129.113605 199.028622 312.549573
yto~no 1.000 1.171 1.392 1.684 2.071 2.594 3.310 4.308 5.720 7.757 10.751 15.239 22.109 32.856 50.049 78.208 125.462 206.774 350.374 610.864 1096.633
% gre{ka 1.77 3.75 5.94 8.37 11.04 13.96 17.12 20.52 24.16 28.02 32.09 36.32 40.69 45.17 49.70 54.24 58.74 63.15 67.42 71.50
NUMERI^KI METODI
158
Metodi na Runge-Kuta (RK metodi) Ojleroviot i modificiraniot Ojlerov metod se smetaat kako specijalen slu~aj na Runge-Kuta metodite od II red. Tie, isto taka, se smetaat za metodi so eden ~ekor, bidej}i gi koristat informaciite od eden interval za procena na vrednosta na y na krajot od intervalot. Takanare~enite Runge-Kuta metodi se klasa metodi koi se mnogu koristeni, a koi vo sebe gi vklu~uvaat dvata prethodni metoda. Vo RK -metodite, vrednosta na y na krajot na daden interval se opredeluva vrz baza na vrednosta na po~etokot na intervalot, goleminata na ~ekorot, i nekoj reprezentativen naklon vo toj interval.
f(x) naklon 1 prose~en naklon naklon 2
xi
xi+1
Runge-Kuta metodi od II red Postojat tri pretstavuvawa na RK-metodite od II red. Tie se sli~ni poradi toa {to gi koristat informaciite na po~etokot i na krajot od dadeniot interval. No, ovie tri metodi se razlikuvaat vo pretstavuvaweto na naklonot so koj se presmetuva novata vrednost na y na krajot od intervalot. Prvata prezentacija na Rk-metodite od II red e modificiraniot Ojlerov metod:
159
f(x)
S1 S2
prose~no S
h/2 x
xi
xi+1
y i+1 = y i + S2 h
S1 = f ( x i , y i ) S 2 = f ( x i + 0.5h, y i + 0.5hS1 )
S1 f(x) S2
h/2
h/2
xi
xi+1/2
xi+1
1 2 yi+1 = yi + { S1 + S2 }h 3 3
NUMERI^KI METODI
160
S1 = f ( x i , y i ) S 2 = f ( x i + 0.75h, y i + 0.75hS1 )
S1 f(x) S2
0.75h
0.25h
xi
xi+3/4
xi+1
Runge-Kuta metodi od III red Re{enieto na diferencijalnata ravenka so Runge- Kuta metodite od III red se sproveduva spored ravenkata:
Primer 9. Da se re{i slednava diferencijalna ravenka so koristewe na RK-metodot od III red za 1 x 2 i so ~ekor so golemina h=0.1.
dy y( x 2 + 1) = 0; dx
]e bidat poka`ani 2 ~ekora:
x 0 = 1; y 0 = 2
NUMERI^KI METODI
161
i=0
S1 =
dy dx
x =0 y =1
2 = f (x 0 , y 0 ) = y 0 (x 0 + 1) = 2(12 + 1) = 4
x =1.05 y = 2.2
y1 = y 0 +
i=1
y 2 = 2.468041+
NUMERI^KI METODI
162
Runge-Kuta metodi od IV red Vo Runge-Kuta metodot od IV red se zemaat predvid 4 nakloni vo dadeniot interval. Re{enieto na diferencijalnata ravenka se sproveduva spored izrazot:
dy y( x 2 + 1) = 0; dx
]e bide poka`an 1 ~ekor: i=0
x 0 = 1; y 0 = 2
S1 = f (1,2) = 2(12 + 1) = 4
x 0 + 0.5h = 1 + 0.5 0.1 = 1.05 y 0 + 0.5h S1 + 2hS 2 = 2 + 0.5 0.1 4.6255 = 2.231275
S3 = f (1.05,2.231275) = 2.231275(1.05 2 + 1) = 4.691256
NUMERI^KI METODI
163
y1 = 2 +
y1 = y 0 +
Presmetuvaweto vo sekoj ~ekor mo`e da se vr{i tabli~no na sledniov na~in: n x x0 x0+h/2 x0+h/2 x0+h y y0 y0+ S10/2 y0+ S20/2 y0+ S30 S=h.f(x,y) S1 0 S2 0 S3 0 S4 0 y S1 0 2S20 2S30 S4 0 1/6*suma
Primer 11. So pomo{ na metodot na Runge Kuta, da se najde pribli`no re{enie na diferencijalnata ravenka y=x+y, ako y0=1, x[0,1], so ~ekor h=0.2. Re{avaweto e sprovedeno tabli~no spored prethodno dadenata {ema.
1 n 0
2 x 0 0.1 0.1 0.2 0.2 0.3 0.3 0.4 0.4 0.5 0.5 0.6
3 y 1 1.1 1.12 1.244 1.2428 1.38708 1.411508 1.585102 1.583636 1.782 1.811836 2.046003
h(2+3) S 0.2 0.24 0.244 0.2888 0.28856 0.337416 0.3423016 0.39702032 0.396727184 0.456399902 0.462367174 0.529200619
y 0.2 0.48 0.488 0.2888 0.2428 0.28856 0.674832 0.684603 0.39702 0.340836 0.396727 0.9128 0.924734 0.529201
NUMERI^KI METODI
164
0.460577 0.528843 1.203454 1.218031 0.690646 0.606829 0.690208 1.558458 1.576262 0.887835 0.785461
Diferencijalni ravenki od povisok red Vo mnogu in`enerski problemi, potrebno e re{avawe na diferencijalni ravenki od povisok red. Na proimer, diferencijalna ravenka od II red mo`e da bide dadena so:
dy d2y = f ( x, y, ) 2 dx dx
Funkcijata f ne mora da gi vklu~uva site parametri, x,y i dy/dx. Primeri za diferencijalni ravenki od povisok red:
y=0 i
dy = 0 za dx
x=0
Metodite {to bea prethodno dadeni mo`e da se koristat za re{avawe na diferencijalni ravenki od povisok red, otkako }e se transformiraat vo sistem od diferencijalni ravenki od prv red. Procedurata za transformirawe na diferencijalnite ravenki e sledna:
NUMERI^KI METODI
165
d2y dy = f ( x, y, ) 2 dx dx
stanuva,
dy 2 = f ( x , y, y 2 ) dx dy1 = y 2 ; kade y1 = y 2 dx dy dy y2 = 1 = dx dx
Diferencijalni ravenki od povisok red:
d 2 y M( x ) = EI dx 2
M = M + 50x 20x ( 2 ) = 0
M + 50 x 10 x 2 = 0 M = 50 x 10 x 2
NUMERI^KI METODI
166
=
Neka:
dy = rotacija dx
; bidej}i:
d 50 x 10 x 2 = dx EI dy = dx
d 2 y d M ( x ) = = EI dx 2 dx
Ako pretpostavime EI=227520 kNm2 i grani~ni uslovi vo x=0, y=0 i =-0.02314, h=0.1. Koristej}i ja osnovnata formula na Ojler se dobivaat slednive ravenki:
i+1 = i + h f ( x i , i , y i ) y i+1 = y i + h f y ( x i , i , y i )
Prva iteracija (i=0)
x 0 = 0; y 0 = 0; 0 = 0.02314
d 50 x 10 x 2 = f ( x i , i , y i ) = f ( x 0 , 0 , y 0 ) = x =x dx EI =
y= y o
o o
f (0,0.02314,0) =
50(0) 10(0) 2 =0 EI
f y ( x i , i , y i ) = f y ( x 0 , 0 , y 0 ) =
dy = o x =x dx =oo
y= y
f y (0,0.0231481,0) = o = 0.0231481
y1 = y 0 + h f y ( x 0 , 0 , y 0 ) y1 = y 0 + f y (0,0.0231481,0) y1 = 0 0.0231481 (0.1) = 0.00231481
NUMERI^KI METODI
167
d 50x 10x 2 f ( x i , i , yi ) = f ( x1 , 1 , y1 ) = = x =x dx EI =
y= y1
f (0.1,0.02314,0.00231481) =
2 = 1 + h f (0.1,0.0231481,0.00231481)
f y (0.1,0.0231481,0.00231481) = 1 = 0.02314
y 2 = y1 + h f y ( x 1 , 1 , y1 ) y 2 = y1 + f y (0,0.02314,0.00231481) y 2 = 0.00231481 0.02314 (0.1) = 0.0046296
Prethodno spomenatite metodi za re{avawe na obi~ni diferencijalni ravenki mo`e da se koristat i za re{avawe na diferencijalni ravenki od povisok red. Ovie metodi baraat po~etnite uslovi da bidat zadadeni i da va`at za ista vrednost na x. Na primer, vo prethodnata zada~a, po~etnite uslovi se:
x 0 = 0; y 0 = 0; 0 = 0.0231481
Ova e takanare~en problem na po~etni vrednosti. Rotacijata voobi~aeno ne e poznata, no poznato e deka x = 0; y = 0; i x = 10; y = 0; . Vo ovoj slu~aj dvata uslova se odnesuvaat na razli~ni vrednosti na x. Spored toa, ovie uslovi ne mo`e da se koristat za re{avawe na ravenkata so prethodnite metodi. Vo ovoj slu~aj imame re{avawe na problem na grani~ni vrednosti. Ovoj problem mo`e da se re{i numeri~ki koristej}i gi: shooting - metodot i metodot na kone~ni razliki.
NUMERI^KI METODI
168
Shooting- metodot e metod na probawe, koj koristi koja bilo od prethodno spomenatite metodi za re{avawe na diferencijalni ravenki. Ovoj metod e baziran na transformirawe na problemot na grani~ni vrednosti vo ekvivalenten problem na po~etni vrednosti. Re{avawe na problem na grani~ni vrednosti so pomo{ na metodot na kone~ni razliki Ve}e spomenavme deka pri re{avaweto na diferencijalni ravenki, ako grani~nite uslovi se odnesuvaat na razli~ni vrednosti na x, imame re{avawe na problem na grani~ni vrednosti. Ovoj problem mo`e da se re{i numeri~ki koristej}i go metodot na kone~ni razliki. Da se potsetime na izrazite za kone~ni razliki so dvoen ~ekor za aproksimacija na prviot i vtoriot izvod na funkcija:
f ' (x i )
f ' ' (x i )
f ( x i +1 ) f ( x i 1 ) 2h
f ( x + x ) 2f ( x ) + f ( x x ) h2
Vo ovoj metod, izvodite vo diferecijalnata ravenka se zamenuvaat so prethodnite formuli so kone~ni razliki. Toga{, dobienata diferencijalna ravenka vo forma na kone~ni razliki se primenuva vo nekoi vnatre{ni to~ki so odbran ~ekor h i pri zadadeni grani~ni uslovi. Sekoe koristewe na ravenkata so kone~ni razliki rezultira vo linearna ravenka po nepoznatite re{enija vo selektirani vnatre{ni to~ki. Vo ovoj slu~aj dobivame sistem od linearni ravenki koi treba da se re{at simultano, za da se dobie re{enieto vo vnatre{nite to~ki. Primer. Prosta greda, tovarena so ramnomerno raspredelen tovar w. Numeri~ki, da se opredeli momentot na vitkawe M vo sekoja to~ka po dol`inata na gredata.
w=20 kN/m x
6,0 m
NUMERI^KI METODI
169
1.5 x
1.5
d2M = 20 dx 2
Originalnata diferencijalna ravenka mo`e da se transformira vo forma so kone~ni razliki ako se zeme predvid ravenkata:
f ' ' (x i )
f ( x i 1 ) 2f ( x i ) + f ( x i +1 ) h2
d 2 M M i 1 2M i + M i +1 = dx 2 h2 M i 1 2M i + M i +1 = 20 h2
M i 1 2M i + M i +1 = 20 (1.5) 2
M i1 2M i + M i+1 = 20(2.25) = 45
Primenata na poslednata ravenka vo vnatre{nite to~ki 2,3 i 4 dava sistem od tri ravenki so 3 nepoznati.
NUMERI^KI METODI
170
Vo jazolot 2:
Vo jazolot 3:
Vo jazolot 4:
M 3 2M 4 = 45
Kone~no se dobiva sistemot ravenki od koj se opredeluvaat nepoznatite momenti vo jazlite 2,3 i 4.
2M 2 + M 3
= 45
M 2 2M 3 + M 4
Vo matri~na forma sistemot e:
= 45
M 3 2M 4 = 45
0 M 2 45 2 1 1 2 1 M = 45 3 1 2 M 4 45 0
Re{enieto na sistemot ravenki e:
171
Elektronskite digitalni kompjuteri so golema brzina im ovozmo`ija na in`enerite da vovedat razli~ni tehniki za numeri~ka diskretizacija pri aproksimativnite re{enija na kompleksnite problemi. Metodot na kone~ni elementi (MKE) e edna od vakvite tehniki. Originalno, MKE e razvien kako alatka za konstruktivna analiza vo teorijata na konstrukciite, no teorijata i formulacijata progresivno se generalizirani i rafinirani taka {to metodot uspe{no se primenuva vo drugi oblasti, kako {to se: protok na toplina, hidrodinamika, mehanika na karpi. Za mnogu in`enerski problemi ne e mo`no da se dobijat analiti~ki matemati~ki re{enija. Analiti~koto re{enie e matemati~ki izraz koj gi dava vrednostite na baranata nepoznata golemina vo koja bilo to~ka. Za problemite vo koi se vovedeni kompleksnite materijalni karakteristiki i grani~ni uslovi, in`enerite koristat numeri~ki metodi koi obezbeduvaat aproksimativni no prifatlivi re{enija. Vo najgolem broj numeri~ki metodi, re{enijata davaat aproksimativni vrednosti za nepoznatite golemini samo vo diskreten broj to~ki. Procesot na selektirawe samo na odreden broj diskretni to~ki, za koi se bara nekoja golemina, mo`e da se nare~e diskretizacija. Eden od na~inite da se diskretizira nekoe telo ili konstrukcija e da se podeli na pomali delovi i da se dobie ekvivalenten sistem od kone~ni elementi. Namesto da se re{ava problemot za celata konstrukcija vo edna operacija, re{enijata se formuliraat za sekoj element, a potoa se kombiniraat so cel da se dobie re{enieto za originalnata konstrukcija. Iako pristapot e zna~itelno uprosten, brojot na podatocite {to treba da se presmetaat zavisi od brojot na elementite na koi konstrukcijata e podelena. Za konstrukcii diskretizirani na golem broj elementi sosema e razbirliva potrebata od primena na kompjuter za sproveduvawe na presmetuvaweto. Metodot na kone~ni elementi e primenliv za re{avawe na problemite na grani~ni vrednosti vo in`enerstvoto. Pritoa, re{enieto se bara vo regionot na teloto na konstrukcijata, dodeka na granicite na regionot se propi{uvaat (zadavaat) vrednostite na zavisnite promenlivi ili nivnite izvodi. Pove}eto od aplikaciite na MKE se vo oblasta na mehanikata na cvrsto telo, vklu~uvaj}i ja konstruktivnata mehanika, mehanikata na po~vi i mehanika na karpi. Problemite vo ovie oblasti se re{avaat so primena na eden od trite pristapi: metod na pomestuvawa, metod
NUMERI^KI METODI
172
na ramnote`a i me{ovit metod. Pomestuvawata se primarnite nepoznati vo metodot na pomestuvawa (metod na deformacii), naponite se nepoznati vo metodot na ramnote`a (metod na sili) i nekoi pomestuvawa i nekoi naponi se nepoznati vo me{ovitiot metod. Vo osnovata na metodot e diskretizacija na konstrukcijata (kontinuumot) na serija od kone~ni elementi. Na sl. 1 se prika`ani razli~ni tipovi kone~ni elementi. Elementite se povrzani pome|u sebe vo to~ki koi se vikaat jazolni to~ki. Se odbiraat ednostavni funkcii za aproksimacija na distribucijata ili varijacijata na stvarnite pomestuvawa vo kone~niot element. Ovie pretpostaveni funkcii se vikaat funkcii na pomestuvawata. Nepoznati se pomestuvawata ili izvodite na pomestuvawata vo jazolnite to~ki.
Triagolen element
Pravoagolen element
173
Modelot na pomestuvawata naj~esto e vo ednostavna forma na polinomi koi ja ovozmo`uvaat lesnata matemati~ka manipulacija. Varijacioniot princip od mehanikata, kako {to e principot za minimum na potencijalna energija, naj~esto se koristi za da se definira sistem od ravenki za ramnote`a na sekoj element:
[k ] {u} = {p}
Ravenkite za ramnote`a na celiot sistem se opredeluvaat so kombinirawe na ravenkite na elementite, i toa taka {to da se obezbedi kontinuitet na pomestuvawata vo jazlite na povrzuvawe. Potoa, ovie ravenki se modificiraat za dadeni grani~ni uslovi na potpiraweto, pa se re{avaat za da se opredelat nepoznatite pomestuvawa. Teorijata na MKE e podelena vo dve fazi: analiza na individualnite elementi i analiza na sistemot od elementi. Ako se primeni metodot na pomestuvawa ili deformacii, postapkata mo`e da se podeli na nekolku ~ekori: 1. Diskretizacija na kontinuumot na kone~ni elementi (liniski, triagolni, pravoagolni, kvadrilateralni, prizmati~nitrodimenzionalni), sl.3. Ovoj proces mo`e da bide celosno ili delumno avtomatiziran, no sepak mnogu zavisi od iskustvoto i od in`enerskata procena na brojot, goleminata, tipot i rasporedot na kone~nite elementi, aspect ratio. 2. Izbor na model na pomestuvawata(tipot i stepenot na polinomot, interpolacioni funkcii) 3. Opredeluvawe na matricite na krutost na elementite. ^lenovite vo ovie matrici se koeficienti vo ravenkite na ramnote`a, a presmetani od materijalnite i od geometriskite karakteristiki na elementite (sili od edini~ni pomestuvawa). Na primer: 1
[k ] = AE
1 l 1 1 1
12 6l 12 6l 2l 2 6l 4l 2
2 E,A,l
6l 12 4l 2 [k ] = EI l3 Simm.
4. Sostavuvawe na globalnata matrica na krutost na sistemot od matricite na elementite, i na globalniot vektor na sili (tovari)
NUMERI^KI METODI
174
od jazolnite sili vo elementite (metod na kodni broevi). Pritoa se vospostavuva relacija na nivo na sistemot:
[K ] {U} = {P}
Ovie ravenki ne mo`e da se re{at ako prethodno ne se zemat predvid grani~nite uslovi (dali ima nekoi propi{ani ograni~uvawa na pomestuvawata). Vo taa smisla treba da se modificiraat ravenkite. 5. Re{avawe na sistemot ravenki i opredeluvawe na nepoznatite pomestuvawa. 6. Opredeluvawe na silite (napregawata i deformaciite) vo elementite od presmetanite pomestuvawa. Diskretizacija na prostorot Prv ~ekor vo MKE e regionot na re{enieto da se podeli na podregioni, odnosno na kone~ni elementi. Formata, goleminata, brojot i orientacijata na elementite treba da se odberat soodvetno, taka {to regionot da e pretstaven {to porealno, bez nepotrebno zgolemuvawe na kompjuterskoto presmetuvawe pri opredeluvaweto na re{enieto. Formata na elementite zavisi od tipot na problemot i od formata na regionot na re{enieto. Ako regionot na re{enieto mo`e da se opi{e so edna prostorna koordinata (kako {to se pravoliniskite ili zakrivenite stapovi), toga{ mo`e da se koristat liniski ili ednodimenzionalni kone~ni elementi. Ako regionot na re{enieto e dvodimenzionalen (na pr. pravoagolna, triagolna ili kru`na plo~a), mo`e da se koristat dvodimenzionalni ili ramninski elementi. Koga se koristat kone~ni elementi so pravoliniski strani (na pr. triagolni elementi), za modelirawe na zakriveni povr{ini ili regioni so nepravilna geometrija, originalniot region ne e pretstaven kompletno. Za da se pretstavi geometrijata to~no, ponekoga{ se koristat elementi so zakriveni strani. Za da se izbegnat numeri~ki problemi, dvodimenzionalnite i trodimenzionalnite kone~ni elementi treba da imaat strani so pribli`no ednakva dol`ina. Toa zna~i deka dolgnavestite elementi treba da se odbegnuvaat. Isto taka, numeriraweto na jazlite vo koi se povrzani sosednite kone~ni elementi treba da e takvo {to da se dobiva kolku {to e mo`no pomala {irina na bendot na matricata na sistemot ravenki {to go opi{uva problemot. Op{to pravilo e jazlite da se numeriraat prvo po pokratkata strana na regionot.
NUMERI^KI METODI
175
Interpolacioni funkcii To~nosta na re{enieto so MKE zavisi od izborot na aproksimativnite (interpolacionite) funkcii. Funkcijata {to se koristi za da go aproksimira re{enieto vo sekoj kone~en element se vika interpolaciona ili funkcija na formata. Najmnogu se koristat interpolacionite funkcii vo forma na polinomi. Polinomite so ponizok red se poednostavni za primena, dodeka polinomite so povisok red podobro ja aproksimiraat to~nata funkcija na re{enieto. Pri izborot na redot na polinomot treba da se napravi kompromis pome|u to~nosta i potro{enoto kompjutersko vreme. Pritoa, kone~nite elementi se klasificiraat vo tri grupi, spored redot na interpolacioniot polinom: simpleks- elementi kompleks- elementi multipleks- elementi
Kaj simpleks- elementite se koristi linearna interpolaciona funkcija. Interpolacionata funkcija kaj kompleksniot element e polinom od povisok red. Multipleks- elementot e takov {to granicite na elementot se paralelni so koordinatnite oski (kako {to e pravoagolniot element), a interpolacionata funkcija e polinom od povisok red. Primer 1. Koristej}i go metodot na kone~ni elementi (liniski kone~ni elementi), da se opredeli dijagramot na momentite na dadenata konstrukcija od nadvore{niot tovar. Konstrukcija i koordinati na sistemot:
60 kN 1 2 2I I 3,0
E=3,16x107 kN/m2
4,0
NUMERI^KI METODI
176
[k]1=
EI/L3
3L -3
[k]2=
E2I/L3
3L -3
[K]=
EI
0.3333
{P}=
-45 0
11P/16=41.25 kN
5P/16=18.75 kN
NUMERI^KI METODI
177
0.67 {U}=[K]-1x{P}=
-2.00
-2.00 15.00
0 0 0 {p}1= {p}01+[k]1x{u}1=
=EI/27
{p}01=
3 9 -3
9 27 -9
-3 -9 3
3 12 -3
12 48 -12
-3 -12 3
41 45 19 =
30 0 30
NUMERI^KI METODI
178
11. OPTIMIZACIJA
Optimizacija
Optimizacija e proces vo koj, od mo`nite nekolku re{enija na daden problem, se selektira najdobroto re{enie. Pove}eto in`enerski problemi, kako {to se onie povrzani so analiza, proektirawe, gradewe i drugo, vklu~uvaat vo sebe donesuvawe odluki (procena, izbor). Voobi~aeno, postoi kriterium koj }e treba da se minimizira ili maksimizira dodeka se zadovoluvaat nekolku socijalni, ekonomski, fizi~ki ili tehnolo{ki ograni~uvawa (uslovi). Vo procesot na donesuvawe odluki, odnosno procena, postojat pove}e parametri ~ija vrednost mo`e da varira. So zgolemuvawe na brojot na ovie parametri, se javuva potreba od primena na sistematska (organizirana, efikasna) procedura za re{avawe na problemite na optimizacija. Vo ovaa glava e daden kratok voved vo re{avaweto na problemite na optimizacijata. Definirawe na problemot na optimizacija Formuliraweto na problemot na optimizacija vklu~uva razvivawe matemati~ki model za fizi~kiot ili za in`enerski problem. Vo praktikata, naj~esto e potrbno da se napravat nekolku pretpostavki, za da se razvie racionalen i ednostaven matemati~ki model, koj prili~no to~no mo`e da go pretstavi odnesuvaweto na sistemot. Rezultatite od optimizacijata }e bidat razli~ni za razli~ni matemati~ki modeli na eden fizi~ki sistem. Spored toa, potreben e dobar matemati~ki model, taka {to rezultatite od optimizacijata mo`e da se koristat za podobruvawe na odnesuvaweto na sistemot. Op{tiot problem na optimizacija, matemati~ki, mo`e da se postavi vo slednava forma: x1 x Find X = 2 .. x n koe ja minimizira funkcijata ograni~uvawata:
f (X ) , so dadeni funkcii na
k=1,2,.,p
NUMERI^KI METODI
Optimizacija
179
Terminologija Proektni promenlivi Set od parametri koi mo`e da se variraat za da se promeni odnesuvaweto na sistemot; set od numeri~ki vrednosti, po edna za sekoja proektna promenliva, go so~inuvaat re{enieto (prifatlivo ili neprifatlivo) na problemot na optimizacija. Funkcija na celta Koga so menuvaweto na proektnite promenlivi, }e se opredelat razli~ni re{enija, potreben e kriterium za da se proceni dali edno re{enie e podobro od drugo. Ovoj kriterium, izrazen vo funkcija od proektnite promenlivi, se vika funkcija na celta. Interesot na proektantot e da odbere soodvetni proektni promenlivi so koi }e ja minimizira ili maksimizira funkcijata na celta. Ograni~uvawa vo forma na neravenstva Vo sekoj problem, pri donesuvaweto odluka, }e postojat uslovi ili ograni~uvawa na proektnite promenlivi, koi mo`e da bidat ekonomski, fizi~ki ili funkcionalni. Vo mnogu slu~ai, validnosta na matemati~kiot model koristen za dadeniot fizi~ki sistem vnesuva ograni~uvawa na proektnite promenlivi. Ovie ograni~uvawa, izrazeni vo funkcija od proektnite promenlivi, se poznati kako funkcii na ograni~uvawata. Koga funkciite na
NUMERI^KI METODI
180
Optimizacija
ograni~uvawata mo`e da imaat samo negativna vrednost ili vrednost pogolema od nula, takvoto ograni~uvawe se vika ograni~uvawe vo forma na neravenstvo. Od druga strana, ako funkcijata na ograni~uvawata se bara da bide ednakva na nula, toa e ograni~uvawe vo forma na ravenstvo. Mo`no re[enie Sekoj set od proektni promenlivi koj gi zadovoluva ograni~uvawata na problemot, se vika mo`no re{enie. Mo`noto re{enie e prifatlivo za proektantot vo smisla na ograni~uvawata, no toa mo`e i da ne ja minimizira funkcijata na celta. Optimalno re[enie Mo`noto re{enie koe ja minimizira funkcijata na celta se vika optimalno re{enie. Problem na linerno programirawe Vo slu~aj koga site funkcii (funkcija na celta, funkcii na ograni~uvawata) izrazeni preku proektnite promenlivi se linearni, imame problem na linearno programirawe (LP-problem). Ovoj problem e naj~est optimizicionen problem vo praktikata. LP-problemot vo standardna forma se izrazuva na dolunavedeniot na~in: Da se minimizira funkcijata na celta:
f = c1 x 1 + c 2 x 2 + ...... + c n x n
a 11 x 1 + a 12 x 2 + ..... + a 1n x n = b1
a 21 x 1 + a 22 x 2 + ..... + a 2 n x n = b 2
a m1 x 1 + a m 2 x 2 + ..... + a mn x n = b m
od proektnite promenlivi x1 i x2. Konstantite c1, c2,....,cn, a11, a12, .....,amn, b1, b2,.....bm, se pretpostavuva deka se poznati. . .
NUMERI^KI METODI
Optimizacija
181
Vo standardnata forma na LP-problemot, proektnite promenlivi mora da bidat nenegativni, no postoi na~in, so voveduvawe novi promenlivi, tie da mo`e da imaat i pozitivni ili nulti vrednosti. Grafi~ko re[enie Problemot na optimizacija so dve promenlivi mo`e da se re{i so grafi~ka procedura. Vo ovoj metod, funkciite na ograni~uvawata se crtaat(grafi~ki se pretstavuvaat) vo prostorot na proektnite promenlivi i se identificira regionot na vozmo`ni re{enija, vo koj site ograni~uvawa se zadovoleni. Potoa, so grafi~ko pretstavuvawe na konturite na funkcijata na celta, go identifikuvame optimalnoto re{enie. Iako grafi~kiot metod ne e primenliv za najgolem broj prakti~ni problemi koi vklu~uvaat pove}e proektni promenlivi, toj obezbeduva grafi~ka pretstava (slika) na generalnite karakteristiki na problemite na linearnoto programirawe. Naredniot primer ja ilustrira procedurata na grafi~kata optimizacija. Primer: Eden proizvoditel proizveduva dva tipa produkti, A i B, koristej}i 3 razli~ni ma{ini. Minimalnoto potrebno ma{insko vreme za sekoj produkt i profitot od sekoj produkt se dadeni vo slednava tabela: Produkt A B Ma{ina 1 Ma{ina 2 Ma{ina 3 Potrebno ma{insko vreme (~asovi) 16 8 10 8 14 9 Profit ($) 90 110
Maksimalnoto mo`no dnevno ma{insko vreme na razli~nite ma{ini e 128, 112 i 90 ~asa. Da se opredeli brojot na produktite A i B {to treba da se proizvedat dnevno za da se obezbedni maksimalen profit. Re{enie. Neka x1 i x2 se broevi na pruduktite A i B proizvedeni za eden den. Funkciite na ograni~uvawata na maksimalniot dozvolen broj ~asovi rabota na sekoja ma{ina se:
1 : 16 x 1 + 8x 2 128
M 2 : 8x 1 + 14 x 2 112 M3 : 10x 1 + 9 x 2 90
(1)
182
Optimizacija
f = 90x 1 + 110x 2
20 15 10
A
5 0
O
B f=980,5882 D
0
-5 -10 -15 -20
5
f=0
10
15
20
NUMERI^KI METODI
Optimizacija
183
Za grafi~ko re{enie razgleduvame dvodimenzionalna grafi~ka pretstava so proektnite promenlivi x1 i x2, zemeni kako koordinati. Ograni~uvawata dadeni so neravenkite (2) poka`uvaat deka re{enieto se nao|a vo I kvadrant. Od graficite na funkciite na ograni~uvawata mo`e da se vidi deka site tie ograni~uvawa se zadovoleni vo to~kite vo granicite na {rafiranata povr{ina. Ovaa povr{ina se narekuva oblast na mo`ni re{enija (feasible space), a prika`ana e na prethodnata slika. Vo site to~ki koi le`at vo povr{inata na mo`ni re{enija (O,A,B,C i D) zadovoleni se site funkcii na ograni~uvawata. Optimalno re{enie e to~kata za koja se dobiva maksimum na funkcijata na celta. Ako koordinatite na site ovie to~ki se zamenat vo funkcijata na celta, najgolema vrednost }e se dobie za to~kata V, i toa iznesuva 980.5882 $, oa e optimalnoto re{enie ili maksimum na funkcijata na celta, ili mo`e da se ka`e deka toa e najgolem dneven profit. Opredeluvaweto optimalno re{enie na ovoj na~in e te{ko i neefikasno, bidej}i e potrebno da se opredeli vrednosta na funkcijata na celta vo sekoja ekstremna to~ka od granicata na mo`nite re{enija. Za najgolem broj prakti~ni problemi, brojot na mo`nite re{enija e mnogu golem. Vo toj slu~aj se primenuva efikasna i sistemati~na procedura za da se identificira optimalnoto re{enie pome|u mno`estvoto mo`ni re{enija, kako {to e Simplex- metodot, koj ovde nema da bide razgleduvan.
NUMERI^KI METODI
184
Primer 1: Tabli~no e zadadena nekoja funkcija. Koristej}i polinom od II red da se interpolira vrednost na funkcijata za x=3.45. Koristej}i go programot EXCEL, se vnesuvaat dadenite vrednosti za x i y vo tabela a potoa se crta grafik. Bidej}i interpolacioniot polinom treba da bide od vtor red, se biraat 3 to~ki okolu vrednosta na argumentot 3.45, a potoa za ovie 3 to~ki se crta trend linija vo forma na polinom od vtor red i se bara da se ispi{e funkcijata na ovaa trend linija na grafikot.
x 1 2 3 4 5 6 7 y 4 5 10 19 32 49 70
Polinomna trend linija od II red
35 30 25 20
P2(x)=y = 2x2 - 5x + 7
y
15 10 5 0 0 1 2 3 4 5 6
Interpolirawe vrednost na funkcijata za x=3.45 P2(3.45) = 2*(3.45)2 - 5*3.45 + 7 = 13.555 So dobienata funkcija se presmetuva vrednosta za dadenata vrednost na argumentot. Za polinom od III red bi se odbrale 4 to~ki okolu dadenata vrednost na argumentot i bi se vmetnata trend linija od treti red. Trend liniite vsu{nost pretstavuvaat vmetnuvawe na nekoja funkcija pome|u dadeni to~ki i }e ja koristime podocna pri
NUMERI^KI METODI
185
re{avawe na takvi zada~i (zada~a 5 od programite). Ovde trend linijata e iskoristena kako interpolaciona funkcija koja se provlekuva taka da pominuva niz dadenite to~ki. Za interpolacionen polinom od II red se odbiraat 3 to~ki okolu zadadeniot argument, za polinom od III red se biraat 4 to~ki. Vo toj slu~aj trend linijata pominuva niz to~kite i pretstavuva interpolaciona funkcija. Za nekoja druga vrednost na argumentot se selektiraat drugi to~ki okolu taaa vrednost. Primer 2: Dadeni se vektorite x i y. So pomo{ na programot Mathcad, so polinom od II red da se interpolira vrednost na funkcijata y(x), za x=1.5.
1 x 2 3 vs y 5 5 7 regress ( x, y , 2 ) 3 3 vs = 2 7 3 1 k = 4.75 k interp ( vs , x, y , 1.5)
Vektorot vs se opredeluva so funkcijata regress vo koja tretiot parametar e redot na polinomot so koj se interpolira vrednosta na funkcijata. Poslednite n+1 ~lena (3 ~lena) na vektorot vs se koeficientite na polinomot od II red. Vrednosta na k e interpoliranata vrednost na funkcijata koja se opredeluva so pomo{ na fumkcijata interp vo Mathcad, vo koja posledniot parametar e argumentot za koj se bara vrednost na funkcijata, x=1.5. Primer 3. Za tabli~no zadadena funkcija da se presmetaat vrednostite na prviot i vtoriot izvod na funkcijata vo to~kata i=2, x=4.4. So pomo{ na programot EXCEL se opredeluva tabelata na kone~nite razliki a potoa so formulite za numeri~ko diferencirawe, se presmetuvaat vrednostite na izvodite.
NUMERI^KI METODI
186
i 0 1 2 3 4 x=x0=4.4;
h=0.1; u=(x-x0)/h;
u=( x0-x0)/h= 0
Primer 4. Dadeniot sistem ravenki da se re{i so programot EXCEL preku inverznata matrica na matricata na sistemot.
8 3 1
3 8 -1
1 -1 8
X Y Z
7 4 6
[A]*{x}={b} MINVERSE(B36:D38)*1.0 0.1507 -0.0598 -0.026 -0.06 0.1507 0.0263 -0.026 0.0263 0.6579 0.3421 0.7105 0.1316 MMULT(C43:E45,H36:H38)*1.0
[A]-1
{x}
NUMERI^KI METODI
187
Inverznata matrica na sistemot se opredeluva vo EXCEL so funkcijata MINVERSE. Re{enieto {x} se dobiva so mno`ewe na inverznata matrica so vektorot na slobodni ~lenovi {b}. Pri toa se koristi funkcijata MMULT. Primer 5. Dadeniot sistem ravenki da se re{i so programot Mathcad.
3 1 1 M := 1 3 1 1 1 3
soln := lsolve ( M , v )
5 v := 6 7
1 ( M ) .v
1.321 -7.086
-1.188 2.085
7.086 -1.321
NUMERI^KI METODI
188
Vo Excel se formira tabela, se crta grafik so to~kite a potoa se vmetnuvaat trend linii pome|u to~kite vo forma na polinomi.
Vmetnuvawe na funkcija od I red po metodot na najmali kvadrati 8 y = 0.6584x + 0.1952 6 4 2 0 -6 -4 -2 2 4 6 -2 0 -4 y -6 Linear (y) -8
Vmetnuvawe na funkcija od III red po metodot na najmali kvadrati 8 3 26 y = -0.1593x - 0.0178x + 2.5302x + 0.2124 4 2 0 -6 -4 -2 2 4 -2 0 -4 -6 -8 y Poly. (y)
Vmetnuvawe na funkcija od II red po metodot na najmali kvadrati 8 6 2 y = -0.0372x + 0.6564x + 0.4441 4 2 0 -6 -4 -2 2 4 6 -2 0 -4 y -6 Poly. (y) -8
NUMERI^KI METODI
189
Primer 7. So programot Mathcad, da se re{i diferencijalnata ravenka y=2x2, so po~etni uslovi, x0=0, y0=2, za x[0,1], so ~ekor h=0.1. Vo mathcad ja koristime funkcijata rkfixed, koja go pretstavuva metodot na Runge-Kuta za numeri~ko re{avawe diferencijalni ravenki. Vektorot Z gi sodr`i re{enijata za funkcijata y za vrednosti na x vo granicite od 0 do 1.
x0
y0
2 2.x
2
D( x, y ) Z
rkfixed( y , 0 , 1 , 10, D )
0 0 1 2 3 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 1 2 2.001 2.005 2.018 2.043 2.083 2.144 2.229 2.341 2.486 2.667
Z=
4 5 6 7 8 9 10
Primer 8. Dadenite podatoci da se modeliraat so prava linija. Rezultatite da se pretstavat grafi~ki. So koristewe na programot EXCEL se formira tabela od dadenite vrednosti i se crta grafik. Potoa, vo grafikot pome|u dadenite vrednosti, se vmetnuva trend linija vo forma na prava linija (polinom od I red) so opcijata da se ispi{e funkcijata na grafikot. x y 0 1 1 1 2 1.5 3 2.5 4 3 5 4 6 6
NUMERI^KI METODI
190
1
7 6 5 4 3 2 1 0 0
y = 0.8036x + 0.3036
y Linear (y)
Primer 8. Dadenite podatoci da se modeliraat so prava linija vo forma:y= a0 + a1* x Rezultatite da se pretstavat grafi~ki. Zada~ata mo`e da se re{i so koristewe na funkcijata LINEST vo programot EXCEL. Se formira tabela od dadenite vrednosti i se crta grafik so to~ki. Potoa, se selektiraat dve prazni }elii vo eden red i se koristi funkcijata LINEST, koja pretstavuva vmetnuvawe na linearna funkcija pome|u dadenite to~ki. Parametrite vo ovaa funkcija se vektorot y, vektorot x, tretiot parametar e logi~ka promenliva TRUE , a ~etvrtiot parametar FALSE. Pri toa se dobiva vo prvata }elija koeficientot a1, a vo vtorata koeficientot a0. x y 1 0 1.5 2 2 3 3.5 3.5 4 5 5.5 4 6 4
6 5
1.
y = 0.6594x + 0.8578
4 3 2 1 0 0 2 4 6 8
y Linear (y)
NUMERI^KI METODI
191
Primer 9. Koristej}i go programot Mathcad, da se opredelat sopstvenite vrenosti i sopstvenite vektori na simetri~na kvadratna matrica [M].
3.75
1.25
eigenvals( M )
f=
3.136 6.294
eigenvecs( M )
F=
Se vnesuva matricata a potoa se koristat funkciite eigenvals za da se opredelat sopstvenite vrenosti i funkcijata eigenvecs za da se opredelat sopstvenite vektori na dadenata matrica. Primer 10. Koristej}i go programot Mathcad, da se opredelat sopstvenite vrenosti i sopstvenite vektori na simetri~na kvadratna matrica [A].
2 A 4.3 0.5 0.5 0.5 0.8 6
eigenvals ( A )
eigenvecs ( A ) V=
Se vnesuva matricata a potoa se koristat funkciite eigenvals za da se opredelat sopstvenite vrenosti i funkcijata eigenvecs za da se opredelat sopstvenite vektori na dadenata matrica.
NUMERI^KI METODI
192
Primer 11. Koristej}i go metodot na Runge-Kuta, vo programot Mathcad, da se opredelat re{enijata na diferencijalnata ravenka y'=3x2-y, za dadeni po~etni uslovi, x0=0, y0=1, za x vo intervalot [0,0.5], so ~ekor h=0.1.
y0
1 0 3.x
2
D( x, y ) GG
y GG =
0.1 0.906 0.2 0.826 0.3 0.766 0.4 0.728 0.5 0.717
rkfixed( y , 0 , 0.5, 5 , D )
Primer 12. Koristej}i go metodot na Runge-Kuta, vo programot Mathcad, da se opredelat re{enijata na diferencijalnata ravenka y'=y2-2x2, za dadeni po~etni uslovi, x0=0, y0=1, za x vo intervalot [0,1], so ~ekor h=0.2.
y0
1 y
2
D( x, y ) Z
2. x
rkfixedy ( , 0, 1, 5, D) Z=
NUMERI^KI METODI
Zada~i
193
13. Zada~i Interpolacija Primer 1. Tabli~no e zadadena nekoja funkcija. Koristej}i ja formulata za linearna interpolacija, da se interpolira vrednost na funkcijata za x=2.2.
x y
2 5,848
2,3 6,127
2,5 6,3
y = yk +
k
x = 2,2
k+1
y = 5,848 + y = 6,034
Primer 2. Da se opredeli polinom od tret stepen koj minuva niz dadenite to~ki: k xk yk 0 0,0 1,0 1 1,0 1,0 2 2,0 2,0 3 4,0 5,0
( x x 1 )( x x 2 )( x x 3 ) ( x 1)( x 2)( x 4) ; y0 = 1 = ( x 0 x 1 )( x 0 x 2 )( x 0 x 3 ) (0 1)(0 2)(0 4) ( x x 0 )( x x 2 )( x x 3 ) ( x 0)( x 2)( x 4) = ; y1 = 1 ( x 1 x 0 )( x 1 x 2 )( x 1 x 3 ) (1 0)(1 2)(1 4) ( x x 0 )( x x 1 )( x x 3 ) ( x 0)( x 1)( x 4) = ; y2 = 2 ( x 2 x 0 )( x 2 x 1 )( x 2 x 3 ) (2 0)(2 1)(2 4) ( x x 0 )( x x 1 )( x x 2 ) ( x 0)( x 1)( x 2) = ; y3 = 5 ( x 3 x 0 )( x 3 x 1 )( x 3 x 2 ) (4 0)(4 1)(4 2)
So zamena na ovie izrazi vo Lagran`oviot interpolacionen polinom od 3 red se dobiva funkcijata so koja e aproksimirana tabli~no zadadenata funkcija:
P ( x ) = y 0 L 0 ( x ) + y1 L1 ( x ) + y 2 L 2 ( x ) + y 3 L 3 ( x ) P( x ) = 1 ( x 3 + 9 x 2 8x + 12) 12
NUMERI^KI METODI
194
Zada~i
Primer 3. Dadena e slednava tabela: k xk yk 0 1,0 1,0 1 2,0 3,0 2 5,0 6,0 3 9,0 10,0
(6 2)(6 5)(6 9) 3 ; L 0 (6,0) = ; y 0 = 1 8 (1 2)(1 5)(1 9) (6 1)(6 5)(6 9) 5 L1 ( x ) = ; L1 (6,0) = ; y1 = 3 (2 1)(2 5)(2 9) 7 (6 1)(6 2)(6 9) 5 L 2 (x) = ; L 2 (6,0) = ; y 2 = 6 (5 1)(5 2)(5 9) 4 (6 1)(6 2)(6 5) 5 L 3 (x) = ; L 3 (6,0) = ; y 3 = 10 (9 1)(9 2)(9 5) 56 3 5 5 5 P(6,0) = 1 + 3 ( ) + 6 + 10 = 6,625 8 7 4 56 L 0 (x) =
Primer 4. Da se najde empiriska formula za funkcijata f(x) zadadena so slednava tabela. i 0 1 2 3 4 5 x 0 1 2 3 4 5 Y -3.0 0.7 3.8 6.3 8.2 9.5 y 3.7 3.1 2.5 1.9 1.3 2y -0.6 -0.6 -0.6 -0.6 3y 0 0 0
x=0.55 x=1.25
h=1.0
P( x ) = y 0 +
y 0 2 y 0 (x x 0 ) + (x x 0 ) (x x 1 ) 1!h 2!h 2
P( x ) = 3 +
3.7 0.6 ( x 0) + ( x 0) ( x 1) 1 2 1 12
NUMERI^KI METODI
Zada~i
195
Ako se bara vrednost na funkcijata za x=0.55, za x0 se zema najbliskata vrednost za x vo tabelata, a toa e x0=0, y0=-3,0, x1=1, y0=3.7, 2y0=-0.6. Ako zamenime vo Wutnovata interpolaciona formula, }e dobieme: P(0.55)=?
P(0.55) = 3 +
Za x=1.25 najbliska to~ka od tabelata e to~kata i=1 i za nea gi zemame, x0=1, y0=0.7, y0=3.1, 2y0=-0.6, a slednata to~ka e x1=2
P(0.55) = 0.7 +
Primer 5. Koristej}i ja tabelata od zada~a 1 da se opredeli vrednost na funkcijata f(x) za x=1.25, koristej}i go Lagran`oviot interpolacionen polinom od 2 red. Po~etna to~ka e vtorata to~ka od tabelata kako najbliska prethodna to~ka na to~kata so apscisa x=1.25. Zna~i, x0=1, x1=2, x2=3.
P ( x ) = y 0 L 0 ( x ) + y 1 L1 ( x ) + y 2 L 2 ( x )
L 0 (x) = (1.25 2)( x 3) = 0.65625; y 0 = 0.7 (1 2)(1 3) (1.25 1)( x 3) = 0.4375; L1 ( x ) = y 0 = 3.8 (2 1)(2 3) (1.25 1)( x 2) L 2 (x) = = 0.09375; y 0 = 6.3 (3 1)(3 2)
NUMERI^KI METODI
196
Zada~i
Numeri~ko diferencirawe Primer 6. tabli~no e zadadena nekoja funkcija so ~ekor h=0.1. Znaej}i deka taa e diferencijabilna vo dadeniot interval, da se presmeta prviot izvod za x=3.5 i za x=3.57. i 0 1 2 3 4 x 3.5 3.6 3.7 3.8 3.9 y(x)=log(x) 0.5441 0.5563 0.5682 0.5798 0.5911 y 0.0122 0.0119 0.0116 0.0113 2y -0.0003 -0.0003 -0.0003
f ' (3.5) =
Koga se bara izvod na nekoja funkcija za vrednost na argumentot {to se nao|a nazad vo dadenata tabela, toga{ se primenuva interpolacionata formula na Wutn za interpolacija nazad. Primer 7. Tabelarno se dadeni vrednostite y(x)= x za 7 argumenti so ~ekor h=0.05. y 0.02470 0.02411 0.02357 0.02307 2y -0.00059 -0.00054 -0.00050 -0.00048 na funkcijata
i 0 1 2 3
NUMERI^KI METODI
Zada~i
197
4 5 6
0.02259 0.02214
-0.00045
Da se opredelat izvodite vo to~ka k=0, odnosno x0=1.0, so pomo{ na formulite za diferencirawe dobieni od Wutnoviot interpolacionen polinom napred.
y ' (1 . 0 ) = 1 [ 0 .02470 + 0 . 000295 + 0 .000017 ] = 0 .50024 0 .05 1 [ 0 . 00059 0 . 00005 ] = 0 .256 y ' ' (1 . 0 ) = 0 . 05 2 1 y ' ' ' (1 . 0 ) = [ 0 . 00005 ] = 0 . 4 0 . 05 3
To~nite rezultati se :
y( x ) = x y' (1.0) = 0.5 y' ' (1.0) = 0.25 y' ' ' (1.0) = 0.375
Od primerot se zaklu~uva deka gre{kite se zna~itelni. Primer 8: Dadena e funkcijata y=sinx. Da se aproksimira vrednosta y i y za x=/8, koristej}i gi kone~nite razliki od prv i vtor red, so ~ekor h=/16. i x y i-2 0 0 i-1 /16 0.19509 i 2/16 0.38268 i+1 3/16 0.55557 i+2 4/16 0.70710 i+3 5/16 0.831469
y i' 1
To~no re{enie:
y i +1 y i 1 = 2h
1 2 16
198
Zada~i
To~no re{enie:
Integracija
pravilo, so ~ekor h=0.1. k 0 1 2 3 4 5 6 xk 0.4 0.5 0.6 0.7 0.8 0.9 1.0 exk 1.4918 1.6487 1.8221 2.0138 2.2255 2.4596 2.7183
5
y k = 14.7163
1
ex 1 dx = h[ y 0 + 2( y1 + y 2 + y 3 + y 4 + y 5 ) + y 6 ] = 2 0.4 x
1
ex h dx = [ y 0 + 4 y1 + 2 y 2 + 4 y 3 + 2 y 4 + 4 y 5 + y 6 ] = 3 0.4 x
1
Zada~i
/2
199
funkcijata dadeni vo tabelata. Pritoa da se koristat: a) op{tata integraciona formula dobiena od interpolacionen polinom, b) trapeznoto pravilo, v) Simpsonovoto pravilo x sin(x) 0 0 /12 0.2588 2/12 0.5 3/12 0.70711 4/12 0.86603
5/12 0.96593
6/12 1.00
Dobienite rezultati da se sporedat so to~noto re{enie koe iznesuva 1.00. a) So primena na ravenkata dobiena od Wutnoviot interpolacionen polinom za n=6:
/2
sin(x )dx = 140 12 (41 0.0 + 216 0.25882 + 27 0.5 + 272 0.70711 +
0
sin( x )dx =
sin( x )dx =
NUMERI^KI METODI
200
Zada~i
{to se poklopuva so to~noto re{enie. Primer 13. Da se primeni Gausovata integraciona formula so pet to~ki za presmetuvawe na integralot:
I=
dx ; 1 x
2
=0.693 147 18
1
z=
2x (b + a ) 2x 2 1 = = 2x 3; (b a ) 2 1
1 ; x F(z) =
dz = 2dx;
dx =
dz 2
f (x) =
1 2 2 = = z(b a ) + b + a z(2 1) + 2 + 1 z + 3 2 2 dx +1 2 dz +1 1 dz = = 1 x 1 z + 3 2 1 z + 3
Presmetuvaweto po Gausovata formula so 5 Gausovi to~ki e dadeno vo slednava tabela: Wk.f(zk) 0.113 155 29 0.194 443 51 0.189 629 62 0.135 264 33 0.060 654 37 0.693 147 12
k 1 2 3 4 5
Wk 0.236 926 89 0.478 628 67 0.568 888 89 0.478 628 67 0.236 926 89
F(zk)=1/(zk+3) 0.477 595 93 0.406 251 28 0.333 333 33 0.282 608 08 0.256 004 60
k =1
Wk f (z k )
Zada~i
201
Primer 14. Koristej}i ja Gausovata formula za integracija so 2 i so 3 Gausovi to~ki, da se proceni vrednosta na integralot za koj to~noto re{enie iznesuva:
Pritoa da se koristi formata na Gausovata formula vo koja ne se vr{i transformacija na funkcijata f(x) vo F(z). So dve Gausovi to~ki:
f (x)dx
a
z (b a ) + b + a ba n Wk f ( k ) 2 k =1 2
F =
0.61619 2 = 1.9358 2
integralot
0 1
0.5 1.22
1.0 1.414
1.5 1.58
2.0 1.73
x + 1 dx
Primer 16. Da se interpolira polinom koj minuva niz dadenite to~ki. Pritoa da se koristi Wutnoviot interpolacionen polinom napred. x y -1 3 1 3 3 27 5 75
NUMERI^KI METODI
202
Zada~i
Potoa da se opredeli povr{inata zafatena od interpoliraniot polinom vo granicite od -1,0 do 5,0 i apscisnata oska, i toa so pomo{ na Simpsonovoto pravilo za 6 intervali i so Gausovata formula so 3 Gausovi to~ki. Rezultatot da se sporedi so to~noto re{enie dobieno so direktna integracija. y 0 24 48 2y 24 24 3y 0
i 0 1 2 3
x -1 1 3 5
y 3 3 27 75
P( x ) = y 0 +
y 0 2 y 0 (x x 0 ) (x x 1 ) + (x x 0 ) + 1!h 2!h 2
3 y 0 + ( x x 0 ) ( x x 1 ) ( x x 2 ) + .... 3!h 3 24 ( x + 1) ( x 1) = 3x 2 P( x ) = 3 + 0 + 2 22
Direktna integracija: 3x 2 dx 3
1
5
x3 3
= 126
to~no re{enie.
0 -1 3
1 0 0
2 1 3
3 2 12
4 3 27
5 4 48
6 5 75
2 3x dx
h [ y 0 + 4( y1 + y 3 + y 5 ) + 2( y 2 + y 4 ) + y 6 ] = 3
=
-
NUMERI^KI METODI
Zada~i
203
b a
f ( x )dx Wk f ( x k )
k =1
z=
2x (b + a ) 2x (5 1) 2 x 4 = = (b a ) (5 + 1) 6
n 3
k 1 2 3
NUMERI^KI METODI