Piotr Chojnacki.pl

Studia

Gdzie jestem?: piotrchojnacki.pl » Studia » Metody numeryczne



O co w tym wszystkim chodziło!!! :-)) Strasznie zakręcone zajęcia. Chociaż czasami je rozumiałem. Fajnie, gdy ktoś miał jakieś pytanie na egzaminie. Wtedy profesor kazał podnosić prawą rękę, a nie lewą (SLD). Ten przedmiot będę długo wspominał. Na początku kompletnie nic nie wiedziałem co się na nim dzieje i po co to wszystko. Ale z czasem zrozumiałem, że jest to bardzo ważne zagadnienie dla informatyka.

Wykład z tego przedmiotu obejmował przede wszystkim: analizę błędów zaokrągleń procesów obliczeniowych, uwarunkowanie zadania, algorytmy numerycznie poprawne i algorytmy numerycznie stabilne, znajdowanie miejsc zerowych równań nieliniowych, m etody Newtona i siecznych, rozwiązywanie układów równań nieliniowych, postacie wielomianu, obliczanie wartości wielomianu, interpolacja wielomianami, ilorazy różnicowe, postać Lagrange'a i Newtona wielomianu interpolacyjnego, reszta wzoru interpolacyjnego, interpolacja Hermite'a, definicja funkcji sklejanej stopnia 3, interpolacja za pomocą funkcji sklejanych, numeryczne rozwiązywanie układów równań linionych, algorytm Gaussa, rozkład macierzy na iloczyn macierzy trójkątnych, przekształcenia Householdera, wielomiany ortogonalne, zależność rekurencyjna łącząca wielomiany ortogonalne, znajdowanie wielomianu optymalnego w sensie aproksymacji średniokwadratowej, twierdzenie o alternansie, znajdowanie wielomianu optymalnego w sensie aproksymacji jednostajnej, całkowanie numeryczne. kwadratury interpolacyjne, kwadratury Newtona-Cotesa i kwadratury Gaussa.

Na laboratorium z tego przedmiotu miałem do napisania kilka fajnych programów, które poniżej udostępniłem (zip). Polecenia (treści zadań) zapisane są w formacie pdf.




Przed ściągnięciem programu zapoznaj się z krótkim opisem zawartości. Nie piszę programów na zamówienie!!

  • Nad tym zadaniem spędziłem najwięcej czasu. Program sprawdza na przykładach procedury funkcyjne, obliczające z dokładnością bliską dokładności maszynowej wartości następujących funkcji matematycznych: g1(x) := x + e^x - e^3x; g2(x) := log x - 1; g3(x) := sqrt(x^2 + 1) - 1. W każdym wypadku należało zbadać, czy istnieje groźba utraty miejsc znaczących wyniku i (w razie potrzeby) zaproponować sposób uniknięcia groźby. Rozwiązanie zadania bardzo szczegółowo opisałem we wnioskach (pdf)
    pobierz (zip 142 KB)

  • Zadanie polega na tym, aby program zawierał trzy funkcje. Pierwsza z nich funkcja bisekcja oblicza metodą bisekcji przybliżoną wartość (alfa') miejsca zerowego funkcji f. Wartość tę zwraca jako wynik. Parametr epsilon jest wartownikiem jakości wartości przybliżonego pierwiastka funkcji f. Funkcja bisekcja zwraca taką wartość (alfa'), dla której abs(alfa' - alfa) < e; gdzie alfa jest pierwiastkiem funkcji f. Druga funkcja ma dodatkowy parametr n, który decyduje o przerwaniu n-tej iteracji metody bisekcji. To znaczy, że jeśli po n iteracjach połowienia przedziału (a; b) przybliżenie alfa' nie spełnia abs(alfa' - alfa) < epsilon, to przerywa obliczenia i zwraca alfa' jako wynik. Ostatnia funkcja newton oblicza metodą newtona przybliżoną wartość alfa' miejsca zerowego funkcji f. Parametr x0, mówi jakie obrać początkowe przybliżenie x0 w metodzie newtona. Rozwiązanie również zawiera wnioski (pdf)
    pobierz (zip 55 KB)

  • Trzeci program wyznacza współczynniki wielomianu w postaci Newtona, dla którego w (tabx[k]) = taby[k]; k = 0,1,....,n. Procedura oblicza współczynniki wielomianu w postaci Newtona poprzez wyznaczenie wielkosci newb[0], newb[1],..., newb[n]. Funkcja natomiast oblicza wartość w(x) dla argumentu rzeczywistego x wykorzystując uogólniony algorytm Hornera
    pobierz (zip 7 KB)


Jeżeli nie wiesz jak uruchomić programy z rozszerzeniem .PAS zajrzyj na: programowanie Pascal
Copyright © 2004- Piotr Chojnacki. Wszelkie prawa zastrzeżone.