VŠB-TU Ostrava, Fakulta elektrotechniky a informatiky

Rozměr: px
Začít zobrazení ze stránky:

Download "VŠB-TU Ostrava, Fakulta elektrotechniky a informatiky"

Transkript

1 Pavel Pras éma diplomové práce: Iterační řešení soustav lineárních rovnic s něolia pravými stranami VŠB-U Ostrava, Faulta eletrotechniy a informatiy Obor: Informatia a apliovaná matematia Vedoucí diplomové práce: Prof. RNDr. Zdeně Dostál, DSc. Ostrava, 1999

2 2 Obsah OBSAH... 2 ZNAČENÍ... 4 ÚVOD... 5 ÚVOD ZADÁNÍ ÚLOHY KLASICKÝ PŘÍSUP K ŘEŠENÍ SOUSAV LINEÁRNÍCH ROVNIC S NĚKOLIKA PRAVÝMI SRANAMI KLASICKÁ MEODA SDRUŽENÝCH GRADIENŮ MEODA PŘEDPODMÍNĚNÝCH SDRUŽENÝCH GRADIENŮ SSOR PŘEDPODMÍNĚNÍ SROVNÁNÍ KLASICKÝCH MEOD MEODY SDRUŽENÝCH GRADIENŮ PRO ŘEŠENÍ SOUSAV LINEÁRNÍCH ROVNIC S NĚKOLIKA PRAVÝMI SRANAMI MEODA BCG Předpodmíněná metoda BCG Konvergence metody BCG Vylepšení metody BCG Příčiny numericé nestability metody BCG MEODA SCG Konvergence metody SCG MEODA SBCG Popis SBCG metody Stanovení lineární závislosti vetorů SBCG jao zobecnění SCG a BCG OBECNÉ POROVNÁNÍ BCG, SCC A BSCG Porovnání výpočetní a paměťové náročnosti Shrnutí NÁVRH PARALELIZACE MEOD SDRUŽENÝCH GRADIENŮ PRO ŘEŠENÍ SOUSAV LIN. ROVNIC S NĚKOLIKA PRAVÝMI SRANAMI ZADÁNÍ ÚLOHY OBECNÉ SCHÉMA PARALELNÍHO ŘEŠIČE... 27

3 3 6.3 PRINCIPY MEZIPROCESOVÉ KOMUNIKACE NÁVRH PARALELIZACE MEODY BCG Sevenční verze BCG metody Paralelní verze BCG metody Analýza omuniačního modelu Komuniační protool metody BCG NÁVRH PARALELIZACE MEODY SCG Sevenční verze metody SCG Paralelní verze metody SCG Analýza omuniačního modelu Komuniační protool SCG NÁVRH PARALELIZACE MEODY SBCG Sevenční verze metody SBCG Paralelní verze SBCG Analýza omuniačního modelu Komuniační protool SBCG IMPLEMENACE SBCG ALGORIMU V JAZYCE C IMPLEMENAČNÍ SRAEGIE IMPLEMENACE ZÁKLADNÍCH VSUPNĚ-VÝSUPNÍCH FUNKCÍ IMPLEMENACE MAICOVÝCH OPERACÍ Násobení matice a vetoru Reprezentace řídých matic Vylepšená varianta Programová implementace řídých matic IMPLEMENACE SEKVENČNÍ VARIANY SBCG MEODY IMPLEMENACE PARALELNÍ VARIANY SBCG MEODY Implementace funcí pro meziprocesovou omuniaci Paralelní implementace funce pro násobení dvou matic Protool zpráv SBCG metody NUMERICKÉ EXPERIMENY POROVNÁNÍ NUMERICKÉ SABILIY BCG A SBCG MODELOVÝ PŘÍKLAD SYSÉMU ODESSY ESY PARALELNÍ VERZE ZÁVĚR LIERAURA... 72

4 4 Značení R n Kp-operace M S N_S n-rozměrný Eulidovsý prostor násobení matice soustavy vetorem počet soustav v master systému počet soustav ve slave systému počet nevyřešených (ativních) soustav 1 i q Necht X = [ x,..., x,..., x ] je n q matice, pa označíme: x i i-tý sloupec matice X X(:,i) i-tý sloupec matice X (syntaxe Matlabu) X transponování matice X X transponování matice X (syntaxe Matlabu) X -tá aproximace X Užité zraty CG PCG BCG SCG SBCG metoda sdružených gradientů (Conjugate Gradients Method) metoda předpodmíněných sdružených gradientů (Preconditioned CG Method) metoda bloových sdružených gradientů (Bloc CG Method) metoda postupných sdružených gradientů (Successive CG Method) metoda postupných bloových sdružených gradientů

5 Úvod Cílem této práce je praticá realizace něolia variant metod sdružených gradientů, jejich apliace pro řešení soustav lineárních rovnic s něolia pravými stranami. S tímto problémem se setáváme při numericém řešení parciálních diferenciálních rovnic, napřílad při řešení úloh tvarové optimalizace. Vznilá matice soustav je symetricá, řídá a pozitivně definitní. Klasicý přístup řešení soustav lineárních rovnic s něolia pravými stranami je založen na přímých řešičích, teré provádějí fatorizaci matice soustavy a jednotlivé soustavy řeší dopřednou a zpětnou substitucí. Je zřejmé, že výše uvedený postup přestává být efetivní pro řešení rozsáhlých soustav, neboť paměťové nároy pro uložení fatorizované matice jsou značné. Na jiném principu pracují iterační řešiče. yto metody vytvářejí posloupnost aproximovaných řešení soustavy. Matice soustavy se účastní pouze operace násobení s vetorem, její řídý charater zůstává zachován, a proto je paměťová náročnost iteračních řešičů mnohem menší než u přímých. Nevýhodou iteračních řešičů ovšem je, že řeší soustavy lineárních rovnic pouze s jednou pravou stranou. Řešení soustav s něolia pravými stranami lze sice nalézt postupně, nicméně efetivita tohoto postupu je nízá, neboť řešení těchto soustav hledáme nezávisle na předešlých řešeních. Metoda sdružených gradientů se dnes stala praticy standardem pro řešení soustav lineárních rovnic s jednou pravou stranou. Pro problémy s více pravými stranami v omerčních balících vša stále dominují přímé řešiče. Numericé experimenty nám ovšem uazují, že iterační řešiče jsou vždy paměťově méně náročné a v něterých případech navíc rychlejší než standardní přímé řešiče. Dále uváděné algoritmy rozšiřují metodu sdružených gradientů ta, aby byla efetivní i pro řešení soustav lineárních rovnic s něolia pravými stranami. Iterační řešiče pro více pravých stran můžeme rozdělit v závislosti na tom, zda jsou všechny pravé strany dostupné současně. Jiné metody použijeme, poud známe všechny pravé strany zároveň, a jiné, poud se pravé strany dozvídáme postupně. Poud známe všechny pravé strany, můžeme řešení těchto soustav použít dále uváděné bloové a postupné sdružené gradienty. V opačném případě můžeme použít modifiovanou Lanczosovu proceduru, terá spočívá ve výpočtu něolia vlastních vetorů odpovídajících nejmenším vlastním číslům matice soustavy. yto vetory se pa použijí reduci rezidua [Dostál, Vondrá, Rasmussen, 1997]. V této práci se vša budeme zabývat algoritmy, teré předpoládají, že vetory všech pravých stran jsou známy současně. 5

6 6 1. Zadání úlohy Uvažujme následující systém lineárních rovnic K X = F, (1) de K je n n symetricá pozitivně definitní matice, 1 i q 1 i q F = [ f,..., f,..., f ] je n q matice pravých stran a X = [ x,..., x,..., x ] je n q matice řešení. Úolem je efetivně nalézt řešení soustavy (1). 2. Klasicý přístup řešení soustav lineárních rovnic s něolia pravými stranami Klasicý přístup řešení (1) je založen na fatorizaci matice K. Poud použijeme LU fatorizaci, nejdříve rozložíme matici K a potom řešíme jednotlivé soustavy dopřednou a zpětnou substitucí. Paměťově i časově nejnáročnější operací u tohoto postupu je fatorizace matice K. ato fatorizace se vša provádí pouze jednou a řešení příslušných soustav s fatorizovanou maticí lze snadno zísat dopřednou a zpětnou substitucí: rozlož K = LU for i = 1,...,q vyřeš Ly = f i. vyřeš Ux i = y Přímé řešiče jsou výhodné v tom, že využívají specificých rysů soustavy, napřílad šířy pásu matice, nebo snadného řešení soustav s něolia pravými stranami. Ja již bylo uvedeno, tyto výhody přestávají platit, poud chceme řešit velé omplexní problémy, neboť paměťový prostor pro uložení fatorizované matice může být značný. Navíc fatorizace matice je obtížně paralelizovatelná operace, neboť její šálovatelnost závisí na šířce pásu matice. Výše zmíněné nevýhody přímých řešičů vedou hledání nových algoritmů, zvláště poud chceme efetivně řešit velé, např. 3D problémy s něolia pravými stranami. V posledních letech byl ve vývoji iteračních řešičů zaznamenán velý poro. Dříve často formulovaná nevýhoda, že rychlost onvergence je závislá na typu problému již zcela neplatí, neboť účinné

7 7 předpodmiňovací techniy v mnoha případech něolianásobně zlepšily výon těchto metod. 3. Klasicá metoda sdružených gradientů Dříve než objasníme principy metod sdružených gradientů, teré jsou určeny pro řešení soustav lineárních rovnic s něolia pravými stranami, odvodíme si lasicou metodu sdružených gradientů. ato metoda byla poprvé publiovaná v článu [Hestenes, Stiefel, 1952]. Uvažujme následující soustavu lineárních rovnic o n neznámých: Kx = f (3.1) de K je n n symetricá pozitivně definitní matice, f je vetor pravé strany a x je (neznámý) vetor řešení, f, x R n. Na řešení (3.1) se můžeme dívat taé jao na minimalizaci vadraticého funcionálu 1 ϕ( x) x = Kx x f, (3.2) 2 1 neboť φ( x) = Kx f, což znamená, že x = K f minimalizuje φ( x ). Minimalizace ϕ( x ) a řešení Kx = f jsou tedy evivalentní problémy. Nová aproximace řešení x může být zísána z předchozí aproximace x 1 pomocí směru p s délou rou α předpisem x = x 1 + α p (3.3) Hodnota parametru α je určena ta, aby minimalizovala ϕ( x + α p ) tedy ϕ( x 1 + α p ) = 0 (3.4) α nebo evivalentně 1, p r = p ( r 1 α Kp ) = 0 α = p r 1 / p Kp (3.5), (3.6) de r = f Kx je reziduum -té aproximace řešení x. Nový směr p hledáme ve tvaru p = r + β p (3.7) 1 1 ta, aby byl K-ortogonální předchozím směrům. uto podmínu zabezpečí relace

8 8 pi Kp j = 0 pro i j (3.8) de parametr β p Kp = je volen ta, aby platila podmína 1 0 β = p 1 Kr 1 / p 1 Kp 1 (3.9), (3.10) Pozorování Pro metodu sdružených gradientů platí: 1. pi Kp j = 0 pro i 2. ri rj = 0 pro i j a 3. p r = 0 j yto vlastnosti zaručují důležitý rys: poud počítáme na přesné aritmetice, zísáme přesné řešení maximálně po n iteracích. V praticých případech je algoritmus prováděn ta dlouho, doud norma rezidua není dostatečně malá. Vhodné ritérium uončení iteračního cylu je napřílad r > ε f, de ε je nějaé malé ladné číslo, typicy Nyní upravme vzorec pro výpočet oeficientu α. Poud dosadíme do (3.6) vzorec (3.7) a využijeme pozorování č. 3, můžeme psát α = r r p Kp Ze vzorce (3.5) plyne, že 1 1 /. (3.11) r = r α Kp. (3.12) Poud tuto rovnici vynásobíme vetorem r 1 respetive r 2, platí v souladu s pozorováním č. 2 následující vztahy: r r = α r Kp, (3.13) r r = α r Kp. (3.14) Jestliže si nyní ze vzorce (3.7) reurzivně vyjádříme r 2 a tento vztah dosadíme do (3.14), můžeme s využitím pozorování č. 1 psát r r = α p Kp. (3.15) Využitím (3.13) a (3.15) se výpočet oeficientu β zjednoduší do tvaru: β = r 1 r 1 r 2 r 2 /. (3.16)

9 9 ěmito úpravami jsme zísali efetivnější variantu algoritmu, neboť v aždé iteraci potřebujeme vypočítat pouze jednu operaci násobení matice soustavy a vetoru. Algoritmus metody sdružených gradientů lze zapsat následovně: Algoritmus CG Inicializace: = 0; r0 = f Kx0 while r > ε f do begin = + 1 if = 1 then p1 = r0 else β r r / r r p = r- 1 + β p- 1 if. u = Kp. α = r 1 r 1 / p u x = x- 1 + α p r = r- 1 α u = Metoda předpodmíněných sdružených gradientů Uvažujme znovu soustavu lineárních rovnic se symetricou pozitivně definitní maticí Kx = f. Pro urychlení onvergence můžeme použít předpodmínění. Princip metody předpodmíněných sdružených gradientů spočívá v apliaci metody sdružených gradientů na transformovaný systém lineárních rovnic de $ K Kx $$ = f$, (3.1.1) = C 1 KC 1, $x = Cx, f $ = C 1 f a C je symetricá pozitivně definitní matice, terou vybíráme ta, aby matice $ K byla dobře podmíněná, a z důvodu, terý uvedeme později, musí mít matice C 2 jednoduchou struturu. Jestliže apliujeme sdružené gradienty na soustavu (3.1.1), zísáme následující algoritmus:

