Moduł "Metody Numeryczne"



Syllabus modułu dla Informatyki Stosowanej: rocznik 22/23

Notatki do wykładu

  1. Plan wykładu
  2. (2h) Arytmetyka zmiennopozycyjna, błędy numeryczne
  3. (3h) Rozwiązywanie algebraicznych układów równań liniowych metodami bezpośrednimi
  4. (2h) Rozwiązywanie algebraicznych układów równań liniowych metodami iteracyjnymi
  5. (3h) Wyznaczanie wartości i wektorów własnych macierzy
  6. (2h) Rozwiązywanie równań nieliniowych i ich układów. Wyznaczanie zer wielomianów.
  7. (3h) Interpolacja
  8. (2h) Aproksymacja
  9. (3h) Minimalizacja wartości funkcji
  10. (2h) Szybka transformacja Fouriera
  11. (3h) Całkowanie przy użyciu kwadratur Newtona-Cotesa i kwadratur Gaussa
  12. (3h) Generatory liczb pseudolosowych
  13. (2h) Całkowanie metodą Monte Carlo


Treści projektów realizowanych na laboratorium

  1. Rozwiązywanie układów równań liniowych metodami bezpośrednimi

    1. Rozwiązywanie układów równań liniowych metodami bezpośrednimi
    2. Rozkład LU. Odwracanie macierzy.
    3. Odwracanie macierzy, obliczanie wyznacznika i wskaźnika uwarunkowania macierzy przy użyciu rozkładu LU
    4. Rozkład LU macierzy trójdiagonalnej - rozwiązanie równania Poissona w jednym wymiarze
  2. Rozwiązywanie układów równań liniowych metodami iteracyjnymi

    1. Rozwiązywanie układu równań liniowych metodą Jacobiego
    2. Rozwiązywanie układu równań liniowych metodą SOR
    3. Rozwiązywanie układu równań liniowych metodą sprzężonego gradientu (CG)
    4. Rozwiązywanie układu równań liniowych metodą największego spadku (SD)
    5. Rozwiązywanie układu równań liniowych metodą największego spadku (SD) - WERSJA 2
  3. Wyznaczanie wartości i wektorów własnych macierzy

    1. Wyznaczanie wartości i wektorów własnych macierzy symetrycznej
    2. Wyznaczanie wartości własnych macierzy symetrycznej metodą potęgową z redukcją Hotellinga
    3. Diagonalizacja macierzy operatora energii w 2D
    4. Uogólniony (symetryczny) problem własny - mody własne struny w 1D
    5. Niesymetryczny problem własny - mody własne struny w 1D
    6. Diagonalizacja macierzy metodą potęgową
    7. Metoda potęgowa z ortogonalizacją Gramma-Schmidta
    8. Diagonalizacja macierzy symetrycznej metodą potegową z redukcją Hotellinga
  4. Wyznaczanie pierwiastków równania nieliniowego

    1. Wyznaczanie pierwiastków równania nieliniowego metodą Newtona
    2. Wyznaczanie pierwiastków równania nieliniowego metodą siecznych i Newtona. Badanie zbieżności.
    3. Wyznaczanie pierwiastków równania nieliniowego metodą siecznych
    4. Wyznaczanie zer wielomianu metodą siecznych
    5. Wyznaczanie zer wielomianu metodą iterowanego dzielenia (met. Newtona)
    6. Wyznaczanie zer wielomianu metodą iterowanego dzielenia (met. siecznych)
    7. Wyznaczanie zespolonych zer wielomianu metodą iterowanego dzielenia (met. Newtona)
    8. Wyznaczanie zespolonych zer wielomianu metodą iterowanego dzielenia (met. siecznych)
    9. Poszukiwanie pierwiastków równania nieliniowego metodą siecznych i Newtona.
  5. Interpolacja

    1. Interpolacja Lagrange'a z optymalizacją położeń węzłów.
    2. Interpolacja Newtona
    3. Interpolacja Newtona z optymalizacją położeń węzłów.
    4. Interpolacja funkcjami sklejanymi w bazie
    5. Interpolacja funkcjami sklejanymi poprzez wyznaczenie drugich pochodnych
    6. Interpolacja funkcjami sklejanymi poprzez wyznaczenie drugich pochodnych - wersja 2
    7. Interpolacja Lagrange'a z optymalizacją położeń węzłów - wersja 2
    8. Interpolacja Lagrange'a funkcji nieparzystej
  6. Aproksymacja

    1. Aproksymacja w bazie wielomianów ortogonalnych Grama
    2. Aproksymacja funkcji okresowych
    3. Aproksymacja funkcji w bazie jednomianów
    4. Aproksymacja Pade funkcji cos(x)
    5. Aproksymacja Pade funkcji sin(x)
    6. Aproksymacja Pade funkcji exp(-x^2)
    7. Aproksymacja wielomianowa
  7. Poszukiwanie minimum wartości funkcji

    1. Poszukiwanie minimum wartości funkcji w dwóch wymiarach metodą Newtona
    2. Poszukiwanie minimum wartości funkcji metodą złotego podziału
    3. Poszukiwanie minimum wartości funkcji metodą interpolacji Powella
    4. Poszukiwanie minimum wartości funkcji metodą największego spadku w 2D
  8. Szybka Transformacja Fouriera

    1. Szybka transformacja sinusowa: odszumianie sygnału
    2. Szybka transformacja kosinusowa: odszumianie sygnału
    3. Odszumianie sygnału przy użyciu FFT - splot funkcji
    4. Filtr Gaussowski - splot funkcji przy użyciu FFT
    5. Aproksymacja funkcji przy użyciu FFT
  9. Całkowanie numeryczne

    1. Całkowanie numeryczne metodą Romberga
    2. Całkowanie numeryczne metodą Simpsona
    3. Zastosowanie ekstrapolacji Richardsona do całkowania przy użyciu wzorów trapezów i 3/8
    4. Zastosowanie ekstrapolacji Richardsona do całkowania przy użyciu wzorów Simpsona i Milne
    5. Całkowanie numeryczne przy użyciu kwadratur Gaussa
    6. Szacowanie całek niewłaściwych przy uzyciu kwadratur Gaussa
    7. Całkowanie w 4 wymiarach przy użyciu kwadratur Gaussa-Hermite'a
    8. Szacowanie całek przy użyciu kwadratur Gaussa


    paczka z plikami

  10. Generatory liczb pseudolosowych

    1. Testowanie generatora liczb pseudolosowych o rozkładzie normalnym
    2. Generator o rozkładzie jednorodnym i trójkątnym
    3. Generowanie ciągu liczb pseudolosowych o rozkładzie jednorodnym w kuli 3D
  11. Metoda Monte Carlo

    1. Całkowanie Monte Carlo - rozkład normalny i Maxwella
    2. Wyznaczanie objętości i momentu bezwładności kuli metodą Monte Carlo
    3. Wyznaczanie momentu bezwładności sześcianu metodą Monte Carlo
    4. Całkowanie w 4 wymiarach metodą Monte Carlo
    5. Całkowanie metodą Monte Carlo w 2D z rozkładem eksponencjalnym

Biblioteka GSL

Zainstalowana jest na serwerze Taurus.
Pliki nagłówkowe znajdują się w katalogu

/usr/include/gsl

a skompilowana biblioteka (libgsl.a/.so oraz wymagana libgslcblas.a/.so)
w katalogu

/usr/lib/x86_64-linux-gnu


Kompilacja:

gcc *.c -lgsl -lgslcblas -lm


Krótki opis użycia biblioteki numerycznej GSL - macierze i wektory
Dokumentacja GSL
Manual do biblioteki GSL wersja 2.4

Biblioteka Numerical Recipes

Pliki źródłowe znajdują się na serwerze Taurus w katalogu

/opt/old/NR/numerical_recipes.c"

dla C/C++ oraz w

/opt/old/NR/numerical_recipes.f

dla fortrana.
Strona z dokumentacją (stara wersja, ale darmowa)



kontakt
dr hab inż. Tomasz Chwiej
Akademia Górniczo-Hutnicza
Wydział Fizyki i Informatyki Stosowanej
Katedra Informatyki Stosowanej i Fizyki Teoretycznej
pok. 318, D7, telefon:(12) 617 44 71
chwiej@fis.agh.edu.pl