DODATEK NR 2. METODY ROZWIĄZYWANIA DUŻYCH UKŁADÓW RÓWNAŃ LINIOWYCH Układy rówań występujące w etodze eleetów skończoych charakteryzują sę duży rzadk dodato określoy acerza. Metody rozwązywaa układów rówań przy tego typu acerzach różą sę eco strategą od rozwązywaa dowolych układów gdyż uszą uwzględać sposoby przechowywaa acerzy w paęc koputera. D2.. METODY PRZECHOWYWANIA MACIERZY SZTYWNOŚCI Nezbyt duże zadae etody eleetów skończoych dla kostrukcj powłokowej geeruje układ rówań o rozarach rzędu 000 0000 ewadoych. Przy odpowedej ueracj stop swobody (steją bardzo złożoe procedury ueracj stop swobody korzystające z teor grafów) acerz kwadratowa układu rówań staje sę syetryczą acerzą pasową. Wystarczy zate zapaętać (w paęc operacyjej lub a dysku koputera) tylko połowę tego pasa aby oża było odtworzyć całą forację zapsaą w acerzy sztywośc kostrukcj. Macerz kwadratowa syetrycza A Macerz pasowa B kolua j wersz wersz kolua k Rys.D2. p 47
Najprostszą etodą oszczędzaa paęc jest zapsae górego (lub dolego) półpasa acerzy w prostokątej tablcy pokazaej a Rys.D2.. Zea to usytuowae eleetów acerzy w tablcy tak że eleety z główej przekątej zajdują sę w perwszej kolue pasa a eleet który perwote zajdował sę w werszu kolue j teraz będze w ty say werszu ale kolue k. Nową wartość deksu koluy oża oblczyć dzęk prostej zależośc: k = j-+. May zate B k =A j dla j. Szerokość półpasa p dla typowych acerzy jest zwykle o rząd welkośc ejsza od rozaru. Doly trójkąt tablcy B który pozostaje zawsze pusty e a węc stotego zaczea dla oszczędzaa paęc operacyjej. Ią bardzej oszczędą etodą jest etoda sky-le która polega a zapaętywau tylko tych fragetów werszy (kolu) górego lub dolego półpasa które leżą ędzy główą przekątą a ostat ezerowy eleete tablcy Rys.D2.2. 0 sy Rys.D2.2 Na Rys.D2.2 zapaętyway obszar jest zaceoway. Taka etoda przechowywaa acerzy ożlwa jest dzęk teu że w czase dekopozycj acerzy róże od zera eleety acerzy trójkątej gdy e pojawą sę w obszarach leżących poza ostat róży od zera składowy. Ma to duże zaczee gdyż zwykle w algorytach MES używa sę procedur które acerz trójkątą L zapaętują w tej sae tablcy w której paętaa była acerz sztywośc. Neregulare kształty obszaru pokazaego a Rys.D2.2 ueożlwają zorgazowae foracj w postac tablcy dwuwyarowej. 48
W etodze sky-le używa sę zate dwóch tablc jedowyarowych (wektorów) przy czy jeda z ch przechowuje lczby rzeczywste - składowe acerzy a druga deksy perwszych wyrazów kolejych werszy acerzy (Rys.D2.3). perwszy wersz drug wersz trzec wersz c 2 3 4 5 6 7 8 9 0 2 3 4 5 6 7 d 9 6 A j = C k k = d[]+j- Rys.D2.3 Mo ż etoda ta wyaga dosyć skoplkowaych operacj podczas tworzea acerzy rozwązywaa układu rówań (cągłe przelczae deksów) jest oa szeroko stosowaa gdyż zapewa bardzo efektywe wykorzystae paęc koputera. D2.2. METODA ELIMINACJI GAUSSA Metoda elacj Gaussa (w różych odaach) jest jedą z ajczęścej wykorzystywaych etod rozwązywaa układów rówań lowych typu A y gdze acerz A jest kwadratowa eosoblwa. Rozwązae rozpoczyay od przekształcea perwszego rówaa: A y A k k 2 k podstaweu tak wyzaczoej ewadoej do pozostałych rówań. Spowoduje to elację perwszej koluy w rówaach od 2 do (Rys.D2.4). Powtarzay tę operację dla acerzy A która a wyary (-)(-) otrzyując acerz A 2 o wyarach (-2)(-2) td. Przekształcea prowadzy tak długo aż otrzyay rówae z jedą ewadoą: A y z którego wyzaczay. 49
A k A y /A 2 k 0 A y Rys.D2.4. Układ rówań lowych po perwszej elacj. Moża węc powedzeć że elacja Gaussa polega a takej trasforacj acerzy układu rówań lowych która doprowadza do utworzea układu rówań z acerzą trójkątą górą: elacja Gaussa A y U y. Metoda rozwązywaa tego typu układów opsaa jest w dodatku r. Koszt etody Gaussa jest rówy 3 /3 jak oża udowodć (por. [2]) e oża zaleźć algorytu stote tańszego. W trakce elacj ewadoych w przekształceach pojawa sę cągle dzelee przez dagoalą składową acerzy A. Może sę zdarzyć że awet dla eosoblwej acerzy A k okaże sę rówe lub blske zeru co ueożlw uzyskae rozwązaa lub prowadz do dużych błędów ueryczych. Sytuacj takej oża ukąć przeprowadzając elację w y sposób. Zaa kolejośc wyboru ewadoych do elacj uożlwa wyszukae takej składowej dagoalej która jest ajwększa w acerzy A k a co za ty dze alzację błędu ueryczego. Odaa elacj Gaussa z wybore eleetu środkowego os azwę etody Gaussa-Jordaa. Zapewa oa uzyskae rozwązaa z ały błęde awet dla słabo uwarukowaych układów rówań tz. takch gdze wyzaczk acerzy A jest blsk zeru. Przykład realzacj algorytu Gaussa pokazuje zaeszczoy pożej fraget kodu źródłowego prograu PASCAL rozwązującego układy rówań lowych (procedura Gauss). 50
D2.3. METODA ITERACYJNA GAUSSA-SEIDELA Metoda teracyja (kolejych przyblżeń) Gaussa-Sedela polega a założeu że dagoale składowe acerzy są zacze wększe od składowych leżących poza przekątą. Dzęk teu oża oblczyć: A y A k k 2 k przy założeu początkowy że k = 0 dla k = 2.... Przyblżee to powtarzay dla pozostałych wartośc ewadoych: A y S S L R gdze S L - jest suą wszystkch loczyów wyrazów leżących z lewej stroy przez odpowede wartośc ewadoych a S R - suą loczyów leżących po prawej stroe : S A L k k k S A R k k k. Koleje przyblżea wartośc ewadoych wykoywae tą etodą są zbeże wtedy gdy układ rówań jest dobrze uwarukoway tz. wyrazy leżące a dagoal są wększe od składowych leżących poza ą. Tak zbudowae są acerze sztywośc etody eleetów skończoych. Modyfkacja Sedela tej etody polega a uwzględeu podczas teracj aktualych wartośc ewadoych tz. sua S L oblczaa jest z użyce ewadoych -tej teracj a sua S R a podstawe wartośc ewadoych wyzaczoych w poprzedej (-) teracj: R A y S L S gdze S L w -tej teracj. k A k k R k k k S A k - wartość ewadoej k wyzaczoa Po każdy kroku teracyjy oblczay różcę która pozwala zoretować sę w zbeżośc procesu. Iteracje oża przerwać gdy Ma tz. ajwększa z różc jest ejsza od dopuszczalego błędu oblczeń. Przy dużych układach 5
rówań etoda Gaussa-Sedela pozwala często szybcej uzyskać rozwązae ż etoda zakęta (p. etoda Gaussa-Jordaa) D2.4. METODA NADRELAKSACJI AITKENA W procese teracyjy Gaussa-Sedela zauważay że czyl wartość ewadoej przyblża sę do wartośc dokładej kroke. Atke zauważył że oża zwększyć szybkość procesu (czyl zejszyć lość ezbędych teracj) gdy oblczyy: gdze jest współczyke adrelaksacj. Wartość tego współczyka ależy dobrać a podstawe eksperyetów ueryczych. Powa oa leżeć w przedzale 0. 2. 0. Nasze oblczea pokazały że w zadaach statyk kratowc przestrzeych optyala wartość współczyka adrelaksacj wyosła.26. D2.5. INNE METODY ROZWIĄZYWANIA DUŻYCH UKŁADÓW RÓWNAŃ Układy rówań etody eleetów skończoych rozwązuje sę bardzo często etoda polegający a dekopozycj acerzy p. etodą Baachewcza-Cholesky ego opsaą w dodatku r. Koszt tej etody dla syetryczych pełych acerzy jest proporcjoaly do 3 /6 a dla acerzy pasowych występujących w zadaach MES koszt wyos p 2 /6 gdze p - jest szerokoścą półpasa acerzy. Oprócz etody Baachewcza-Choleskyego używae też są e etody dekopozycj p. etoda Crouta polegająca a rozkładze acerzy A a trzy acerze: A L DL T gdze D jest acerzą dagoalą tz. zawerającą ezerowe współczyk tylko a główej przekątej. Rozkład tak e jest jedozaczy jak rozkład Baachewcza-Choleskyego węc ajczęścej wybera sę tak składowe dagoale acerzy L aby były oe rówe jedośc. Dekopozycja Crouta bywa często używaa w rozwązywau zadań MES szczególe w zadaach elowych gdze acerz sztywośc e zawsze jest dodato określoa. Metoda Baachewcza-Choleskyego prowadzłaby wówczas do powstaa acerzy o składowych zespoloych gdyż wyrazy dagoale oblcza sę ta przez perwastkowae w etodze Crouta otrzyay zawsze acerz o współczykach rzeczywstych [2]. 52
Dekopozycja Crouta prowadz do astępujących zależośc: 2 D A L D k kk k D j 0 dla j L j 0 dla j > L 0. L j j D A L L D jj j k jk kk k dla j < Koszt dekopozycj acerzy etodą Crouta podobe jak dla etody Baachewcza - Cholesky ego proporcjoaly jest do 3 /6 dla acerzy pełych. 53
DODATEK NR 2. METODY ROZWIĄZYWANIA DUŻYCH UKŁADÓW RÓWNAŃ LINIOWYCH 47 D2.. METODY PRZECHOWYWANIA MACIERZY SZTYWNOŚCI... 47 D2.2. METODA ELIMINACJI GAUSSA... 49 D2.3. METODA ITERACYJNA GAUSSA-SEIDELA... 5 D2.4. METODA NADRELAKSACJI AITKENA... 52 D2.5. INNE METODY ROZWIĄZYWANIA DUŻYCH UKŁADÓW RÓWNAŃ... 52 54