10 10 Algoritmus PCG verze 1 Inicializace: = 0; r$ = f$ Kx$ 0 0 while $ r $ > ε f do begin = + 1 if = 1 then p$ r$ 1 = 0 else β = r$ r$ / r$ r$ p$ r$ p$ = β - 1 if. 1 1 α = r$ r$ / p$ C KC p$ 1 1 x$ x$ p$ = α 1 1 r$ r$ C KC p$ = -1 α. (3.1.2) V tomto případě označuje r$ f$ Kx $ $ =, respetive $x, -tou aproximaci rezidua, respetive řešení transformovaného systému. Nás vša zajímá řešení původní soustavy. Jednou z možností je zísat toto řešení z rovnice x = C 1 x$. Nicméně poud definujeme $p = Cp, $x = Cx a $r = C 1 r, vyhneme se explicitní referenci na matici C 1. Poud dosadíme do (3.1.2) a připomeneme, že f $ = C 1 f obdržíme a $x = Cx, pa Algoritmus PCG verze Inicializace: = 0; C r = C ( f Kx ) 1 while C r > ε f do begin = + 1 if = 1 then 1 Cp C r 1 = 0 0 else β = ( C r 1) ( C r 1) / ( C r 2) ( C r 2 ) 1 Cp = C r- 1 + β Cp-1 if α = ( C r 1) ( C r 1) / ( Cp ) ( C KC )( Cp ) Cx = Cx + Cp - 1 α 0

11 C r = C r- 1 α ( C KC ) Cp. (3.1.3) Označme nyní předpodmiňovač M = C 2. Nechť M je taé symetricá a pozitivně definitní matice a nechť je vetor z řešení soustavy Mz = r. Pa můžeme výše uvedený algoritmus zjednodušit do této onečné podoby: Algoritmus PCG Inicializace: = 0; r0 = f Kx0 while r > ε f do begin solve Mz = r = + 1 if = 1 then p1 = z0 else β r z / r z p = z- 1 + β p- 1 if. u = Kp. α = r 1 z 1 / p u x = x- 1 + α p r = r- 1 α u = Pozorování: 1. Lze uázat, že pro tento algoritmus platí: 1 r M r = 0 pro i j i j 1 1 p ( C KC ) p i j = 0 pro i j 2. Jmenovatel r 2z 2 = z 2 Mz 2 nebude nidy nulový, neboť M je pozitivně definitní. 3. Matice C se používá pouze při odvozování, v samotném algoritmu používáme předpodmiňovač M = C Předpodmiňovač M je vhodné volit ta, aby soustava Mz = r byla snáze řešitelná a zároveň algoritmus rychle onvergoval.

12 SSOR předpodmínění V našich experimentech jsme použili SSOR předpodmínění. Matice M se v tomto případě vypočítá vztahem 1 M = ( L + D) D ( L + D), (3.2.1) de L, respetive D, je dolní trojúhelníová část, respetive diagonála matice K. (Platí tedy K = L + D + L.) 4. Srovnání lasicých metod Ja již bylo uvedeno, pro řešení soustav lineárních rovnic s něolia pravými stranami můžeme samozřejmě použít i standardní metodu sdružených gradientů ta, že budeme postupně řešit soustavy Kx = f, Kx = f,..., q q Kx = f. Počet iterací potřebných vyřešení q soustav je vša obecně q-rát vyšší než pro soustavu s jednou pravou stranou. o znamená, že celová doba výpočtu je asi q-rát delší než doba výpočtu pro soustavu s jednou pravou stranou. Poud vša použijeme přímý řešič založený na fatorizaci matice K, pa pro aždou další pravou stranu počítáme pouze dopřednou a zpětnou substituci. Celový čas q CG LU a)

13 13 Čas výpočtu jedné soustavy CG LU q b) Obráze 4.1 Doba výpočtu metody sdružených gradientů (CG) a přímého řešiče (LU) v závislosti na počtu pravých stran a) celová doba výpočtu b) průměrná doba výpočtu na jednu pravou stranu. Porovnání rychlosti přímého a iteračního řešiče je na obrázu 4.1. Parametr q představuje počet pravých stran. Pro úlohu s jednou pravou stranou je rychlejší iterační řešič, neboť cena fatorizace u přímého řešiče je vysoá. Poud zvětšujeme počet pravých stran, stává se výhodnější použití přímého řešiče, neboť cena dopředné a zpětné eliminace je nižší než cena sdružených gradientů. Ovšem na druhé straně paměťové nároy u metody sdružených gradientů jsou vždy nižší než je tomu u přímých řešičů. Při těchto úvahách musíme vzít samozřejmě v úvahu veliost problému (počet neznámých). Pro běžné 2D simulace jsou přímé řešiče dobrou alternativou (jsou paměťově náročnější, ale celově rychlejší), nicméně pro 3D problémy už vítězí iterační řešiče ja v oblasti časové, ta i v oblasti paměťové složitosti. Hlavní důvod, proč výon metody sdružených gradientů u problémů s více pravými stranami zaostává, je ten, že řešení soustav probíhá navzájem nezávisle na sobě. o znamená, že informace, teré byly zísány při řešení předchozích soustav, nejsou použity pro řešení zbývajících soustav. Lze proto předpoládat, že souběžné řešení něolia soustav může výon sdružených gradientů zlepšit. 5. Metody sdružených gradientů pro řešení soustav lineárních rovnic s něolia pravými stranami V této apitole popíšeme principy, teré rozšíří metodu sdružených gradientů o algoritmy, teré lze použít pro efetivní řešení soustav lineárních rovnic s něolia pravými stranami.

14 Metoda BCG Metoda BCG je zobecněním lasicé metody sdružených gradientů. Uvažujme soustavu lineárních rovnic (1). Obdobně jao u metody sdružených gradientů definujme funcionál de Φ( X ) = [ φ1( x1 ),..., φi ( xi ),..., φq ( xq )] (5.1.1) 1 2 ϕ i ( x i ) = x i Kxi xi f i. (5.1.2) I v tomto případě můžeme uázat, že minimalizace Φ( X ) je řešení soustavy (1). 1 i q Předpoládejme, že -tá aproximace řešení je X = [ x,..., x,..., x ]. 1 i q Potom odpovídající reziduum R = [ r,..., r,..., r ] je definované předpisem 1 1 q q R = F KX = [ f Kx,..., f Kx ]. (5.1.3) Novou aproximaci řešení X zísáme X = X 1 + P α, (5.1.4) 1 i q de P = [ p,..., p,..., p ] je n q matice směrů, α je q q matice dély rou, terá je určena splněním podmíny tedy min Φ ( X 1 P α ), (5.1.5) α R R q q + Φ( X 1 + P α ) = 0, (5.1.6) α nebo jednodušeji P R = P ( R KP α ) =. (5.1.7) 1 0 Z podmíny olmosti R na P můžeme vyjádřit α vztahem α = ( ) 1. (5.1.8) 1 P KP P R Nový směr P hledáme ve tvaru P = R 1 + P 1β (5.1.9) ta, aby byl K-ortogonální předchozímu směru P 1, tedy aby platilo

15 15 P KP = 1 0. (5.1.10) Splnění této podmíny zaručíme q q maticí β, terá je určena předpisem 1 β = ( P KP ) P KR. (5.1.11) Poud definujeme P0 = R0 = F KX 0 a upravíme vztahy (5.1.7) a (5.1.10), můžeme napsat následující vlastnosti: 1. Pi KPj = 0 pro i j 2. R i Rj = 0 pro i j a 3. P R = 0. V souladu s těmito vlastnostmi můžeme výpočet α a β taé vyjádřit vztahy α = ( ) 1 (5.1.12) 1 1 P KP R R 1 β = ( R R ) R R (5.1.13) Podobně jao u metody standardních sdružených gradientů (CG), je důležitý fat, že při použití přesné aritmetiy může BCG metoda zísat přesné řešení nejvýše při [(n + m -1) / m] iteracích. Nicméně v praticé implementaci BCG je iterační proces uončen za splnění podmíny i i max( r > ε f, i = 1,..., q). (5.1.14) Předpodmíněná metoda BCG Poud použijeme předpodmiňovač M, pro výpočet α a směru P použijeme tyto předpisy: de α = ( ) 1, (5.1.15) 1 1 P KP R Z P = Z 1 + P 1β (5.1.16) 1 Z = M R, β 1 = ( R Z ) R Z Analogicy CG algoritmu můžeme BCG s předpodmiňovačem M napsat následovně: Algoritmus BCG [Bloc CG] Inicializace: = 0; R = F KX 0 0 i i while max( r > ε f, i = 1,..., q) do

16 16 begin. solve MZ = R = + 1 if = 1 then P1 = Z0 else 1 β = ( R 2Z 2) R Z P = Z- 1 + P- 1 β if. U = KP α = P U R Z X = X P α R = R- 1 U α ( ) Konvergence metody BCG Předpolad, že všechny soustavy rovnic onvergují ve stejné iteraci, je v praticých případech nereálný. Ja bylo uvedeno výše, iterační cylus BCG algoritmu se uončuje až v oamžiu, dy jsou normy všech reziduí menší než je předepsaná tolerance ε. Často se vša stává, že jsou něteré soustavy lineárního systému již s uspoojivou přesností vyřešeny. V těchto případech BCG zpřesňuje tyto řešení zbytečně, a navíc tento postup může vést i numericé nestabilitě celého algoritmu, neboť normy vetorů p a r, teré přísluší těmto vyřešeným soustavám, mohou být významně menší než normy 1 vetorů zbylých nevyřešených soustav, což způsobí, že matice ( R M R ) 1 a ( P KP ) 1 budou špatně podmíněny, nebo budou doonce singulární. Vylepšení metody BCG Abychom se vyhnuli výše uvedeným problémům, budeme metodu BCG provádět jen pro ty soustavy, teré ještě nejsou s dostatečnou přesností vyřešeny. Poud se při testování přesnosti řešení těchto soustav uáže, že něteré soustavy jsou již s dostatečnou přesností vyřešeny, vyjmeme je z iteračního cylu, a další iterace budeme provádět jen s dosud nevyřešenými soustavami.

17 17 Příčiny numericé nestability metody BCG Při implementaci metody BCG potřebujeme vypočítat inverzní matice 1 ( R M R ) a ( P KP ). Aby byl algoritmus BCG stabilní, je dále nutné zaručit, aby sloupcové vetory matic P a R byly lineárně nezávislé. V případě, že matice P a R nemají plnou hodnost, není metoda BCG definována. Jeliož jsou hodnosti P a R 1 shodné, stačí sledovat hodnost jen jedné z těchto matic. V literatuře se setáváme s něolia postupy ja zachovat numericou stabilitu BCG. Jednou z možností je vyjímat závislé soustavy z problému. Nicméně normy reziduí z redundantních sloupců, teré vyjímáme z iteračního procesu, nemusí být vždy nutně malé. Řešení soustav, teré odpovídají těmto vyjmutým vetorům, můžeme vypočítat zvlášť. V další seci vša uážeme daleo efetivnější postup manipulace s těmito redundantními sloupci Metoda SCG Podstatou metody SCG je využití směru, terý byl už použit řešení jedné soustavy, zísání aproximace řešení pro všechny zbylé soustavy. ato metoda může řešení soustav lineárních rovnic s něolia pravými stranami výrazně urychlit, neboť zísání nového směru je u metody sdružených gradientů drahá operace - zahrnuje násobení matice a vetoru u = Kp a vyřešení předpodmíněného systému Mz = r. Uvažujme lineární systém s q pravými stranami 1 2 m s q 1 2 m s q K[ x, x,..., x,..., x,..., x ] = [ f, f,..., f,..., f,..., f ] (5.2.1) Předpoládejme, že předpodmíněné sdružené gradienty jsou použity řešení m-té soustavy lineárního systému (v literatuře bývá tato soustava označována jao main, master nebo seed ). ento proces generuje až do -té iterace posloupnost ( L 1 KL ) -ortogonálních neboli sdružených vetorů, teré m n vytvářejí Krylovův podprostor R R. Podstatou metody je tedy využití těchto sdružených vetorů výpočtu řešení a reziduí pro soustavy ve slave systému. Řešení a rezidua slave soustav se v aždé iteraci vypočítají vztahy s s sm m x = x 1 α p (5.2.2) s s sm m r = r 1 α Kp (5.2.3) Parametr α sm s vychází z podmíny, že vetor r tedy je olmý vetoru p m,

