Metody Obliczeniowe w Nauce i Technice

Podobne dokumenty
Metody Obliczeniowe w Nauce i Technice

Programowanie współbieżne... (10) Andrzej Baran 2010/11

Algorytmy numeryczne 1

Spis treści. I. Skuteczne. Od autora... Obliczenia inżynierskie i naukowe... Ostrzeżenia...XVII

Macierzowe algorytmy równoległe

Rozwiązywanie układów równań liniowych metody dokładne Materiały pomocnicze do ćwiczeń z metod numerycznych

Metody numeryczne Wykład 4

Metody Obliczeniowe w Nauce i Technice

Nazwa przedmiotu. 1 Matematyka. 2 Fizyka. 3 Informatyka. 4 Rysunek techniczny. 12 Język angielski. 14 Podstawy elektroniki. 15 Architektura komputerów

Macierze Lekcja I: Wprowadzenie

PLAN STUDIÓW. efekty kształcenia K6_W08 K6_U04 K6_W03 K6_U01 K6_W01 K6_W02 K6_U01 K6_K71 K6_U71 K6_W71 K6_K71 K6_U71 K6_W71

Obliczenia naukowe Wykład nr 8

Plan studiów dla kierunku:

Plan studiów dla kierunku:

Nowoczesne narzędzia obliczeniowe do projektowania i optymalizacji kotłów

Nazwa przedmiotu. Załącznik nr 1 do Uchwały nr 70/2016/2017 Rady Wydziału Elektrycznego Politechniki Częstochowskiej z dnia r.

Field of study: Computational Engineering Study level: First-cycle studies Form and type of study: Full-time studies. Auditorium classes.

PWSZ w Tarnowie Instytut Politechniczny Elektrotechnika

ALGEBRA Z GEOMETRIĄ MACIERZE ODWZOROWAŃ LINIOWYCH

Metody Obliczeniowe w Nauce i Technice

Modelowanie danych hodowlanych

Wykład 6. Metoda eliminacji Gaussa: Eliminacja z wyborem częściowym Eliminacja z wyborem pełnym

1 Macierz odwrotna metoda operacji elementarnych

Liczba godzin w semestrze Ogółem Semestr 1 Semestr 2 Semestr 3 E Z Sh W C L S P W C L S P ECTS W C L S P ECTS W C L S P ECTS W C L S P ECTS

Kierunek: Matematyka Poziom studiów: Studia II stopnia Forma i tryb studiów: Stacjonarne

Metody Obliczeniowe w Nauce i Technice

Analiza numeryczna Kurs INP002009W. Wykłady 6 i 7 Rozwiązywanie układów równań liniowych. Karol Tarnowski A-1 p.

Przygotowanie kilku wersji kodu zgodnie z wymogami wersji zadania,

Symulacja obliczeń kwantowych

Techniki programowania INP001002Wl rok akademicki 2017/18 semestr letni. Wykład 7. Karol Tarnowski A-1 p.

Numeryczne zagadnienie własne

PLAN STUDIÓW NIESTACJONARNYCH I STOPNIA INŻYNIERSKICH DLA KIERUNKU GÓRNICTWO I GEOLOGIA SPECJALNOŚĆ : GEOLOGIA I PROSPEKCJA ZŁÓŻ (GPZ) ECTS ROK I

Matematyka stosowana i metody numeryczne

Wykład 5. Metoda eliminacji Gaussa

Układy równań liniowych

Rozwiązywanie algebraicznych układów równań liniowych metodami iteracyjnymi

Zastosowania wyznaczników

Wykład 7 Macierze i wyznaczniki

Analiza matematyczna i algebra liniowa Macierze

a 11 a a 1n a 21 a a 2n... a m1 a m2... a mn x 1 x 2... x m ...

Wprowadzenie do metod numerycznych Wykład 3 Metody algebry liniowej I Wektory i macierze

