Przykładowy program ćwiczeń Ćwiczenie 1. Obliczenie funkcji elementarnych za pomocą szeregów. Opracowanie wyrażeń rekurencyjnych. 3 4 Realizacja w Ecelu funkcji e 1. 1!! 3! 4! Przykład 1: Obliczenie wartości wielomianu metodą Hornera y = a 0 n + a 1 n-1 + a n- +...+ a n-1 + a n i 0 1 3 4 y =(...((a 0 +a 1 )*+a )*+...+a n-1 )*+a n a(i) 1 1 1 1 1 (a 0 +a 1 ) ((...)*+a) ((..)*+a 3 ) ((...)*+a4) 3 7 15 31 Przykład : Obliczenie wartości funkcji przy pomocy szeregów 1,718818 e =1+/1! + /! + 3 /3! +...+ n /n! i 1 3 4 5 e =y(1)+y()+y(3)+...+y(n) y(i) 1 1 0,5 0,166667 0,04166667 y(1)=1, y(i) = y(i-1)* / (i-1) Wynik,70833333 Zadania indywidualne na ocenę według wariantów: 1. 4 6 8 y 1 cos! 4! 6! 8!. y sin 3! 5! 7! 9! 3. 3 4 5 y ln(1 ) 3 4 5 4. y arctg 5. 4 6 8 y 1 ch! 4! 6! 8! 6. y sh 3! 5! 7! 9! 7. 3 5 7 1 y ( ) ln 3 5 7 1 8. n n 1 y a0 a1 an 1 an 9. y tg 1 3 5 7 9 Uwaga: Możliwa jest realizacja wybranego zadania w postaci programu (C++, Pascal, lub inny język programowania).
. Metody całkowania numerycznego prostokątów i trapezów Metody obliczenia całki y f ( ) d 0,785398163 f ( ) 1 a=0 n= 6 b=1 h= 0,166666667 i 0 1 3 4 5 6 (i) 0 0,166667 0,3333333 0,5 0,66666667 0,833333333 1 f((i)) 1 0,986013 0,94809 0,866054 0,74535599 0,55770798 1,49E-08 prostokątów trapezów 0,8488909 0,765495757 Ćwiczenie. 1. Metody rozwiązywania równań nieliniowych (wyznaczenie miejsca zerowego funkcji): Metoda siecznej. Metoda stycznej. delta = 1,00E-10 = 0 1,5,,1 f() = -3-3 -1,65 0,168-0,459 b ò a i = 1 3 4 5 6 a =,1,17306,1745357,174559,1745594,17455941 f(a) = -0,459-0,008774-0,000154 -,7E-06-4,7306E-08-8,906E-10 b =,,,,,, f(b) = 0,168 0,168 0,168 0,168 0,168 0,168 (i) =,17306,174536,174559,1745594,174559410,174559410 f((i)) = -0,00877-0,000154 -,7E-06-4,73E-08-8,906E-10-1,4531E-11 Metoda Newtona (stycznej) delta = 1,00E-10 f'()=3^-4+1 f''()=6-4 i = 1 3 4 5 6 a =,1,1,1,1,1,1 f(a) = -0,459-0,459-0,459-0,459-0,459-0,459 f'(a) = 5,83 5,83 5,83 5,83 5,83 5,83 f''(a) = 8,6 8,6 8,6 8,6 8,6 8,6 b =,5,30769,176650,174565,17455941,17455941 f(b) =,65 0,379153 0,0135846 1,974E-05 4,186E-11 4,18598E-11 f'(b) = 9,75 7,005917 6,5068176 6,4879158 6,4878885 6,48788846 f''(b) = 11 9,384615 9,059901 9,0473747 9,04735646 9,04735646 (i) =,30769,17665,174565,1745594,17455941,17455941 f((i)) = 0,379153 0,013585 1,974E-05 4,186E-11 0 0 Rozwiązanie równania nieliniowego metodą siecznej lub metodą stycznej. Zadania indywidualne na ocenę według wariantów (realizacja w Ecelu i/lub w postaci programu): 1. 8ln(9)-7 +5=0 1=5.0837389. 15ln(0.1486)-sin()+3=0 1=5.376466 3. 4ln(0.11111)-sin(4)+=0 1=8.6074979 4. 6cos(5)-33-30=0 1=-0.949788 5. 33ln(0.15)-sin(4)+1=0 1=7.541087
6. 5ln(5)-36+9=0 1=0.3115708 7. 9ln(9)-36+9=0 1=0.715679 8. 14ln(0.5)-sin()+4=0 1=1.5149649 9. 4cos(5)-7-8=0 1=-0.485963 10. 3ln(7)-9+=0 1=0.793946 11. 7ln(5)-6+=0 1=3.7544396 1. 5ln(0.11111)-sin(5)+4=0 1=8.61698 13. 38ln(0.15)-sin(4)+9=0 1=6.369373 14. 37ln(0.1486)-sin(5)+1=0 1=6.860134 15. 9cos(3)-31-4=0 1=-1.0641411 16. 3cos(3)-18-37=0 1=-1.919714 17. ln(4)-4+=0 1=1.3391768 18. 19ln(0.16667)-sin(3)+4=0 l=5.0186758 19. 9cos(5)-48-7=0 1=0.038483 0. 1ln(0.5)-sin4+1=0 1=3.8613913 1. 1ln(0.15)-sin()+=0 1=7.501953. 3ln(6)-5+9=0 1=0.48917 3. 9ln(6)-4+10=0 1=1.1505509 4. 9ln(5)-9+=0 1=.8944564 5. 8ln()-+=0 1=14.4574183 Ćwiczenie 3. Rozwiązanie układu równań liniowych: metoda eliminacji Gaussa + redukcja wsteczna. Zadania indywidualne na ocenę według wariantów - realizacja na kartkach (przykładowe zadania znajdują się na końcu tego pliku) + opracowanie programu. Ćwiczenie 4. 1. Rozwiązanie układu równań liniowych A*=b i obliczenie wyznacznika macierzy A. (metoda rozkładu LU z wyborem elementu wiodącego + metoda podstawienia +redukcja wsteczna).. Sprawdzenie mnożenie macierzy L przez macierz U oraz mnożenie macierzy A przez wektor b. Realizacja program. Ćwiczenie 5. 1. Rozwiązanie układu równań liniowych A*X=B (kilka wektorów wyrazów wolnych) i obliczenie macierzy odwrotnej do macierzy A. (metoda Jordana-Gaussa z wyborem elementu wiodącego + redukcja wsteczna).. Sprawdzenie mnożenie macierzy A przez macierz X. Realizacja program. Ćwiczenie 6. 1. Realizacja programowa metody interpolacji wielomianowej (rozbudowa programu opracowanego w ramach ćwiczenia 4,5 lub 6).. Sprawdzenie: obliczenie wartości wielomianu w zadanych punktach (i) (i=0,1,...,n). 3. Realizacja programowa metody aproksymacji wielomianowej. 4. Sprawdzenie: obliczenie kryteriów jakościowych funkcji aproksymującej (odchylenie kwadratowe). Ćwiczenie 7. Zaliczenie zaległych ćwiczeń.
Zaawansowane metody numeryczne WYKŁAD 1 (3 godz.) Macierze pasmowe, rzadkie i blokowe. 1. Formaty przedstawienia w/w macierzy w komputerze.. Operacje na macierzach pasmowych, rzadkich i blokowych. Transponowanie, norma, macierzy, A+B, A-B, const*a, macierz*wektor, macierz*macierz, wyznacznik, odnalezienie macierzy odwrotnej. 3. Osobliwości rozwiązywania układów równań liniowych (URL) z macierzami pasmowymi, rzadkimi i blokowymi. 4. Źle uwarunkowane układy i macierze. Współczynnik uwarunkowania macierzy. WYKŁAD (4 godz.) Ortogonalne macierze i przekształcenia. Rozkład QR-macierzy prostokątnych za pomocą metod przekształceń ortogonalnych. Metoda odbić Householdera: wzory macierzowe, wzory dla macierzy A(4,3), fragment programu; Metoda obrotów Givensa; Ortogonalizacja Gramma-Schmidta. WYKŁAD 3 (3 godz.) Rozwiązanie problemu najmniejszych kwadratów. 1. Rozwiązanie problemu najmniejszych kwadratów w oparciu o metody Householdera i Givensa.. Metoda Faddeeva (oryginalna i ortogonalna) i jej zastosowania. 3. Odnalezienie macierzy odwrotnej i pseudo-odwrotnej w oparciu w/w metody przekształceń orthogonalnych. WYKŁAD 4 (4 godz.) Metody odnalezienia wartości własnych i wektorów własnych macierzy. 1. Metody odnalezienia wartości własnych i wektorów własnych macierzy symetrycznych: Metoda Jacobi ego; Metody iteracji prostej i odwrotnej; Metoda QR i jej modyfikacje: (QR z przesunięciem, QL).. Odnalezienie wartości własnych macierzy trój-diagonalnych i Hessenberga: Metoda bisekcji; Metoda Lanczos a. WYKŁAD 5 (4 godz.) 1. Zastosowanie metod numerycznych w modelowaniu procesów ewolucyjnych: w analizie obwodów elektrycznych, modelowaniu zjawisk fizycznych i ekonomicznych, w biologii.. Numeryczne rozwiązywanie równań różniczkowych zwyczajnych: metody jednokrokowe: schematy różnicowe Eulera, Heuna i Rungego-Kutty; metody wielokrokowe: schematy różnicowe Adamsa-Bashfortha i Adamsa-Moultona; zbieżność schematów różnicowych i dokładność obliczeń; stabilność rozwiązań: funkcja Lapunowa. 3. Numeryczne rozwiązywanie równań różniczkowych: eliptycznych, hiperbolicznych i parabolicznych WYKŁAD 6 (5 godz.). 1. Zapewnienie zadanej dokładności i wiarygodności otrzymywanych wyników przy realizacji komputerowej metod numerycznych metoda zbyteczności czasowej TTR (ang. triple time redundance) ;
działania na przesuniętych argumentach; metoda ważonych sum kontrolnych WCS (ang. weighted checksum method);. Zastosowanie metody WCS do opracowania odpornych na błędy algorytmów algebry liniowej (mnożenia macierzy, redukcji wstecznej, eliminacji Gaussa i in.) WYKŁAD 7 (5 godz.) Realizacja metod numerycznych w systemach specjalistycznych i równoległych. 1. Sposoby obliczenia funkcji elementarnych 1/, sqrt(), sin(), tg(), itd. Metodą Voldera (CORDIC - ang. COordinate Rotation DIgital Computer). Przykład realizacji w oparciu o metodę CORDIC funkcji arctg().. Opracowanie równoległych wersji algorytmów numerycznych (na przykładzie algorytmów macierzowych, np. redukcji wstecznej, eliminacji Gaussa, metody Householdera i in.). Repetytorium ( godz.) Czynności kontrolne i organizacyjne związane z dopuszczeniem do zasadniczej sesji egzaminacyjnej. Literatura: 1. Fortuna Z., Macuków B., Wąsowski J. Metody numeryczne. WNT, 198, 1998 (seria podręczniki akademickie).. Baron B. Metody numeryczne w Turbo-Pascalu. Helion, 1995. 3. Kiełbasiński A., Schwetlick H. Numeryczna algebra liniowa. WNT, 199. 4. Bjorck A., Dahlquist G. Metody numeryczne, PWN, 1987. 5. J. i M. Jankowscy. Przegląd metod i algorytmów numerycznych. WNT, 1981. 6. Kaczorek T. Wektory i macierze w automatyce i elektrotechnice. WNT, 1998. 7. Stoer J. Wstęp do metod numerycznych. PWN, 1979. 8. Ralston A. Wstęp do analizy numerycznej. WNT, 1975. 9. Legras J. Praktyczne metody analizy numerycznej. WNT, 1974. 10. Palczewski A. Równania różniczkowe zwyczajne. WNT, 1999. Ćwiczenia przykładowe Ćwiczenie 1 (3 godz.) Operacje na macierzach pasmowych, rzadkich i blokowych. Opracowanie i przetestowanie: programu konwertującego tablice dwuwymiarową reprezentującej macierz A[M][N] w format CSR i na odwrót; programu mnożenia macierzy pasmowej przez wektor (zadania indywidualne na ocenę według wariantów); programu do obliczenia wyznacznika macierzy blokowej; Ćwiczenie (3 godz.) Rozkład QR-macierzy prostokątnych na czynniki trójkątne. Opracowanie i przetestowanie: programu realizującego rozkład QR macierzy Hessenberga w oparciu o obroty Givensa; programu wyznaczającego prądy we wszystkich gałęziach zadanego obwodu elektrycznego, w oparciu o rozkład QR Householdera i redukcję wsteczną (zadania indywidualne na ocenę według wariantów). Ćwiczenie 3 ( godz.) Obliczenie wartości własnych i wektorów własnych macierzy. Opracowanie i przetestowanie: programu doprowadzającego macierz kwadratową do postaci Hessenberga. programu do odnalezienia wartości i wektorów własnych macierzy Hessenberga. Ćwiczenie 4 ( godz.) Zastosowanie metod numerycznych w modelowaniu procesów ewolucyjnych
Wyprowadzenie wzoru analitycznego (nie rekurencyjnego), pozwalającego na obliczenie i-tego elementu ciągu liczb Fibonacci ego. Model rozwijającej się ekonomiki. Inne podobne zadania. Ćwiczenie 5 ( godz.) Numeryczne rozwiązywanie równań różniczkowych: eliptycznych, hiperbolicznych i parabolicznych Opracowanie i przetestowanie programu formującego (dla zadanego równania różniczkowego) i rozwiązującego układ równań liniowych z pasmową macierzą współczynników (zadania indywidualne na ocenę według wariantów). Ćwiczenie 6 ( godz.) Opracowanie odpornych na błędy algorytmów algebry liniowej. Opracowanie i przetestowanie programu realizującego odporną na błędy wersję algorytmu obrotów Givensa. Ćwiczenie 7 (1 godz.) Zaliczenie zaległych ćwiczeń.
Metody numeryczne Typy błędów powstających przy realizacji metod numerycznych. Dokładność obliczeń. Obliczenie funkcji elementarnych za pomocą szeregów. Macierze i ich typy, operacje na macierzach, prawa algebry macierzowej. Metody rozkładu macierzy na czynniki trójkątne LU, LL T i QR. Metody rozwiązywania układów równań liniowych i odwracania macierzy. Strategia wyboru elementu wiodącego. Obliczenie wyznacznika, rzędu i norm macierzy. Współczynnik uwarunkowania macierzy. Określenie złożoności obliczeniowej metod numerycznych. Interpolacja funkcji: wielomianowa, Lagrange a, Aitkena. Ekstrapolacja i interpolacja odwrotna. Aproksymacja funkcji: liniowa, wielomianowa, trygonometryczna. Metody rozwiązywania równań nieliniowych. Interpretacja geometryczna metod siecznej, stycznej, iteracji prostej. Metody całkowania numerycznego. Numeryczne rozwiązywanie równań różniczkowych metodami Eulera, Runge-Kutty. Metody wielokrokowe.