18 18 s ( r ) p m s = 0 ( r sm m m Kp ) p = 1 α 0 (5.2.4) Pro výpočet parametru α sm pa dostáváme vztah α sm ( r ) p = ( p ) Kp s 1 m m m (5.2.5) Popis SCG metody Při inicializaci vybereme (libovolnou) soustavu ze systému lineárních rovnic a označíme ji jao master. Zbývající soustavy tvoří slave systém. Jamile je master systém s požadovanou přesností vyřešen, vyjmeme ho z problému a ze slave systému vybereme další soustavu, terou označíme jao master. Na tento nový master systém spustíme znovu metodu sdružených gradientů. Řešení, respetive rezidua slave soustav, atualizujeme v aždé iteraci vzorcem (5.2.2), respetive vzorcem (5.2.3). Iterační proces ončí v oamžiu, dy jsou všechny soustavy s požadovanou přesností vyřešeny. Metodu SCG s předpodmiňovačem M pro řešení soustav lineárních rovnic s něolia pravými stranami můžeme zapsat následovně: Algoritmus SCG i i i Inicializace: = 0; r0 = f Kx0, i = 1,..., q for m = 1 until q do begin /* Pro všechny soustavy */ new_main = RUE m m while r > ε f do begin m solve Mz = r = + 1 if new_main then new_main = FALSE p = z 1 else m β m ( r ) z / ( r ) z p = z- 1 + β p- 1 if. u = Kp = δ = p u for j = m until q do begin /* slave systém je (m+1,...,q) */

19 19... α j = ( r 1) z 1 / δ j j x = x + p j 1 α j 1 α r = r u Konvergence metody SCG Pro studium onvergenčních vlastností slave systému separujeme vetor pravé strany f s do omponent ( f s ) a ( f s ) ta, aby platil vztah s s s f = ( f ) + ( f ), (5.2.6) de s ( f ) s m ( f ) f m = m m f = ξ f ( f ) f m s ( f ) s m = f ξ f (5.2.7) Na řešení slave soustavy se můžeme dívat jao na řešení dvou následujících soustav lineárních rovnic: s s K( x ) = ( f ) (5.2.8) s s K( x ) = ( f ) (5.2.9) s s s x = ( x ) + ( x ) (5.2.10) Pro jednoduchost předpoládejme, že počáteční aproximace řešení x 0 je nulový vetor. Proto můžeme psát: m m r0 = f (5.2.11) s s r0 = f (5.2.12) s ( ) s r ( f ) 0 = (5.2.13) s s ( r ) = ( f ) (5.2.14) 0

20 20 Z minimalizační vlastnosti slave systému plyne, že slave systém s s K( x ) = ( f ) bude mít stejnou rychlost onvergence jao master systém, tedy že jeho rezidua splňují podmínu: s ( ) s r γ ( r ) 1 K 0 1 K m = γ ( ξr ) K 0 1 (5.2.15) de γ = ( ( κ ) 1) / ( ( κ ) + 1 ), κ je číslo podmíněnosti matice K, a je číslo iterace. Rezidua olmé části slave systému můžeme vyjádřit jao: s s s ( r ) = ( f ) K( f ) s sm = ( r ) ( α ) 0 j = 1 j Kp m j sm j m 0 0 j 0 j = 1 s m = r ξr ( α ) K r s = ( I P + 1) r, (5.2.16) 0 = + 1 j 1 m j = 1 j 0 s de P r η K r je projece z r s do Krylova prostoru z master m systému R a η + 1 j je onstantní oeficient. Kombinací výše uvedených výsledů dostáváme: s s s r = ( r ) + ( r ) 1 K 1 K s m ( I P ) r + γ ξ r (5.2.17) K 0 1 K Nyní můžeme formulovat následující onvergenční vlastnosti. 1. Jestliže je r s olmý R m, tedy ξ = 0 a P r s m+ 1 0 = 0, pa nelze očeávat žádné zlepšení rychlosti onvergence slave systému. 2. Jestliže je r s rovnoběžný r m ( ( r s ) = 0 nebo r s je obsažený v R m ), pa P = + 1 I a norma rezidua slave systému se bude zmenšovat stejně rychle jao norma rezidua master systému. 3. Jestliže je r s obsažen v K m s 0 R +1, tedy ξ = 0 a ( I P +1) r0 = 0, pa je s slave systém vyřešen přesně a r = 0. 0

21 21 Poud se norma rezidua slave systému nezmenšila pod požadovanou m toleranci, přemístíme slave systém do master systému, nastavíme r s 0 r a na tento nový master systém spustíme znovu metodu sdružených gradientů. V následujícím textu budeme označovat vetor, terý byl v předchozím master systému, závorou (např. r m ). Vetor, terý je nyní v master systému, budeme označovat bez závory (např. r m ). Nechť l je celový počet iterací předchozího master systému. Pro studium vlastností nynější master soustavy připomeneme, že počáteční rezidua jsou olmá e Krylovu podprostoru z předchozího master systému, tedy m m ( r ) 0 v = 0 pro všechna v R l, (5.2.18) m m m l m 1 de R l = span{ r0, Kr0,..., K r0 } = span{ p1,..., p l }. Nynější master systém bude generovat směry rozšířením nového Krylova podprostoru m m l 1 m R l = span{ r0, Kr0,..., K r0 } = span{ p1,..., p l } (5.2.19) Předchozí a nynější směry lze v Krylovu podprostoru vyjádřit: j p = η K r i i j= 1 i j 1 m 0 j 1 pi = η j K r j= 1 m 0 (5.2.20) (5.2.21) Nyní chceme uázat, že: ( p ) i p j = 0 pro 1 j l i + 1 (5.2.22) K tomu potřebujeme doázat, že aždá složa p j je olmá p i, tedy j 1 m ( p ) ( K r0 ) = 0 pro 1 j l i + 1 (5.2.23) i Využitím symetrie matice K dostáváme: i j 1 m m j m ( pi ) ( K r ) = K r ( K r ) η 0 0 = 1 = i j+ 2 m m η K r 0 ( r0 ) (5.2.24) = 1

22 22 i 2 = 1 j+ m Poud je j + i - 2 menší než l - 1, pa výraz η K r 0 je obsažen v předchozím Krylovu podprostoru, a ten je proto olmý nynějšímu reziduu, to znamená, že r m 0 i j m j+ m m ( p ) ( K r ) = 1 K r ( r ) i 2 0 η 0 0 = 0. (5.2.25) = 1 Závěr tohoto pozorování je ten, že vetory p i a p j vytvářejí dva Krylovy podprostory, teré jsou si pro i + j l + 1 navzájem ortogonální. Zvláště poud j nepřeročí l / 2, systém p,..., p, p,..., p, terý má dimenzi 2i, vytváří bázi podprostoru: 1 i 1 * m m i 1 m m m i 1 m R = span{ r, Kr,..., K r ; r, Kr,..., K r } i 1 = span{ Z, KZ,..., K Z}, (5.2.26) m m de Z = { r0, r0 }. edy, pro počet iterací menší než l/2 je nynější master systém matematicy evivalentní s metodou bloových sdružených gradientů a prvních l / 2 iterací z nynějšího master systému onverguje stejně rychle jao metoda BCG. i Metoda SBCG Ja bylo uvedeno výše, poud se v iteračním cylu metody BCG uáže, že matice směrů P a matice reziduí R nemají plnou hodnost, musíme příslušné závislé soustavy vyjmout z problému. Nabízí se otáza, ja lze efetivně zísat řešení těchto závislých soustav. Elegantní metodu formulovali Suarjana a Law [Suarjana, Law, 1994]. Navrhují vyjímat závislé soustavy pouze z procesu K- ortogonalizace a příslušná řešení těchto závislých soustav počítat bloovou formou SCG algoritmu. uto metodu pojmenovali Successive Bloc Conjugate Gradient (SBCG). Algoritmus zavádí podobně jao SCG dvě supiny soustav: master (účastní se procesu K-ortogonalizace) slave (neúčastní se procesu K-ortogonalizace, obsahuje lineárně závislé sloupce) Řešení soustav, teré jsou v master systému se počítají bloovými sdruženými gradienty. Zbylé soustavy, teré jsou ve slave systému se dopočítají bloovou formou metody SCG.

23 23 Popis SBCG metody Při inicializaci jsou všechny soustavy označené jao master. Slave systém tedy neobsahuje žádnou soustavu. Jestliže se dyoliv v iteračním cylu zjistí, že něteré sloupce matice P nebo R ztratily svou lineární nezávislost, přemístíme soustavy, teré odpovídají těmto závislým sloupcům z master do slave systému. ím máme zajištěnu stabilitu řešení, neboť proces K- ortogonalizace pa bude vždy prováděn pouze s lineárně nezávislými maticemi. Jedna z výhod této metody je, že soustavy, teré přemístíme do slave systému, onvergují současně se soustavami, teré zůstaly v master systému. ato vlastnost platí, neboť rezidua slave systému jsou v podprostoru reziduí master systému. Je tedy splněna druhá podmína onvergenční vlastnosti SCG algoritmu, terá zajišťuje, že soustavy v master i slave systému onvergují současně. SBCG algoritmus s předpodmiňovačem M je uveden níže. Algoritmus SBCG [Successive Bloc CG] Inicializace: = 0; R0 = F KX 0 m = [ 1,...,q], s = [] /* master = všechny soustavy */ m m while ( r > ε f ) do begin m solve MZ = R = + 1 if = 1 then P1 = Z0 else m 1 β m = (( R 2) Z 2) ( R 1) Z 1 P = Z- 1 + P- 1 β if. Lin. závislé soustavy přesuň z master do slave systému U = KP. mm m m sm s s [ α, α ] ( 1 ) [( m ),( s = P U R 1 Z 1 R 1) Z 1 ] m s mm sm [ X,X ] = [ X 1,X 1] + P [ α, α ] m s mm sm [ R, R ] = [ R 1, R 1] U [ α, α ]

24 24 Stanovení lineární závislosti vetorů Pro zaručení numericé stability SBCG metody potřebujeme zaručit, aby soustavy, teré jsou v master systému, měly vždy lineárně nezávislé sloupce matic P a R. Připomeňme, že tento požadave se řeší přesouváním lineárních soustav z master do slave systému. Nechť máme vetory p i a p j. Úhel mezi těmito vetory je definován předpisem pi p j cos( φ ) = p p i j (5.3.1) Poud je φ = 0, pa platí p p i j p p = 1 (5.3.2) i j a vetor p i vyjmeme z master systému, neboť je lineárně závislý na p j. Praticé zušenosti s chováním SBCG algoritmu nám vša uázaly, že vyjímat soustavy z master systému až v oamžiu, dy již jsou lineárně závislé, není efetivní. K numericé nestabilitě při výpočtu inverzí R Z a P U 2 2 dochází v master systému díy zaorouhlovacím chybám v počítači i v případě, dy sloupce matic P respetive R jsou již téměř lineárně závislé. Proto jsme jao ritérium pro stanovení lineární závislosti vetorů p i a p j vzali splnění podmíny pi p j 1 < coef, (5.3.3) p p i j de coef je oeficient lineární závislosti. Poud je podmína (5.3.3) splněna, odstraníme i-tou soustavu z master systému. SBCG jao zobecnění SCG a BCG Na SBCG se můžeme dívat jao na zobecnění SCG metody. V SCG algoritmu obsahoval master systém právě jednu soustavu. V SBCG může master systém obsahovat více než jednu soustavu. Poud bude obsahovat master systém SBCG pouze jednu soustavu, přejde SBCG v SCG algoritmus.

25 25 Poud budou všechny soustavy v master systému, SBCG přejde v BCG algoritmus. Chování SBCG algoritmu ovlivňuje velou měrou veliost oeficientu coef. Pozorování 1. Poud je coef libovolné číslo větší než 1, SBCG přejde na SCG algoritmus, neboť podmína přechodu soustavy do slave systému (5.3.3) je splněna pro jaéoliv dva vetory p i a p j. Master systém bude tedy vždy obsahovat právě jednu soustavu. 2. Poud se coef blíží jedničce, převládá successive charater SBCG, neboť podmína přechodu soustavy do slave systému (5.3.3) je snadněji splnitelná a proto soustavy opouštějí master systém snadno. 3. Poud se coef blíží nule, bude převládat bloový charater SBCG, neboť podmína (5.3.3) přechodu soustavy do slave systému se stává méně snadno splnitelnou, a proto soustavy opouštějí master systém pomaleji. 4. Poud zvolíme za coef číslo menší než 0, podmína (5.3.3) přechodu soustavy do slave systému nebude nidy splněna, to znamená, že počet slave soustav bude vždy nulový. SBCG tedy přejde na BCG algoritmus. Optimální veliost oeficientu coef je nutné vybrat na záladě numericých experimentů. 5.4 Obecné porovnání BCG, SCC a BSCG V následující tabulce je uvedeno porovnání principů výše zmiňovaných algoritmů při řešení soustavy lineárních rovnic s q pravými stranami. Údaje v tabulce se týají pouze jedné iterace metody. Proces K- ortogonalizace SCG SBCG BCG prováděn jen pro lin. nezávislé soustavy prováděn jen pro jednu soustavu prováděn pro všechny soustavy Počet master M = 1 M < 1; q > M = q soustav Počet násobení Kpoper = 1 Kpoper < 1; q > Kpoper = q matice a vetoru Počet slave S = q - 1 S < 0; q 1> S = 0 soustav abula Porovnání principů SCG, SBCG a BCG