AKTUALNE OPŁATY ZA WARUNKI Tylko dla studentów I roku 2018/2019 OPŁATY ZA WARUNKI Z POSZCZEGÓLNYCH PRZEDMIOTÓW

OBLICZANIE POCHODNYCH FUNKCJI.

Macierze. Rozdział Działania na macierzach

Kierunek: Matematyka Poziom studiów: Studia II stopnia Forma i tryb studiów: Stacjonarne

Fizyka komputerowa(ii)

dr Mariusz Grządziel 15,29 kwietnia 2014 Przestrzeń R k R k = R R... R k razy Elementy R k wektory;

R E K T O R PISMO OKÓLNE 39/2018

Kierunek:Informatyka- - inż., rok I specjalność: Grafika komputerowa

ALGEBRA LINIOWA. Wykład 2. Analityka gospodarcza, sem. 1. Wydział Zarządzania i Ekonomii Politechnika Gdańska

Metody numeryczne. dr hab inż. Tomasz Chwiej. Syllabus:

Kierunek: Inżynieria Obliczeniowa Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne. Wykład Ćwiczenia

1 Zbiory i działania na zbiorach.

Informatyka. Wykład 0. Witold Dyrka 13/2/2012

R E K T O R PISMO OKÓLNE 11/2017

R E K T O R PISMO OKÓLNE 40/2017. w sprawie przyznawania stypendium Rektora dla najlepszych studentów w semestrze zimowym roku akademickiego 2017/2018

R E K T O R PISMO OKÓLNE 13/2018

Field of study: Computer Science Study level: First-cycle studies Form and type of study: Full-time studies. Auditorium classes.

Komputerowe Wspomaganie Obliczeń. dr Robert Kowalczyk

Elementy projektowania inzynierskiego Przypomnienie systemu Mathcad

Matematyka Stosowana na Politechnice Wrocławskiej. Komitet Matematyki PAN, luty 2017 r.

Kierunek: Matematyka w technice

Rozwiązywanie algebraicznych układów równań liniowych metodami iteracyjnymi. Plan wykładu:

Wprowadzenie do Metody Elementu Skończonego

Kierunek:Informatyka- - inż., rok I specjalność: Grafika komputerowa i multimedia

Wykład 14. Elementy algebry macierzy

Kierunek: Automatyka i Robotyka Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne. Wykład Ćwiczenia

Kierunek: Informatyka Stosowana Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne. Wykład Ćwiczenia

Diagonalizacja macierzy i jej zastosowania

O MACIERZACH I UKŁADACH RÓWNAŃ

Zał nr 4 do ZW. Dla grupy kursów zaznaczyć kurs końcowy. Liczba punktów ECTS charakterze praktycznym (P)

NUMERYCZNE ALGORYTMY PRZECHOWYWANIA MACIERZY RZADKICH

Wspomaganie obliczeń matematycznych. dr inż. Michał Michna

Zaawansowane metody numeryczne

Kierunek:Informatyka- - inż., rok I specjalność: Grafika komputerowa i multimedia

Metody Obliczeniowe w Nauce i Technice

Metody Obliczeniowe w Nauce i Technice

PROGRAM STUDIÓW WYŻSZYCH ROZPOCZYNAJĄCYCH SIĘ W ROKU AKADEMICKIM 2010/2011. Wydział Matematyczno-Fizyczno-Techniczny

Modelowanie rynków finansowych z wykorzystaniem pakietu R

Kierunek: Informatyka Stosowana Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne. Wykład Ćwiczenia

Ramowy Program Specjalizacji MODELOWANIE MATEMATYCZNE i KOMPUTEROWE PROCESÓW FIZYCZNYCH Studia Specjalistyczne (III etap)

Rozdział 5. Macierze. a 11 a a 1m a 21 a a 2m... a n1 a n2... a nm

ROZKŁAD OCEN NUMBER OF CANDIDATES AWARDED GRADES. 2004r. J.POLSKI HL ,79 5,55 7 5

5. Rozwiązywanie układów równań liniowych