26 26 Porovnání výpočetní a paměťové náročnosti Počet iterací u BCG metody je sice obvyle menší než u SCG, ale na druhé straně výpočetní náročnost jedné iterace je menší u SCG, neboť BCG metoda provede toli operací násobení matice a vetoru, (Kp-operací), oli je nevyřešených soustav, zatímco SCG metoda provádí vždy pouze jednu Kpoperaci. Na druhé straně - násobení matice a vetoru, teré probíhá v jedné iteraci BCG metody, jsou na sobě nezávislé operace a mohou být vyonávány souběžně na více procesorech. Srovnání paměťové náročnosti je v tabulce Nejméně paměti vyžaduje SCG algoritmus. Paměť se ušetří při procesu K-ortogonalizace, terá je vždy vyonávána jen pro jednu soustavu. Data SCG SBCG BCG Z, P, U n 1 n M n q β 1 M M q q α 1 q M q q q X, R n q n q n q abula Porovnání paměťové náročnosti SCG, SBCG a BCG Shrnutí V této části v rátosti shrneme výhody a nevýhody SCG, BCG a SBCG algoritmů. 1. BCG výhoda: současné řešení soustav vede větší rychlosti onvergence a efetivní paralelizaci nevýhoda: numericá nestabilita - metoda obecně není stabilní 2. SCG výhoda: snadná a paměťově nenáročná implementace, numericá stabilita - metoda vždy onverguje nevýhoda: veliost zrychlení závisí na typu pravých stran. V nejhorším případě nemusí dojít oproti standardním sdruženým gradientům žádnému zrychlení 3. SBCG výhoda: spojuje výhody obou záladních přístupů nevýhoda: poměrně obtížná implementace

27 27 6 Návrh paralelizace metod sdružených gradientů pro řešení soustav lin. rovnic s něolia pravými stranami V této apitole se budeme zabývat analýzou a návrhy paralelních implementací metod BCG, SCG a SBCG pro multiprocesorové systémy s distribuovanou pamětí. Vycházet budeme z algoritmů publiovaných v předchozí apitole. Algoritmy napíšeme v syntaxi programovacího jazya Matlab, terý je dnes v podstatě standardem v maticovém počítání. 6.1 Zadání úlohy Uvažujme soustavu lineárních rovnic s q-pravými stranami (1). uto soustavu chceme řešit nějaým paralelním algoritmem na víceprocesorovém počítači. Aby výsledný program fungoval co možná nejlépe, měl by být přizpůsoben pro onrétní výpočetní systém, na terém bude spouštěn. Při návrhu musíme vzít v úvahu typ architetury paralelního počítače, počet a rychlost procesorů a výonnost meziprocesorové omuniace. 6.2 Obecné schéma paralelního řešiče Úlohy budeme řešit na počítači IBM SP. Jedná se o symetricý multiprocesorový systém s osmi RISC procesory, teré jsou propojeny vysoorychlostní sběrnicí. Jedná se tedy o výonný paralelní počítač s distribuovanou pamětí a s relativně malým počtem procesorů. Poud porovnáme výon jednotlivých procesorů a rychlost meziprocesorové omuniace, uáže se, že cena omuniace mezi procesory je poměrně vysoá. V našem návrhu se proto nebudeme bránit repliaci výpočtů, poud se tím sníží počet předávaných zpráv. Budeme se taé snažit rozdělit problém (1) na supinu relativně nezávislých úloh. Rodičovsý proces vytvoří q dětsých procesů. i-tý dětsý proces bude řešit i-tou soustavu systému. Obecné schéma paralelního řešiče je následující: Rodičovsý proces: 1. Načti parametry úlohy, vytvoř q dětsých procesů 2. for i = 1:q Pošli i-tému dětsému procesu parametry úlohy. 3. for i = 1:q Přijmi od i-tého dětsého procesu řešení soustavy x i. 4. Konec

28 28 i-tý dětsý proces: 1. Přijmi od rodičovsého procesu parametry a data úlohy i i 2. Vyřeš soustavu x = Kf 3. Pošli rodičovsému procesu řešení x i 4. Konec 6.3 Principy meziprocesové omuniace Procesy, teré jsou spuštěny na paralelním počítači s distribuovanou pamětí, spolu mohou omuniovat pouze prostřednictvím předávaných zpráv. Potřebujeme tedy zavést jazy, terý by tuto ativitu popisoval. Jedna z možností je použít s / receive notaci: s( {matice}, {cíl} ) recv( {matice}, {originál} ) Jestliže např. i-tý proces provede s( A, j), potom tato instruce zopíruje matici A, terá je uložena na i-tém procesu a pošle ji j-tému procesu. Matice může být samozřejmě řádu 1 1 nebo n 1. V těchto případech se posílá salár nebo vetor. Jestliže j-tý proces provede instruci recv( A, i), potom je vyonávání programu v tomto procesu zastaveno do té doby, doud tento proces nepřijme matici A od i-tého procesu. V následujících apitolách se budeme zabývat druhým roem dětsého procesu, tedy samotným řešením soustav. Nejdříve uvedeme sevenční verze, z nich potom odvodíme paralelní verze algoritmů BCG, SCG a SBCG. Komuniační protool se bude držet zásady, že proces pošle data dalším procesům ja jen to bude možné a bude je přijímat až v oamžiu, dy je sutečně potřebuje. 6.4 Návrh paralelizace metody BCG Sevenční verze BCG metody Implementace BCG metody v syntaxi jazya Matlab je uvedena níže. Vetor m obsahuje množinu indexů master soustav, ve teré jsou pořadová čísla nevyřešených soustav. Při inicializaci obsahuje vetor m pořadová čísla všech soustav. Funce nrmtst provádí ontrolu relativní přesnosti řešení a atualizuje vetor m. V případě, že je soustava s požadovanou přesností vyřešena, je její

29 29 index z této množiny vyjmut. Je-li množina m prázdná, všechny soustavy jsou vyřešeny a BCG algoritmus se uončí. function X = bcg( K, F, repsil, coef ) /* repsil - rel. přesnost řešení */ = 0; Kpoper = 0; new = 1 q = size(f,2) /* Zjištění počtu pravých stran */ m = 1:q /* Master obsahuje indexy všech pravých stran*/ M = precond(k) /* Výpočet předpodmínění */ X = zeros(size(f)); R = F; P = R for i = 1:q, /* Výpočet epsil */ epsil(i) = repsil * norm(r(:,i)) while 1 Z(:,m) = M \ R(:,m) ZR(m,m) = Z(:,m) * R(:,m) = + 1 if new == 1 new = 0 P(:,m) = Z(:,m) else beta = ZRold(m,m) \ ZR(m,m) P(:,m) = Z(:,m) + oldp(:,m) * beta U(:,m) = K * P(:,m) Kpoper = Kpoper + size(m,2) UP(m,m) = U(:,m) * P(:,m) alfa = UP(m,m) \ ZR(m,m) X(:,m) = X(:,m) + P(:,m) * alfa R(:,m) = R(:,m) - U(:,m) * alfa m = nrmtst( R(:,m), m, epsil(m)) /* Odstraň indexy vyřešených soustav */ if size(m,2)== 0, /* Poud je master prázdný, onec */ brea ZRold(m,m) = ZR(m,m) Pold(:,m) = P(:,m)

30 30 Paralelní verze BCG metody Poud vyjdeme ze sevenční verze BCG algoritmu, dostaneme následující paralelní verzi: function X = bcg_palg( K, F, repsil) = 0; Kpoper = 0; new = 1 q = size(f,2); m = 1:q M = precond(k); X = zeros(size(f)); R = F; P = R for i = 1:q epsil(i) = repsil * norm(r(:,i)) while 1 for i = m Z(:,i) = M \ R(:,i) (1) for i = m ZR(m,i) = Z(:,m) * R(:,i) (2) = + 1 if new == 1 (3) new = 0 for i = m P(:,i) = Z(:,i) else for i = m beta = ZRold(m,m) \ ZR(m,i) P(:,i) = Z(:,i) + oldp(:,m) * beta for i = m U(:,i) = K * P(:,i) (4) Kpoper = Kpoper + size(m,2) for i = m UP(m,i) = U(:,m)' * P(:,i) (5) for i = m alfa = UP(m,m) \ ZR(m,i) (6), (7) X(:,i) = X(:,i) + P(:,m) * alfa

31 31 R(:,i) = R(:,i) - U(:,m) * alfa m = nrmtst( R(:,i), m, epsil(i)) (8) if size(m,2) == 0, brea for i = m ZRold(:,i) = ZR(:,i) (9) Pold(:,i) = P(:,i) Z principu BCG algoritmu plyne, že všechny dětsé procesy jsou si rovnocenné. Následující tabula uazuje data, terá jsou dostupná na i-tém dětsém procesu a data, terá jsou nutná výpočtu řešení. Nutná data Dostupná data i-tý proces i-tý proces Z(:,m) Z(:,i) ZR([m,i],i) ZR(i,i) P(:,m) P(:,i) U(:,m) U(:,i) UP(m,m) UP(i,i) X(:,i) X(:,i) R(:,i) R(:,i) abula Přehled nutných a dostupných dat v i-tém procesu BCG metody Obsahy sloupců tabuly jsou různé. Je zřejmé, že zísání všech potřebných dat se neobejde bez meziprocesové omuniace. Seznam a parametry všech reducí prováděných v BCG metodě jsou uvedeny v následující tabulce. Zrata comp znamená výpočet. Reduce i-tý proces Veliost zprávy Z(:,m) s( Z(:,i), [m-i]) recv( Z(:,m-i), [m-i]) (M-1)n (M-1)n P(:,m), U(:,m) ZR(m,m) obdobně jao Z(:,m) comp ZR(i,i) reduce Z(:,m) comp ZR(m-i,i)

32 32 s(zr(m,i),[m-i]) (M-1)M recv(zr(m,m-i),[m-i]) (M-1)M UP(m,m) obdobně jao ZR(m,m) abula Seznam reducí prováděných v BCG metodě Reduce matice Z(:,m) i-tý proces (i m) vypočítá vetor Z(:,i) a rozešle ho všem zbývajícím procesům. Potom přijme od zbývajících procesů příspěvy Z(:,m-i). Reduce matice ZR(m,m) Po provedení reduce Z(:,m) má již aždý proces tuto matici, a proto může vypočítat součin ZR(m,i) = Z(:,m) * R(:,i). Výslede tohoto součinu je vetor ZR(m,i). i-tý proces jej následně rozešle všem zbývajícím master procesům. Poté tento proces přijme od zbývajících master procesů matici ZR(m,m-i). Obdobně se postupuje i při reduci matice UP(m,m). Analýza omuniačního modelu Poud analyzujeme omuniační model, zjistíme, že zprávy mají něteré společné parametry, viz tabula Poud je odesílatelem zprávy i-tý proces, potom příjemci této zprávy jsou všechny zbývající procesy (m - i). Odesílatel Počet Příjemce Počet odesílatelů příjemců i-tý proces, i m M m - i M - 1 abula Společné parametry zpráv Počet zpráv Zabývejme se nyní počtem zpráv, terý musí i-tý proces rozeslat (i m), aby se provedla reduce matice Z(:,m). Každý proces rozešle svůj příspěve matice Z všem zbývajícím procesům - těch je M - 1. Celový počet odeslaných zpráv pro jeden proces je tedy M - 1. Obdobný výslede platí i pro počet přijímaných zpráv. Každý proces dostane od zbývajících procesorů zprávu s jejich příspěvem Z, celem tedy přijme M - 1 zpráv. Počet zpráv i-tý proces odeslaných M - 1 přijatých M - 1 abula a) Počet zpráv odeslaných a přijatých jedním procesem

33 33 Počet zpráv i-tý proces odeslaných M (M - 1) přijatých M (M - 1) abula b) Počet zpráv odeslaných a přijatých všemi procesy Celový počet odeslaných (respetive přijatých) zpráv v systému je roven součtu odeslaných (respetive přijatých) zpráv všemi procesory. Pro BCG algoritmus je tento počet rovný M 2 - M. Stejné výsledy pochopitelně obdržíme i při reduci P(:,m), U(:,m), ZR(m,m) a UP(m,m). Komuniační protool metody BCG Komuniační protool metody BCG je uveden níže. Příspěvy ZR(m,i) a UP(m,i) jsou počítány průběžně a nečeá se tedy na zaslání všech slože vetorů Z(:,m), P(:,m), respetive U(:,m). 1) Výpočet Z(:,m) = M \ R(:,m) Master Poznáma Z(:,i) = M \ R(:,i) Řešení předpodmínění 2) Výpočet ZR(m, m) = Z(:,m) * R(:,m), reduce ZR(m,[m,i]) Master Poznáma s( Z(:,i), [m - i] ) Rozešli vetor Z(:,i) ZR(i,i) = Z(:,i) * R(:,i) Vypočítej ZR(i,i) for j = m - i Přijmi od zbývajících recv( Z(:,j), j) ZR(j,i)= Z(:,j) * R(:,i) procesů Z(:,m-i) Vypočítej ZR(m-i,i) s( ZR(m, i), [m - i] ) for j = m - i recv( ZR(m, j), j) Rozešli vetor ZR(m,i) Přijmi od zbývajících procesů ZR(m,j) 3) Výpočet P(:,m) Master if new == 1 new = 0 P(:,i) = Z(:,i) else Poznáma

34 34 beta = Zrold(m,m) \ ZR(m,i) P(:,i)=Z(:,i) + oldp(:,m)*beta Vypočítej oeficient beta a i-tý sloupec matice P 4) Výpočet U(:,m) = K * P(:,m) Master Poznáma U(:,i) = K * P(:,i) Vypočítej i-tý sloupec matice U 5) Výpočet UP(m,i) = U(:,m)' * P(:,i), reduce UP(m,m) Master Poznáma s( U(:,i), [m - i] ) Rozešli vetor U(:,i) UP(i,i) = U(:,i) * P(:,i) Vypočítej UP(i,i) for j = m - i Přijmi od zbývajících recv( U(:,j), j) UP(j,i)= U(:,j) *P(:,i) procesů U(:,m-i) Vypočítej UP(m-i,i) s( UP(m, i), [m - i] ) for j = m - i recv( UP(m, j), j) Rozešli UP(m,i) Přijmi od masteru UP(m,j) 6) Rozeslání P(:,m) (nutný pro výpočet X(:,i), i m) Master Poznáma s( P(:,i), [m - i] ) Rozešli P(:,i) 7) Výpočet alfa, R(:,m), příjmutí P(:,m), výpočet X(:,[m,s]) Master Poznáma alfa = UP(m,m) \ ZR(m,i) R(:,i) = R(:,i) - U(:,m) * alfa for j = m - i Přijmi P(:,m-i) recv( P(:,j), j) X(:,i) = X(:,i) + P(:,m) * alfa 8) estování přesnosti řešení Master Poznáma m = nrmtst( R(:,i), m, epsil(i)) Při vyřešení své soustavy informuj zbývající procesy a uonči se.

35 35 9) Atualizace ZRold(m,m) a Pold(:,m) pro novou iteraci BCG Master Poznáma ZRold(:,i) = ZR(:,i) Pold(:,i) = P(:,i) 6.5 Návrh paralelizace metody SCG Sevenční verze metody SCG Implementace SCG metody v syntaxi jazya Matlab je uvedena níže. Z principu SCG algoritmu plyne, že master soustava je pouze jedna. Její pořadové číslo je zapsáno ve vetoru m. Jeliož je počet master soustav roven jedné, vetor m obsahuje jen jedno číslo. Vetor s obsahuje pořadová čísla všech slave soustav. Funce nrmtst provádí ontrolu relativní přesnosti řešení master soustavy a všech slave soustav. Popišme si nyní, ja se může během iteračního cylu měnit obsah proměnné m a vetoru s. Při inicializaci SCG metody obsahuje proměnná m index první soustavy, indexy všech zbylých soustav jsou uloženy ve vetoru s. Soustava může být vyjmuta z master systému pouze tehdy, je-li vyřešena. Soustava může být vyjmuta ze slave systému při splnění jedné z následujících podmíne: soustava je vyřešena master systém je prázdný. V tomto případě se přesune jeden index slave soustavy do master soustavy. V případě, že jsou obě množiny indexů prázdné, jsou všechny soustavy vyřešeny a SCG algoritmus se uončí. function X = scg( K, F, repsil) = 0; Kpoper = 0; new = 1 q = size(f,2) m = 1 /* Master obsahuje index první pravé strany */ s = 2:q /* Slave obsahuje indexy zbývajících pravých stran */ M = precond(k) X = zeros(size(f)); R = F; p = R(:,m) for i = 1:q, /* výpočet epsil*/ epsil(i) = repsil * norm(r(:,i)) while 1

36 36 z = M \ R(:,m) zr([m,s]) = z * R(:,[m,s]) = + 1 if new == 1 new = 0 p = z else beta = zr(m) / zroldm p = z + beta * p u = K * p Kpoper = Kpoper + 1 up= u * p alfa = zr([ma,sl]) / up X(:,[m,s]) = X(:,[m,s]) + p * alfa R(:,[m,s]) = R(:,[m,s]) - u * alfa m = nrmtst( R(:,m), m, epsil(m)) s = nrmtst( R(:,s), s, epsil(s)) if size(m,2)== 0, /* Poud je master prázdný, přesuň 1. index ze slave do master */ if size(s,2)~= 0, m = s(1); s(1) = [ ]; new = 1 else /* Poud je prázdný i slave, onec */ brea zroldm=zr(m) Paralelní verze metody SCG Poud vyjdeme ze sevenční verze SCG algoritmu, dostaneme následující paralelní verzi: function X = scg_palg( K, F, repsil) = 0; Kpoper = 0; new = 1 q = size(f,2); m = 1; s = 2:q M = precond(k); X = zeros(size(f)); R = F; p = R(:,m) for i = 1:q epsil(i) = repsil * norm(r(:,i))

37 37 while 1 z = M \ R(:,m) (1) for i = [m,s] zr(i) = z * R(:,i) (2) = + 1 if new == 1 (3) new = 0 p = z else beta = zr(m) / zroldm p = z + beta * p u = K * p (4) Kpoper = Kpoper + 1 up= u * p (5, 6) for i = [m,s] alfa = zr(i) / up (7) X(:,i) = X(:,i) + p * alfa R(:,i) = R(:,i) - u * alfa [m,s] = nrmtst( R(:,i), [m,s], epsil(i)) (8) if size(m,2) == 0, if size(s,2) ~= 0, m = s(1); s(1) = [ ]; new = 1 else brea zroldm=zr(m) (9) Z principu SCG algoritmu plyne, že dětsé procesy se dělí na master a slave procesy. Master proces je vždy pouze jeden. Následující tabula uazuje data, terá jsou dostupná na i-tém dětsém procesu a data, terá jsou nutná výpočtu řešení. Nutná data i: [Master, Slave] z zr(i) Dostupná data i: Master i: Slave z zr(i)

38 38 p u up X(:,i) R(:,i) p u up X(:,i) R(:,i) X(:,i) R(:,i) abula Závislost dostupnosti dat na typu dětsého procesu Obsahy prvních dvou sloupců tabuly jsou stejné. Master proces nepotřebuje od slave procesů žádná data. Jiná situace je u slave procesu. Slave proces potřebuje výpočtu vetory z, p, a u. ato data si tedy musí vyžádat od master procesu. Seznam a parametry všech reducí prováděných v SCG metodě jsou uvedeny v následující tabulce. Reduce i: Master proces Veliost zprávy i: Slave proces Veliost zprávy z s( z, s) Sn recv( z, m) n p u obdobně jao vetor z obdobně jao vetor z zr(i) up comp zr(i) reduce z reduce z comp zr(i) comp up s( up, s) S*1 recv( up, m) 1 abula Seznam reducí prováděných v SCG metodě Reduce vetoru z Popišme si, ja bude probíhat omuniace při reduci vetoru z. Komuniace bude záviset na tom, zda daný proces je master nebo slave. Komuniace master procesu Předpoládejme, že i-tý proces je master. Pa tento proces vypočítá vetor z a rozešle ho všem slave procesům. Komuniace slave procesu Z principu SCG algoritmu plyne, že slave proces nepočítá vetor z. Proto slave proces nic neposílá, nýbrž tento vetor přijme od master procesu. Reduce zr(i) Po provedení reduce vetoru z mají již všechny procesy tento vetor, a proto mohou vypočítat součin zr(i) = z * R(:,i). Obdobně můžeme postupovat i při reduci up. Jediný rozdíl je v tom, že slave procesy nic nepočítají a přijmou od master procesu celý oeficient up.

39 39 Další možností je, že aždý slave proces si vypočítá oeficient up sám. (Repliace výpočtů.) Analýza omuniačního modelu Poud analyzujeme omuniační model, zjistíme, že zprávy mají něteré společné parametry. Odesílatelem zprávy je vždy master proces, příjemci této zprávy jsou všechny slave procesy. Odesílatel Počet odesílatelů Příjemce Počet příjemců m 1 s S abula Společné parametry zpráv Počet zpráv Zabývejme se nyní počtem zpráv, terý musí aždý proces rozeslat, aby se provedla reduce dat z tabuly Počet zpráv závisí na tom, zda daný proces je master nebo slave. V případě, že se jedná o master proces, rozešle tento proces vetor z všem slaveům - těch je S. Celový počet zpráv, teré rozešle master proces, je tedy S. Slave procesy nerozesílají žádné zprávy. Počet přijatých zpráv taé závisí na typu procesu. Master proces nepřijímá žádné zprávy. Slave proces přijímá data od master procesu. Protože v SCG metodě je jen jeden master proces, přijme aždý slave proces právě jednu zprávu. Celový počet přijatých a odeslaných zpráv pro jeden a dále pro všechny procesy, je uveden v následujících tabulách. Počet zpráv Master Slave odeslaných přijatých S abula 6.5.4a) Počet zpráv odeslaných a přijatých jedním procesem Počet zpráv Master Slave odeslaných přijatých 1 S 0 0 S 1 abula 6.5.4b) Počet zpráv odeslaných a přijatých všemi procesy Celový počet odeslaných (respetive přijatých) zpráv v systému je roven součtu odeslaných (respetive přijatých) zpráv master procesem a všemi slave procesy. Pro SCG algoritmus je tento počet rovný počtu slave soustav S. Stejné výsledy pochopitelně obdržíme i při reduci p, u, zr(i) a up - viz tabula

40 40 Komuniační protool SCG Komuniační protool SCG metody je uveden níže. 1) Výpočet z = M \ R(:,m) Master Slave Poznáma z = M \ R(:,i) m: Řešení předpodmínění 2) Výpočet zr(i) Master Slave Poznáma s( z, s) m: Rozešli vetor z zr(i) = z * R(:,i) m: Vypočítej zr(i) recv( z, m) zr(i) = z * R(:,i) s: Přijmi od master procesu vetor z s: Vypočítej zr(i) 3) Výpočet vetoru p Master Slave Poznáma if new == 1 new = 0 p = z else beta = zr(m) / zroldm p = z + beta * p m: Vypočítej oeficient beta a vetor p 4) Výpočet u = K * p Master Slave Poznáma u = K * p Slave nepotřebují matici K 5) Výpočet oeficientu up = u * p, rozeslání up a vetoru u Master Slave Poznáma s( u, s ) m: Rozešli vetor u up = u * p m: Vypočítej up s( up, s ) m: Rozešli up recv( up, m) s: Přijmi od master procesu oeficient up 6) Rozeslání vetoru p (nutný pro výpočet X(:,i), i s ) Master Slave Poznáma s( p, s ) m: Rozešli vetor p

Metoda konjugovaných gradientů

Metoda konjugovaných gradientů 0 Metoda onjugovaných gradientů Ludě Kučera MFF UK 11. ledna 2017 V tomto textu je popsáno, ja metodou onjugovaných gradientů řešit soustavu lineárních rovnic Ax = b, de b je daný vetor a A je symetricá

Více

4. Přednáška: Kvazi-Newtonovské metody:

4. Přednáška: Kvazi-Newtonovské metody: 4 Přednáša: Kvazi-Newtonovsé metody: Metody s proměnnou metriou, modifiace Newtonovy metody Efetivní pro menší úlohy s hustou Hessovou maticí Newtonova metoda (opaování): f aproximujeme loálně vadraticou

Více

MATEMATIKA II V PŘÍKLADECH

MATEMATIKA II V PŘÍKLADECH VYSOKÁ ŠKOL BÁŇSKÁ TECHICKÁ UIVERZIT OSTRV FKULT STROJÍ MTEMTIK II V PŘÍKLDECH CVIČEÍ Č 0 Ing Petra Schreiberová, PhD Ostrava 0 Ing Petra Schreiberová, PhD Vysoá šola báňsá Technicá univerzita Ostrava

Více

VYBRANÉ PARTIE Z NUMERICKÉ MATEMATIKY

VYBRANÉ PARTIE Z NUMERICKÉ MATEMATIKY VYBRANÉ PARTIE Z NUMERICKÉ MATEMATIKY Jan Krejčí 31. srpna 2006 jkrejci@physics.ujep.cz http://physics.ujep.cz/~jkrejci Obsah 1 Přímé metody řešení soustav lineárních rovnic 3 1.1 Gaussova eliminace...............................

Více

Úlohy nejmenších čtverců

Úlohy nejmenších čtverců Úlohy nejmenších čtverců Petr Tichý 7. listopadu 2012 1 Problémy nejmenších čtverců Ax b Řešení Ax = b nemusí existovat, a pokud existuje, nemusí být jednoznačné. Často má smysl hledat x tak, že Ax b.

Více

1 Gaussova kvadratura

1 Gaussova kvadratura Cvičení - zadání a řešení úloh Zálady numericé matematiy - NMNM0 Verze z 7. prosince 08 Gaussova vadratura Fat, že pro něterá rovnoměrná rozložení uzlů dostáváme přesnost o stupeň vyšší napovídá, že pro

Více

0.1 Úvod do lineární algebry

0.1 Úvod do lineární algebry Matematika KMI/PMATE 1 01 Úvod do lineární algebry 011 Vektory Definice 011 Vektorem aritmetického prostorur n budeme rozumět uspořádanou n-tici reálných čísel x 1, x 2,, x n Definice 012 Definice sčítání

Více

Aplikovaná numerická matematika - ANM

Aplikovaná numerická matematika - ANM Aplikovaná numerická matematika - ANM 3 Řešení soustav lineárních rovnic iterační metody doc Ing Róbert Lórencz, CSc České vysoké učení technické v Praze Fakulta informačních technologií Katedra počítačových