PODSTAWY AUTOMATYKI. MATLAB - komputerowe środowisko obliczeń naukowoinżynierskich - podstawowe operacje na liczbach i macierzach.

2. Układy równań liniowych

Przykładem jest komputer z procesorem 4 rdzeniowym dostępny w laboratorium W skład projektu wchodzi:

dr inż. Michał Michna WSPOMAGANIE OBLICZEŃ MATEMATYCZNYCH

Instytut Nauk Technicznych, PWSZ w Nysie Kierunek: Informatyka Specjalność: Systemy i sieci komputerowe, SSK studia niestacjonarne Dla rocznika:

Kierunek: Matematyka Poziom studiów: Studia II stopnia Forma i tryb studiów: Stacjonarne

Programowanie Współbieżne. Algorytmy

III TUTORIAL Z METOD OBLICZENIOWYCH

Kierunek: Matematyka Poziom studiów: Studia II stopnia Forma i tryb studiów: Stacjonarne

SEMESTRALNY WYKAZ ZALICZEŃ - IDZ Rok. akad. 2012/2013

Kierunek: Matematyka Poziom studiów: Studia II stopnia Forma i tryb studiów: Stacjonarne

Układy równań liniowych i metody ich rozwiązywania

Programowanie liniowe

Plan dla studiów prowadzonych w formie niestacjonarnej 2014/2015

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

Diagonalizacja macierzy i jej zastosowania

Transkrypt:

10. Numeryczna algebra liniowa wprowadzenie. Marian Bubak Department of Computer Science AGH University of Science and Technology Krakow, Poland bubak@agh.edu.pl dice.cyfronet.pl Contributors Magdalena Nowak Paweł Taborowski Rafał Stachura

Plan wykładu 1 Zastosowania numerycznej algebry liniowej 2 Macierze testowe 3 Dlaczego algorytmy równoległe? 4 5 Biblioteki 6 Bibliografia

Zastosowania numerycznej algebry liniowej Zastosowania numerycznej algebry liniowej Fizyka: CFD, lattice-gauge, atomic spectra,... Chemia: chemia kwantowa, inżynieria chemiczna, Mechanika: obliczenia z wykorzystaniem FEM, FD,... Elektrotechnika, elektronika: systemy energetyczne, symulacja obwodów, symulacja urządzeń,... Geodezja, Ekonomia: modelowanie systemów ekonomicznych, Demografia: migracja, Psychologia: grupy, powiązania, Badania operacyjne: programowanie liniowe, Polityka...

Macierze testowe Macierze testowe Standardowy zbiór macierzy rzadkich Harwel - Boeing Sparse Matrix Collection [HARWELL-BOEING]

Dlaczego algorytmy równoległe? Dlaczego algorytmy równoległe? Przykład przewidywanie pogody (globalnie): rozwiązywanie równania Naviera-Stokesa na siatce 3D wokół Ziemi Zmienne: temperatura ciśnienie równanie Naviera-Stokesa (6 zmiennych) wilgotność prędkość wiatru Obliczenia: elementarna komórka 1 km 10 warstw 5 109 komórek w każdej komórce: 6 8 Bytes 2 10 11 Bytes = 200 Gbytes, w każdej komórce 100 operacji fp, obliczenia 1 kroku czasowego 1 min 100 5 109 60 = 8 GFLOPS

Dot product Dot product c = x T y; x, y R n (vectors) 1 3 f u n c t i o n : c = dot ( x, y ) c = 0 5 n = l e n g t h ( x ) f o r i = 1 : n 7 c = c + x ( i ) y ( i ) 9 11 dot

saxpy saxpy z = α x + y == (saxpy = scalar alpha x plus y) α scalar 2 f u n c t i o n : z = saxpy (α, x, y ) 4 n = l e n g t h ( x ) f o r i = 1 : n 6 8 10 12 z ( i ) = α x(i) + y(i) saxpy

The colon notation The colon notation A R m n k-th row of A: k-th column of A: A(k, :) = [a k1, a k2,..., a kn ] A(:, k) = a 1k a 2k. a nk