Více

0.1 Úvod do lineární algebry

0.1 Úvod do lineární algebry Matematika KMI/PMATE 1 01 Úvod do lineární algebry 011 Lineární rovnice o 2 neznámých Definice 011 Lineární rovnice o dvou neznámých x, y je rovnice, která může být vyjádřena ve tvaru ax + by = c, kde

Více

Co je obsahem numerických metod?

Co je obsahem numerických metod? Numerické metody Úvod Úvod Co je obsahem numerických metod? Numerické metody slouží k přibližnému výpočtu věcí, které se přesně vypočítat bud nedají vůbec, nebo by byl výpočet neúměrně pracný. Obsahem

Více

Připomenutí co je to soustava lineárních rovnic

Připomenutí co je to soustava lineárních rovnic Připomenutí co je to soustava lineárních rovnic Příklad 2x 3y + z = 5 3x + 5y + 2z = 4 x + 2y z = 1 Soustava lineárních rovnic obecně Maticový tvar: a 11 x 1 + a 12 x 2 + + a 1n x n = b 1 a 21 x 1 + a

Více

Soustavy. Terminologie. Dva pohledy na soustavu lin. rovnic. Definice: Necht A = (a i,j ) R m,n je matice, b R m,1 je jednosloupcová.

Soustavy. Terminologie. Dva pohledy na soustavu lin. rovnic. Definice: Necht A = (a i,j ) R m,n je matice, b R m,1 je jednosloupcová. [1] Terminologie [2] Soustavy lineárních rovnic vlastnosti množin řešení metody hledání řešení nejednoznačnost zápisu řešení Definice: Necht A = (a i,j ) R m,n je matice, b R m,1 je jednosloupcová matice.

Více

Dnešní látka Opakování: normy vektorů a matic, podmíněnost matic Jacobiova iterační metoda Gaussova-Seidelova iterační metoda

Dnešní látka Opakování: normy vektorů a matic, podmíněnost matic Jacobiova iterační metoda Gaussova-Seidelova iterační metoda Předmět: MA 4 Dnešní látka Opakování: normy vektorů a matic, podmíněnost matic Jacobiova iterační metoda Gaussova-Seidelova iterační metoda Četba: Text o lineární algebře v Příručce přežití na webových

Více

Soustavy linea rnı ch rovnic

Soustavy linea rnı ch rovnic [1] Soustavy lineárních rovnic vlastnosti množin řešení metody hledání řešení nejednoznačnost zápisu řešení a) soustavy, 10, b) P. Olšák, FEL ČVUT, c) P. Olšák 2010, d) BI-LIN, e) L, f) 2009/2010, g)l.

Více

stránkách přednášejícího.

stránkách přednášejícího. Předmět: MA 4 Dnešní látka Iterační metoda Jacobiova iterační metoda Gaussova-Seidelova iterační metoda Superrelaxační metoda (metoda SOR) Metoda sdružených gradientů Četba: Text o lineární algebře v Příručce

Více

3. Mocninné a Taylorovy řady

3. Mocninné a Taylorovy řady 3. Mocninné a Taylorovy řady A. Záladní pojmy. Obor onvergence Mocninné řady jsou nejjednodušším speciálním případem funčních řad. Jsou to funční řady, jejichž členy jsou mocninné funce. V této apitole

Více

Matematika (CŽV Kadaň) aneb Úvod do lineární algebry Matice a soustavy rovnic

Matematika (CŽV Kadaň) aneb Úvod do lineární algebry Matice a soustavy rovnic Přednáška třetí (a pravděpodobně i čtvrtá) aneb Úvod do lineární algebry Matice a soustavy rovnic Lineární rovnice o 2 neznámých Lineární rovnice o 2 neznámých Lineární rovnice o dvou neznámých x, y je

Více

Matice. Modifikace matic eliminační metodou. α A = α a 2,1, α a 2,2,..., α a 2,n α a m,1, α a m,2,..., α a m,n

Matice. Modifikace matic eliminační metodou. α A = α a 2,1, α a 2,2,..., α a 2,n α a m,1, α a m,2,..., α a m,n [1] Základní pojmy [2] Matice mezi sebou sčítáme a násobíme konstantou (lineární prostor) měníme je na jiné matice eliminační metodou násobíme je mezi sebou... Matice je tabulka čísel s konečným počtem

Více

příkladů do cvičení. V textu se objeví i pár detailů, které jsem nestihl (na které jsem zapomněl) a(b u) = (ab) u, u + ( u) = 0 = ( u) + u.

příkladů do cvičení. V textu se objeví i pár detailů, které jsem nestihl (na které jsem zapomněl) a(b u) = (ab) u, u + ( u) = 0 = ( u) + u. Několik řešených příkladů do Matematiky Vektory V tomto textu je spočteno několik ukázkových příkladů které vám snad pomohou při řešení příkladů do cvičení. V textu se objeví i pár detailů které jsem nestihl

Více

(iv) D - vybíráme 2 koule a ty mají různou barvu.

(iv) D - vybíráme 2 koule a ty mají různou barvu. 2 cvičení - pravděpodobnost 2102018 18cv2tex Definice pojmů a záladní vzorce Vlastnosti pravděpodobnosti Pravděpodobnost P splňuje pro libovolné jevy A a B následující vlastnosti: 1 0, 1 2 P (0) = 0, P

Více

1 0 0 u 22 u 23 l 31. l u11

1 0 0 u 22 u 23 l 31. l u11 LU dekompozice Jedná se o rozklad matice A na dvě trojúhelníkové matice L a U, A=LU. Matice L je dolní trojúhelníková s jedničkami na diagonále a matice U je horní trojúhelníková. a a2 a3 a 2 a 22 a 23

Více

7.3.9 Směrnicový tvar rovnice přímky

7.3.9 Směrnicový tvar rovnice přímky 739 Směrnicový tvar rovnice přímy Předpolady: 7306 Pedagogicá poznáma: Stává se, že v hodině nestihneme poslední část s určováním vztahu mezi směrnicemi olmých příme Vrátíme se obecné rovnici přímy: Obecná

Více

f (k) (x 0 ) (x x 0 ) k, x (x 0 r, x 0 + r). k! f(x) = k=1 Řada se nazývá Taylorovou řadou funkce f v bodě x 0. Přehled některých Taylorových řad.

f (k) (x 0 ) (x x 0 ) k, x (x 0 r, x 0 + r). k! f(x) = k=1 Řada se nazývá Taylorovou řadou funkce f v bodě x 0. Přehled některých Taylorových řad. 8. Taylorova řada. V urzu matematiy jsme uázali, že je možné funci f, terá má v oolí bodu x derivace aproximovat polynomem, jehož derivace se shodují s derivacemi aproximované funce v bodě x. Poud má funce

Více

β 180 α úhel ve stupních β úhel v radiánech β = GONIOMETRIE = = 7π 6 5π 6 3 3π 2 π 11π 6 Velikost úhlu v obloukové a stupňové míře: Stupňová míra:

β 180 α úhel ve stupních β úhel v radiánech β = GONIOMETRIE = = 7π 6 5π 6 3 3π 2 π 11π 6 Velikost úhlu v obloukové a stupňové míře: Stupňová míra: GONIOMETRIE Veliost úhlu v oblouové a stupňové míře: Stupňová míra: Jednota (stupeň) 60 600 jeden stupeň 60 minut 600 vteřin Př. 5,4 5 4 0,4 0,4 60 4 Oblouová míra: Jednota radián radián je veliost taového

Více

7.3.9 Směrnicový tvar rovnice přímky

7.3.9 Směrnicový tvar rovnice přímky 7.3.9 Směrnicový tvar rovnice přímy Předpolady: 7306 Pedagogicá poznáma: Stává se, že v hodině nestihneme poslední část s určováním vztahu mezi směrnicemi olmých příme. Vrátíme se obecné rovnici přímy:

Více

Tento dokument obsahuje zadání pro semestrální programy z PAA. Vypracování. vypracovanou úlohu podle níže uvedených zadání. To mimo jiné znamená, že

Tento dokument obsahuje zadání pro semestrální programy z PAA. Vypracování. vypracovanou úlohu podle níže uvedených zadání. To mimo jiné znamená, že Kapitola Zadání Tento dokument obsahuje zadání pro semestrální programy z PAA. Vypracování alespoň jedné úlohy je nutnou podmínkou pro úspěšné složení zkoušky resp. získaní (klasifikovaného) zápočtu (viz.

Více

1 Mnohočleny a algebraické rovnice

1 Mnohočleny a algebraické rovnice 1 Mnohočleny a algebraické rovnice 1.1 Pojem mnohočlenu (polynomu) Připomeňme, že výrazům typu a 2 x 2 + a 1 x + a 0 říkáme kvadratický trojčlen, když a 2 0. Číslům a 0, a 1, a 2 říkáme koeficienty a písmenem

Více

Numerické metody a programování. Lekce 4

Numerické metody a programování. Lekce 4 Numerické metody a programování Lekce 4 Linarní algebra soustava lineárních algebraických rovnic a 11 a 12 x 2 a 1, N x N = b 1 a 21 a 22 x 2 a 2, N x N = b 2 a M,1 a M,2 x 2 a M,N x N = b M zkráceně A

Více

Necht tedy máme přirozená čísla n, k pod pojmem systém lineárních rovnic rozumíme rovnice ve tvaru

Necht tedy máme přirozená čísla n, k pod pojmem systém lineárních rovnic rozumíme rovnice ve tvaru 2. Systémy lineárních rovnic V této kapitole se budeme zabývat soustavami lineárních rovnic s koeficienty z pole reálných případně komplexních čísel. Uvádíme podmínku pro existenci řešení systému lineárních

Více

Buckinghamův Π-teorém (viz Barenblatt, Scaling, 2003)

Buckinghamův Π-teorém (viz Barenblatt, Scaling, 2003) Bucinghamův Π-teorém (viz Barenblatt, Scaling, 2003) Formalizace rozměrové analýzy ( výsledné jednoty na obou stranách musí souhlasit ). Rozměr fyziální veličiny Mějme nějaou třídu jednote, napřílad [(g,

Více

2. Schurova věta. Petr Tichý. 3. října 2012

2. Schurova věta. Petr Tichý. 3. října 2012 2. Schurova věta Petr Tichý 3. října 2012 1 Podobnostní transformace a výpočet vlastních čísel Obecný princip: Úloha: Řešíme-li matematickou úlohu, je často velmi vhodné hledat její ekvivalentní formulaci

Více

Vektory a matice. Obsah. Aplikovaná matematika I. Carl Friedrich Gauss. Základní pojmy a operace

Vektory a matice. Obsah. Aplikovaná matematika I. Carl Friedrich Gauss. Základní pojmy a operace Vektory a matice Aplikovaná matematika I Dana Říhová Mendelu Brno Obsah 1 Vektory Základní pojmy a operace Lineární závislost a nezávislost vektorů 2 Matice Základní pojmy, druhy matic Operace s maticemi

Více

Návrh vysokofrekvenčních linkových transformátorů

Návrh vysokofrekvenčních linkových transformátorů inové transformátory inové transformátory Při požadavu na transformaci impedancí v široém frevenčním pásmu, dy nelze obsáhnout požadovanou oblast mitočtů ani široopásmovými obvody, je třeba použít široopásmových

Více

Dnešní látka: Literatura: Kapitoly 3 a 4 ze skript Karel Rektorys: Matematika 43, ČVUT, Praha, Text přednášky na webové stránce přednášejícího.

Dnešní látka: Literatura: Kapitoly 3 a 4 ze skript Karel Rektorys: Matematika 43, ČVUT, Praha, Text přednášky na webové stránce přednášejícího. Předmět: MA4 Dnešní látka: Od okrajových úloh v 1D k o. ú. ve 2D Laplaceův diferenciální operátor Variačně formulované okrajové úlohy pro parciální diferenciální rovnice a metody jejich přibližného řešení

Více

9 Kolmost vektorových podprostorů

9 Kolmost vektorových podprostorů 9 Kolmost vektorových podprostorů Od kolmosti dvou vektorů nyní přejdeme ke kolmosti dvou vektorových podprostorů. Budeme se zabývat otázkou, kdy jsou dva vektorové podprostory na sebe kolmé a jak to poznáme.

Více

SOUSTAVY LINEÁRNÍCH ALGEBRAICKÝCH ROVNIC

SOUSTAVY LINEÁRNÍCH ALGEBRAICKÝCH ROVNIC SOUSTAVY LINEÁRNÍCH ALGEBRAICKÝCH ROVNIC Pojm: Algebraická rovnice... rovnice obsahující pouze celé nezáporné mocnin neznámé, tj. a n n + a n 1 n 1 +... + a 2 2 + a 1 + a 0 = 0, kde n je přirozené číslo.

Více

FP - SEMINÁŘ Z NUMERICKÉ MATEMATIKY. Katedra matematiky a didaktiky matematiky Technická univerzita v Liberci

FP - SEMINÁŘ Z NUMERICKÉ MATEMATIKY.   Katedra matematiky a didaktiky matematiky Technická univerzita v Liberci FP - SEMINÁŘ Z NUMERICKÉ MATEMATIKY Dana Černá http://www.fp.tul.cz/kmd/ Katedra matematiky a didaktiky matematiky Technická univerzita v Liberci OBSAH A CÍLE SEMINÁŘE: Opakování a procvičení vybraných

Více

Soustavy lineárních rovnic-numerické řešení. October 2, 2008

Soustavy lineárních rovnic-numerické řešení. October 2, 2008 Soustavy lineárních rovnic-numerické řešení October 2, 2008 (Systém lin. rovnic) Systém rovnic a 11 x 1 + a 12 x 2 + + a 1n x n = b 1 a 21 x 1 + a 22 x 2 + + a 2n x n = b 2... a n1 x 1 + a n2 x 2 + + a

Více

Matematika 1 MA1. 2 Determinant. 3 Adjungovaná matice. 4 Cramerovo pravidlo. 11. přednáška ( ) Matematika 1 1 / 29

Matematika 1 MA1. 2 Determinant. 3 Adjungovaná matice. 4 Cramerovo pravidlo. 11. přednáška ( ) Matematika 1 1 / 29 Matematika 1 11. přednáška MA1 1 Opakování 2 Determinant 3 Adjungovaná matice 4 Cramerovo pravidlo 5 Vlastní čísla a vlastní vektory matic 6 Zkouška; konzultace; výběrová matematika;... 11. přednáška (15.12.2010

Více

4 všechny koeficienty jsou záporné, nedochází k žádné změně. Rovnice tedy záporné reálné kořeny nemá.

4 všechny koeficienty jsou záporné, nedochází k žádné změně. Rovnice tedy záporné reálné kořeny nemá. Přílad 1. Řešte v R rovnici x 4x + x 4 0. Výslede vypočtěte s přesností alespoň 0,07. 1) Reálné ořeny rovnice budou ležet v intervalu ( 5,5), protože největší z oeficientů polynomu bez ohledu na znaméno

Více

1.5.7 Prvočísla a složená čísla

1.5.7 Prvočísla a složená čísla 17 Prvočísla a složená čísla Předpolady: 103, 106 Dnes bez alulačy Číslo 1 je dělitelné čísly 1,, 3,, 6 a 1 Množinu, terou tvoří právě tato čísla, nazýváme D 1 množina dělitelů čísla 1, značíme ( ) Platí:

Více

Numerické metody a programování

Numerické metody a programování Projekt: Inovace výuky optiky se zaměřením na získání experimentálních dovedností Registrační číslo: CZ.1.7/2.2./28.157 Numerické metody a programování Lekce 4 Tento projekt je spolufinancován Evropským

Více

1 Linearní prostory nad komplexními čísly

1 Linearní prostory nad komplexními čísly 1 Linearní prostory nad komplexními čísly V této přednášce budeme hledat kořeny polynomů, které se dále budou moci vyskytovat jako složky vektorů nebo matic Vzhledem k tomu, že kořeny polynomu (i reálného)

Více

2D transformací. červen Odvození transformačního klíče vybraných 2D transformací Metody vyrovnání... 2

2D transformací. červen Odvození transformačního klíče vybraných 2D transformací Metody vyrovnání... 2 Výpočet transformačních koeficinetů vybraných 2D transformací Jan Ježek červen 2008 Obsah Odvození transformačního klíče vybraných 2D transformací 2 Meto vyrovnání 2 2 Obecné vyjádření lineárních 2D transformací

Více

1 Vektorové prostory.

1 Vektorové prostory. 1 Vektorové prostory DefiniceMnožinu V, jejíž prvky budeme označovat a, b, c, z, budeme nazývat vektorovým prostorem právě tehdy, když budou splněny následující podmínky: 1 Je dáno zobrazení V V V, které

Více

a vlastních vektorů Příklad: Stanovte taková čísla λ, pro která má homogenní soustava Av = λv nenulové (A λ i I) v = 0.

a vlastních vektorů Příklad: Stanovte taková čísla λ, pro která má homogenní soustava Av = λv nenulové (A λ i I) v = 0. Výpočet vlastních čísel a vlastních vektorů S pojmem vlastního čísla jsme se již setkali například u iteračních metod pro řešení soustavy lineárních algebraických rovnic. Velikosti vlastních čísel iterační

Více

Reprezentace přirozených čísel ve Fibonacciho soustavě František Maňák, FJFI ČVUT, 2005

Reprezentace přirozených čísel ve Fibonacciho soustavě František Maňák, FJFI ČVUT, 2005 Reprezentace přirozených čísel ve ibonacciho soustavě rantiše Maňá, JI ČVUT, 2005 Úvod Ja víme, přirozená čísla lze vyádřit různými způsoby Nečastěi zápisu čísel používáme soustavu desítovou, ale umíme

Více

Globální matice konstrukce

Globální matice konstrukce Globální matice konstrukce Z matic tuhosti a hmotnosti jednotlivých prvků lze sestavit globální matici tuhosti a globální matici hmotnosti konstrukce, které se využijí v řešení základní rovnice MKP: [m]{

Více

Soustavy lineárních rovnic-numerické řešení

Soustavy lineárních rovnic-numerické řešení Soustavy lineárních rovnic-numerické řešení November 9, 2008 Soustavy lineárních rovnic-numerické řešení 1 / 52 (Systém lin. rovnic) Systém rovnic a 11 x 1 + a 12 x 2 + + a 1n x n = b 1 a 21 x 1 + a 22

Více

Nalezněte obecné řešení diferenciální rovnice (pomocí separace proměnných) a řešení Cauchyho úlohy: =, 0 = 1 = 1. ln = +,

Nalezněte obecné řešení diferenciální rovnice (pomocí separace proměnných) a řešení Cauchyho úlohy: =, 0 = 1 = 1. ln = +, Příklad Nalezněte obecné řešení diferenciální rovnice (pomocí separace proměnných) a řešení Cauchyho úlohy: a) =, 0= b) =, = c) =2, = d) =2, 0= e) =, 0= f) 2 =0, = g) + =0, h) =, = 2 = i) =, 0= j) sin+cos=0,

Více

Co jsme udělali: Au = f, u D(A)

Co jsme udělali: Au = f, u D(A) Předmět: MA4 Dnešní látka: Od okrajových úloh v 1D k o. ú. ve 2D Laplaceův diferenciální operátor Variačně formulované okrajové úlohy pro parciální diferenciální rovnice a metody jejich přibližného řešení

Více

Podobnostní transformace

Podobnostní transformace Schurova věta 1 Podobnostní transformace a výpočet vlastních čísel Obecný princip: Úloha: Řešíme-li matematickou úlohu, je často velmi vhodné hledat její ekvivalentní formulaci tak, aby se řešení úlohy

Více

1 Projekce a projektory

1 Projekce a projektory Cvičení 3 - zadání a řešení úloh Základy numerické matematiky - NMNM20 Verze z 5. října 208 Projekce a projektory Opakování ortogonální projekce Definice (Ortogonální projekce). Uvažujme V vektorový prostor

Více

P. Rozhodni, zda bod P leží uvnitř, vně nebo na kružnici k. Pokud existují, najdi tečny kružnice procházející bodem P.

P. Rozhodni, zda bod P leží uvnitř, vně nebo na kružnici k. Pokud existují, najdi tečny kružnice procházející bodem P. 756 Tečny ružnic II Předpolady: 45, 454 Pedagogicá poznáma: Tato hodina patří na gymnázium mezi početně nejnáročnější Ačoliv jsou přílady optimalizované na co nejmenší početní obtížnost, všichni studenti

Více

Dynamické programování

Dynamické programování Dynamické programování prof. Ing. Pavel Tvrdík CSc. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze c Pavel Tvrdík, 2010 Efektivní algoritmy (BI-EFA)

Více

[1] LU rozklad A = L U

[1] LU rozklad A = L U [1] LU rozklad A = L U někdy je třeba prohodit sloupce/řádky a) lurozklad, 8, b) P. Olšák, FEL ČVUT, c) P. Olšák 2010, d) BI-LIN, e) L, f) 2009/2010, g)l. Viz p. d. 4/2010 Terminologie BI-LIN, lurozklad,

Více

SPOTŘEBITELSKÝ ÚVĚR. Na začátku provedeme inicializaci proměnných jejich vynulováním příkazem "restart". To oceníme při opakovaném použití dokumentu.

SPOTŘEBITELSKÝ ÚVĚR. Na začátku provedeme inicializaci proměnných jejich vynulováním příkazem restart. To oceníme při opakovaném použití dokumentu. Úloha 1 - Koupě nového televizoru SPOTŘEBITELSKÝ ÚVĚR Chceme si oupit nový televizor v hodnotě 000,-Kč. Bana nám půjčí, přičemž její úroová sazba činí 11%. Předpoládejme, že si půjčujeme na jeden ro a

Více

Lineární algebra : Násobení matic a inverzní matice

Lineární algebra : Násobení matic a inverzní matice Lineární algebra : Násobení matic a inverzní matice (8. přednáška) František Štampach, Karel Klouda frantisek.stampach@fit.cvut.cz, karel.klouda@fit.cvut.cz Katedra aplikované matematiky Fakulta informačních

Více

Geometrická zobrazení

Geometrická zobrazení Pomocný text Geometricá zobrazení hodná zobrazení hodná zobrazení patří nejjednodušším zobrazením na rovině. Je jich vša hrozně málo a často se stává, že musíme sáhnout i po jiných, nědy výrazně složitějších

Více

7. TRANSFORMÁTORY. 7.1 Štítkové údaje. 7.2 Měření odporů vinutí. 7.3 Měření naprázdno

7. TRANSFORMÁTORY. 7.1 Štítkové údaje. 7.2 Měření odporů vinutí. 7.3 Měření naprázdno 7. TRANSFORMÁTORY Pro zjednodušení budeme měření provádět na jednofázovém transformátoru. Na trojfázovém transformátoru provedeme pouze ontrolu jeho zapojení měřením hodinových úhlů. 7.1 Štítové údaje

Více

Arnoldiho a Lanczosova metoda

Arnoldiho a Lanczosova metoda Arnoldiho a Lanczosova metoda 1 Částečný problém vlastních čísel Ne vždy je potřeba (a někdy to není ani technicky možné) nalézt celé spektrum dané matice (velké řídké matice). Úloze, ve které chceme aproximovat

Více

2. Určete jádro KerL zobrazení L, tj. nalezněte alespoň jednu jeho bázi a určete jeho dimenzi.

2. Určete jádro KerL zobrazení L, tj. nalezněte alespoň jednu jeho bázi a určete jeho dimenzi. Řešené příklady z lineární algebry - část 3 Typové příklady s řešením Příklad 3.1: Zobrazení L: P 3 R 23 je zobrazení z prostoru P 3 všech polynomů do stupně 3 (včetně nulového polynomu) do prostoru R

Více

vyjádřete ve tvaru lineární kombinace čtverců (lineární kombinace druhých mocnin). Rozhodněte o definitnosti kvadratické formy κ(x).