Matrix-Vector multiplication Matrix-Vector multiplication z = A x; z i = n i=1 a ij x j a) row version m = rows(a); z(1 : m) = 0 n = cols(a) 1 f u n c t i o n : z = matvec. i j (A, x ) f o r i = 1 :m 3 f o r j = 1 : n z ( i ) = z ( i ) + A( i, j ) x ( j ) 5 7 matvec. i j

Matrix-Vector multiplication : in colon notation f o r i = 1 :m 2 z ( i ) = A( i, : ) x with dot f o r i = 1 :m 2 z ( i ) = dot (A( i, : ), x ) Ważne Dostęp do macierzy A wierszami

Matrix-Vector multiplication b) column version 1 2 ( 7 3 4 8 5 6 ) = 1 7 + 2 8 3 7 + 4 8 5 7 + 6 8 = 7 1 3 5 +8 2 4 6 m = rows(a); n = cols(a) z(1 : m) = 0 f u n c t i o n : z = matrec. i j (A, x ) 2 f o r j = 1 : n f o r i = 1 :m 4 z ( i ) = z ( i ) + A( i, j ) x ( j ) 6 matrec. i j

Matrix-Vector multiplication : in colon notation z ( 1 :m) = 0 2 f o r j = 1 : n z = z + x ( j ) A ( :, i ) 4 with dot 1 z ( 1 :m) = 0 f o r j = 1 : n 3 z = saxpy ( x ( j ), A ( :, i ), z ) Ważne Dostęp do macierzy A kolumnami

The gaxpy computation The gaxpy computation z = y + A x; x R n ; y R n ; A R n n ; (gaxpy = general A x plus y) 1 f u n c t i o n : z = gaxpy (A, x, y ) 3 n = c o l s ( a ) ; z = y f o r j = 1 : n 5 z = z + x ( j ) A ( :, j ) 7

Outer product updates Outer product updates A A + x y T ; a ij = a ij + x i y j, i = 1 : m, j = 1 : n ij version: 1 f o r i = 1 :m A( i, : ) = A( i, : ) + x ( i ) y T 3 A wierszami ji version: f o r j = 1 : n 2 A ( :, j ) = A ( :, j ) + y ( j ) x A kolumnami (obie saxpy - based )

Matrix matrix multiplication Matrix matrix multiplication C = A m r B r n c ij = a) dot version r a ik x kj k=1 function : C= matmat. ijk (A,B) 2 m= rows (A); r= cols (A); n= cols (B); C (1:m,1: n)=0 for i =1: m 4 for j =1: n for k =1: r 6 C(i,j)=C(i,j)+A(i,k) B(k,j) inner loop 8 10 matmat. ijk middle loop

Matrix multiplication: loop ordering and properties Matrix multiplication: loop ordering and properties ijk 3! = 6 sposobów loop Inner loop Middle loop Inner loop data access order ijk dot vector x matrix A by row, B by column jik dot matrix x vector A by row, B by column ikj saxpy row gaxpy B by row jki saxpy column gaxpy A by column kij saxpy row outer product B by row kji saxpy column outer product A by column Operations dot, saxpy, modes of access. Wybór zależy od architektury komputera.

Biblioteki Biblioteki dla algebry liniowej BLAS - Basic Linear Algebra Subprograms http://www.netlib.org/blas/ https://www.gnu.org/software/gsl/doc/html/blas. html?highlight=blas#c.gsl_blas_ddot LAPACK - Linear Algebra Package http://www.netlib.org/lapack/ JAMA - Java Matrix Package https://math.nist.gov/javanumerics/jama/ GNU Octave https://www.gnu.org/software/octave/about.html Uwaga: Więcej o bibliotekach numerycznych w prezentacji 13.

Bibliografia Bibliografia Matrix Market The Harwell-Boeing Sparse Matrix Collection http://math.nist.gov/matrixmarket/data/harwell-boeing/