vyjádřete ve tvaru lineární kombinace čtverců (lineární kombinace druhých mocnin). Rozhodněte o definitnosti kvadratické formy κ(x). Řešené příklady z lineární algebry - část 6 Typové příklady s řešením Příklad 6.: Kvadratickou formu κ(x) = x x 6x 6x x + 8x x 8x x vyjádřete ve tvaru lineární kombinace čtverců (lineární kombinace druhých

Více

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague 1 / 40 regula Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague regula 1 2 3 4 5 regula 6 7 8 2 / 40 2 / 40 regula Iterační pro nelineární e Bud f reálná funkce

Více

9 Stupně vrcholů, Věta Havla-Hakimiho

9 Stupně vrcholů, Věta Havla-Hakimiho Typicé přílady pro zápočtové písemy DiM 470-301 (Kovář, Kovářová, Kubesa) (verze: November 5, 018) 1 9 Stupně vrcholů, Věta Havla-Haimiho 9.1. Doážete nareslit graf na 9 vrcholech, ve terém mají aždé dva

Více

1 Řešení soustav lineárních rovnic

1 Řešení soustav lineárních rovnic 1 Řešení soustav lineárních rovnic 1.1 Lineární rovnice Lineární rovnicí o n neznámých x 1,x 2,..., x n s reálnými koeficienty rozumíme rovnici ve tvaru a 1 x 1 + a 2 x 2 +... + a n x n = b, (1) kde koeficienty

Více

Maticí typu (m, n), kde m, n jsou přirozená čísla, se rozumí soubor mn veličin a jk zapsaných do m řádků a n sloupců tvaru:

Maticí typu (m, n), kde m, n jsou přirozená čísla, se rozumí soubor mn veličin a jk zapsaných do m řádků a n sloupců tvaru: 3 Maticový počet 3.1 Zavedení pojmu matice Maticí typu (m, n, kde m, n jsou přirozená čísla, se rozumí soubor mn veličin a jk zapsaných do m řádků a n sloupců tvaru: a 11 a 12... a 1k... a 1n a 21 a 22...

Více

4. Trojúhelníkový rozklad p. 1/20

4. Trojúhelníkový rozklad p. 1/20 4. Trojúhelníkový rozklad 4. Trojúhelníkový rozklad p. 1/20 4. Trojúhelníkový rozklad p. 2/20 Trojúhelníkový rozklad 1. Permutační matice 2. Trojúhelníkové matice 3. Trojúhelníkový (LU) rozklad 4. Výpočet

Více

Lineární algebra Operace s vektory a maticemi

Lineární algebra Operace s vektory a maticemi Lineární algebra Operace s vektory a maticemi Robert Mařík 26. září 2008 Obsah Operace s řádkovými vektory..................... 3 Operace se sloupcovými vektory................... 12 Matice..................................

Více

V předchozí kapitole jsme podstatným způsobem rozšířili naši představu o tom, co je to číslo. Nadále jsou pro nás důležité především vlastnosti

V předchozí kapitole jsme podstatným způsobem rozšířili naši představu o tom, co je to číslo. Nadále jsou pro nás důležité především vlastnosti Kapitola 5 Vektorové prostory V předchozí kapitole jsme podstatným způsobem rozšířili naši představu o tom, co je to číslo. Nadále jsou pro nás důležité především vlastnosti operací sčítání a násobení

Více

Definice 13.1 Kvadratická forma v n proměnných s koeficienty z tělesa T je výraz tvaru. Kvadratická forma v n proměnných je tak polynom n proměnných s

Definice 13.1 Kvadratická forma v n proměnných s koeficienty z tělesa T je výraz tvaru. Kvadratická forma v n proměnných je tak polynom n proměnných s Kapitola 13 Kvadratické formy Definice 13.1 Kvadratická forma v n proměnných s koeficienty z tělesa T je výraz tvaru f(x 1,..., x n ) = a ij x i x j, kde koeficienty a ij T. j=i Kvadratická forma v n proměnných

Více

Matematika B101MA1, B101MA2

Matematika B101MA1, B101MA2 Matematika B101MA1, B101MA2 Zařazení předmětu: povinný předmět 1.ročníku bc studia 2 semestry Rozsah předmětu: prezenční studium 2 + 2 kombinované studium 16 + 0 / semestr Zakončení předmětu: ZS zápočet

Více

Soustavy lineárních rovnic a determinanty

Soustavy lineárních rovnic a determinanty Soustavy lineárních rovnic a determinanty Petr Hasil Přednáška z matematiky Podpořeno projektem Průřezová inovace studijních programů Lesnické a dřevařské fakulty MENDELU v Brně (LDF) s ohledem na discipĺıny

Více

Aproximace funkcí. x je systém m 1 jednoduchých, LN a dostatečně hladkých funkcí. x c m. g 1. g m. a 1. x a 2. x 2 a k. x k b 1. x b 2.

Aproximace funkcí. x je systém m 1 jednoduchých, LN a dostatečně hladkých funkcí. x c m. g 1. g m. a 1. x a 2. x 2 a k. x k b 1. x b 2. Aproximace funkcí Aproximace je výpočet funkčních hodnot funkce z nějaké třídy funkcí, která je v určitém smyslu nejbližší funkci nebo datům, která chceme aproximovat. Třída funkcí, ze které volíme aproximace

Více

a počtem sloupců druhé matice. Spočítejme součin A.B. Označme matici A.B = M, pro její prvky platí:

a počtem sloupců druhé matice. Spočítejme součin A.B. Označme matici A.B = M, pro její prvky platí: Řešené příklady z lineární algebry - část 1 Typové příklady s řešením Příklady jsou určeny především k zopakování látky před zkouškou, jsou proto řešeny se znalostmi učiva celého semestru. Tento fakt se

Více

Mocnost bodu ke kružnici

Mocnost bodu ke kružnici 3.. ocnost bodu e ružnici Předpolady: 03009 Př. : Je dána ružnice a bod, ležící vně ružnice. Veď bodem dvě různé sečny ružnice p a p. Průsečíy sečny p s ružnicí označ A, B. Průsečíy sečny p s ružnicí označ

Více

9 Skonto, porovnání různých forem financování

9 Skonto, porovnání různých forem financování 9 Sonto, porovnání různých forem financování Sonto je sráža (sleva) z ceny, terou posytuje prodávající upujícímu v případě, že upující zaplatí oamžitě (resp. během dohodnuté ráté lhůty). Výše sonta je

Více

Věta 12.3 : Věta 12.4 (princip superpozice) : [MA1-18:P12.7] rovnice typu y (n) + p n 1 (x)y (n 1) p 1 (x)y + p 0 (x)y = q(x) (6)

Věta 12.3 : Věta 12.4 (princip superpozice) : [MA1-18:P12.7] rovnice typu y (n) + p n 1 (x)y (n 1) p 1 (x)y + p 0 (x)y = q(x) (6) 1. Lineární diferenciální rovnice řádu n [MA1-18:P1.7] rovnice typu y n) + p n 1 )y n 1) +... + p 1 )y + p 0 )y = q) 6) počáteční podmínky: y 0 ) = y 0 y 0 ) = y 1 y n 1) 0 ) = y n 1. 7) Věta 1.3 : Necht

Více

Základy maticového počtu Matice, determinant, definitnost

Základy maticového počtu Matice, determinant, definitnost Základy maticového počtu Matice, determinant, definitnost Petr Liška Masarykova univerzita 18.9.2014 Matice a vektory Matice Matice typu m n je pravoúhlé (nebo obdélníkové) schéma, které má m řádků a n

Více

6 5 = 0, = 0, = 0, = 0, 0032

6 5 = 0, = 0, = 0, = 0, 0032 III. Opaované pousy, Bernoulliho nerovnost. Házíme pětrát hrací ostou a sledujeme výsyt šesty. Spočtěte pravděpodobnosti možných výsledů a určete, terý má největší pravděpodobnost. Řešení: Jedná se o serii

Více

Měření indukčností cívek

Měření indukčností cívek 7..00 Ṫeorie eletromagneticého pole Měření indučností cíve.......... Petr Česá, studijní supina 05 Letní semestr 000/00 . Měření indučností cíve Měření vlastní a vzájemné indučnosti válcových cíve ZAÁNÍ

Více

Definice. Vektorový prostor V nad tělesem T je množina s operacemi + : V V V, tj. u, v V : u + v V : T V V, tj. ( u V )( a T ) : a u V které splňují

Definice. Vektorový prostor V nad tělesem T je množina s operacemi + : V V V, tj. u, v V : u + v V : T V V, tj. ( u V )( a T ) : a u V které splňují Definice. Vektorový prostor V nad tělesem T je množina s operacemi + : V V V, tj. u, v V : u + v V : T V V, tj. ( u V )( a T ) : a u V které splňují 1. u + v = v + u, u, v V 2. (u + v) + w = u + (v + w),

Více

Úlohy domácího kola kategorie B

Úlohy domácího kola kategorie B 54. roční Matematicé olympiády Úlohy domácího ola ategorie 1. Určete všechny dvojice (a, b) reálných čísel, pro teré má aždá rovnic x + ax + b 0, x + (a + 1)x + b + 1 0 dva růné reálné ořeny, přičemž ořeny

Více

12. Lineární programování

12. Lineární programování . Lineární programování. Lineární programování Úloha lineárního programování (lineární optimalizace) je jedním ze základních problémů teorie optimalizace. Našim cílem je nalézt maximum (resp. minimum)

Více

zpracování signálů - Fourierova transformace, FFT Frekvenční

zpracování signálů - Fourierova transformace, FFT Frekvenční Digitální zpracování signálů - Fourierova transformace, FF Frevenční analýza 3. přednáša Jean Baptiste Joseph Fourier (768-830) Zálady experimentální mechaniy Frevenční analýza Proč se frevenční analýza

Více

Vzpěr jednoduchého rámu, diferenciální operátory. Lenka Dohnalová

Vzpěr jednoduchého rámu, diferenciální operátory. Lenka Dohnalová 1 / 40 Vzpěr jednoduchého rámu, diferenciální operátory Lenka Dohnalová ČVUT, fakulta stavební, ZS 2015/2016 katedra stavební mechaniky a katedra matematiky, Odborné vedení: doc. Ing. Jan Zeman, Ph.D.,

Více

1 Soustavy lineárních rovnic

1 Soustavy lineárních rovnic 1 Soustavy lineárních rovnic 1.1 Základní pojmy Budeme uvažovat soustavu m lineárních rovnic o n neznámých s koeficienty z tělesa T (potom hovoříme o soustavě m lineárních rovnic o n neznámých nad tělesem

Více

Numerická matematika 1

Numerická matematika 1 Numerická matematika 1 Obsah 1 Řešení nelineárních rovnic 3 1.1 Metoda půlení intervalu....................... 3 1.2 Metoda jednoduché iterace..................... 4 1.3 Newtonova metoda..........................

Více

Lineární algebra - I. část (vektory, matice a jejich využití)

Lineární algebra - I. část (vektory, matice a jejich využití) Lineární algebra - I. část (vektory, matice a jejich využití) Michal Fusek Ústav matematiky FEKT VUT, fusekmi@feec.vutbr.cz 2. přednáška z ESMAT Michal Fusek (fusekmi@feec.vutbr.cz) 1 / 40 Obsah 1 Vektory

Více

Soustavy lineárních diferenciálních rovnic I. řádu s konstantními koeficienty

Soustavy lineárních diferenciálních rovnic I. řádu s konstantními koeficienty Soustavy lineárních diferenciálních rovnic I řádu s konstantními koeficienty Definice a) Soustava tvaru x = ax + a y + az + f() t y = ax + a y + az + f () t z = a x + a y + a z + f () t se nazývá soustava

Více

DRN: Soustavy linárních rovnic numericky, norma

DRN: Soustavy linárních rovnic numericky, norma DRN: Soustavy linárních rovnic numericky, norma Algoritmus (GEM: Gaussova eliminace s částečným pivotováním pro převod rozšířené regulární matice na horní trojúhelníkový tvar). Zadána matice C = (c i,j

Více

7. přednáška Systémová analýza a modelování. Přiřazovací problém

7. přednáška Systémová analýza a modelování. Přiřazovací problém Přiřazovací problém Přiřazovací problémy jsou podtřídou logistických úloh, kde lze obecně říci, že m dodavatelů zásobuje m spotřebitelů. Dalším specifikem je, že kapacity dodavatelů (ai) i požadavky spotřebitelů

Více

ANALYTICKÁ GEOMETRIE V ROVINĚ

ANALYTICKÁ GEOMETRIE V ROVINĚ ANALYTICKÁ GEOMETRIE V ROVINĚ Analytická geometrie vyšetřuje geometrické objekty (body, přímky, kuželosečky apod.) analytickými metodami. Podle prostoru, ve kterém pracujeme, můžeme analytickou geometrii

Více

Godunovovy metody pro 1D-Eulerovy rovnice

Godunovovy metody pro 1D-Eulerovy rovnice Godunovovy metody pro D-Eulerovy rovnice Řešte Eulerovy rovnice w t + f(w) w(0, t) = = o, x (0, l), t (0, T ), w(l, 0) w(x, 0) = w 0 (x), = 0, t (0, T ), x (0, l), w = (ϱ, ϱu, E) T, f(w) = (ϱu, ϱu + p,

Více

1 Polynomiální interpolace

1 Polynomiální interpolace Polynomiální interpolace. Metoda neurčitých koeficientů Příklad.. Nalezněte polynom p co nejmenšího stupně, pro který platí p() = 0, p(2) =, p( ) = 6. Řešení. Polynom hledáme metodou neurčitých koeficientů,

Více

Matice přechodu. Pozorování 2. Základní úkol: Určete matici přechodu od báze M k bázi N. Každou bázi napíšeme do sloupců matice, např.

Matice přechodu. Pozorování 2. Základní úkol: Určete matici přechodu od báze M k bázi N. Každou bázi napíšeme do sloupců matice, např. Matice přechodu Základní úkol: Určete matici přechodu od báze M k bázi N. Každou bázi napíšeme do sloupců matice, např. u příkladu 7 (v ) dostaneme: Nyní bychom mohli postupovat jako u matice homomorfismu

Více

Soustavy se spínanými kapacitory - SC. 1. Základní princip:

Soustavy se spínanými kapacitory - SC. 1. Základní princip: Obvody S - popis 1 Soustavy se spínanými kapacitory - S 1. Základní princip: Simulace rezistoru přepínaným kapacitorem viz známý obrázek! (a rovnice) Modifikace základního spínaného obvodu: Obr. 2.1: Zapojení

Více

Výběr báze. u n. a 1 u 1

Výběr báze. u n. a 1 u 1 Výběr báze Mějme vektorový prostor zadán množinou generátorů. To jest V = M, kde M = {u,..., u n }. Pokud je naším úkolem najít nějakou bázi V, nejpřímočařejším postupem je napsat si vektory jako řádky

Více

Hodnocení přesnosti výsledků z metody FMECA

Hodnocení přesnosti výsledků z metody FMECA Hodnocení přesnosti výsledů z metody FMECA Josef Chudoba 1. Úvod Metoda FMECA je semivantitativní metoda, pomocí teré se identifiují poruchy s významnými důsledy ovlivňující funci systému. Závažnost následů

Více

Lineární algebra : Násobení matic a inverzní matice

Lineární algebra : Násobení matic a inverzní matice Lineární algebra : Násobení matic a inverzní matice (8. přednáška) František Štampach, Karel Klouda LS 2013/2014 vytvořeno: 17. března 2014, 12:42 1 2 0.1 Násobení matic Definice 1. Buďte m, n, p N, A

Více