Programowanie i metody numeryczne - cz. II

Zajęcia nieobowiązkowe dla chętnych z II roku studiów I stopnia na kierunku Astronomia, rok akademicki 2013/2014, semestr letni

Piszemy bardziej zaawansowane programy, nadal w "czystym C". W planie mamy 6 programów na zaliczenie, w tym jeden indywidualny projekt.

Reguły wymagania obecności: maksymalnie 2 nieusprawiedliwione, punktualność!!!

Cel tych zajęć: myśleć i rozumieć. Nic na pamięć, dowolne notatki lub podręczniki, również na kartkówkach i kolokwiach i w trakcie zaliczania zadań.

Reguły oceniania: zaliczenie co najmniej 5 zadań w tym własnego projektu, aktywność, możliwe kolokwium zaliczeniowe z dopytaniem

Dziennik Lekcyjny happy smiley




Zadania

Opis metody

  1. Program rozwiązywania układu równań liniowych metodą Gaussa z częściowym wyborem elementu głównego: czytanie danych macierzowych z pliku, sortowanie, kontrola poprawności danych wejściowych, operacje na macierzach, wielokrotnie zagnieżdżone pętle, parametryzacja algorytmu. Dla ambitnych studentów, propozycja dodatkowa: wymyślić i zastosować sposób kodowania w plikach danych współczynników w postaci ułamków, tak jak to jest w zestawach 1 i 4. Zestawy danych.

Opis biblioteki PGPLOT

  1. Elementy programowania grafiki z użyciem biblioteki PGPLOT: używanie dodatkowych bibliotek, techniki rysowania, tworzenie wykresów, histogramów itp. Tegoroczny (wiosna 2014) temat:"Portret jakiegoś słynnego astronoma sprzed co najmniej 200 lat".
Obrazek 1
W roku 2008 tematem
przewodnim były
Słoneczniki Van Gogha.
Jeden ze studentów solidnie
się napracował jak widać!
[Wersja postscriptowa]

O równaniu Keplera

  1. Program rozwiązywania równania przestępnego pięcioma metodami na przykładzie eliptycznego równania Keplera: wstępna analiza równania, graficzne szacowanie rozwiązania jako przykład otrzymywania danych startowych dla iteracji, przeliczenia danych kątowych, metoda iteracji prostej, metoda Newtona, metoda siecznych, metoda bisekcji, metoda "Regula falsi", porównanie dokładności i efektywności pięciu metod dla różnych mimośrodów i anomalii średnich. Wszystkie metody mają być napisane jako własne funkcje. Dane testowe
  2. Praca z wielkim plikiem danych na przykładzie katalogu Tycho-2: wskaźniki w języku C, wyszukiwanie, sortowanie, wybieranie podzbiorów. Szczegółowy opis tego zadania. Na pracowni, w katalogu /home/COMMON/dydaktyka/PAD_programowanie jest mój program testowy do porównania.      Kilka słów o wskaźnikach w C
  3. Położenie i prędkość na orbicie keplerowskiej z anomalii prawdziwej i przy użyciu zmiennych uniwersalnych. Opis zadania,      Kilka słów o strukturach w C
  4. Indywidualny projekt programistyczny studenta (własny lub wybrany z listy propozycji).

Przypomnienie: o generatorze liczb losowych


Lista proponowanych zadań indywidualnych

(w nawiasie szacowana trudność w skali od 1 do 15)

Tematy astronomiczne:


  1. Mapy gwiazdozbiorów (10-15)
  2. Wirtualny teleskop w oparciu o katalog gwiazd (12 - 15)
  3. Współrzędne prostokątne i sferyczne planet z elementów średnich (7)
  4. Program do konwersji starych oznaczeń komet na nowe, Dane (8)
  5. Wschody i zachody Słońca (10 - 15) Patrz na przykład tu i tu.
  6. Wschody i zachody Księżyca (10 - 15)Patrz na przykład tu i tu.
  7. Geocentryczna (10) lub topocentryczna(15) efemeryda planetki
  8. Geocentryczna efemeryda planet oparta na efemerydzie JPL DE421 (15).
  9. Miejsca widome gwiazd (8 - 15)
  10. Momenty faz Księżyca w danym roku (dzień, godzina, minuta) w czasie urzędowym w Polsce (8)
  11. Elementy -> pozycje -> elementy -> pozycje dla dowolnego mimośrodu (12)
  12. Elementy orbity z dwóch położeń (12)
  13. Analityczne i numeryczne pochodne położeń po elementach (8)
  14. Diagramy HR dla różnych podzbiorów katalogu Hipparcos (12-14)
  15. Topocentryczna efemeryda gwiazdy w układzie horyzontalnym plus kąt godzinny (8-12)
  16. Rozwiązanie dowolnego trójkąta sferycznego (8-12)
  17. Przeliczanie miejsc średnich pomiędzy epokami czyli precesja i ruchy własne (12)
  18. Testowanie dopasowania prostej metodą najmniejszych kwadratów (10 - 14)

Tematy nieastronomiczne:


  1. Gra w kółko i krzyżyk do 5 na planszy 19x19 (10 - 15)
  2. Wyliczenie pierwszych 200 cyfr liczby e lub π (12)
  3. Czterodziałaniowy kalkulator o dowolnej precyzji (15)
  4. Gra w numerki (8)
  5. Grafika - wypełnianie dowolnego wielokąta (12)
  6. Grafika - własna biblioteka graficzna (10-15)
  7. Gra LIFE (8 - 12)
  8. Korekta ortograficzna tekstu polskiego (10 - 15)
  9. Grafika - obroty trójwymiarowej bryły (12 - 15)
  10. Gra Mu-Torere ( http://www.lutanho.net/play/mutorereshisima.html )
  11. Gra w zapałki (8-12). Gra znana jako NIM, wariant z filmu "L'année dernière à Marienbad" ( Last Year at Marienbad )


Przykładowa literatura

  1. A. Ralston, Wstęp do analizy numerycznej, PWN, 1971
  2. G. Dahlquist, A. Bjorck, Metody numeryczne, PWN, 1983
  3. J. Legras, Praktyczne metody analizy numerycznej, WNT, 1974
  4. J. Stoer, Wstęp do metod numerycznych, tom 1., PWN, 1979
  5. M. Dryja, J. M. Jankowscy, Przegląd metod numerycznych, cz.2., WNT, 1982
  6. http://www.astro.caltech.edu/~tjp/pgplot/
  7. http://www.moshier.net/
  8. http://astro.if.ufrgs.br/trigesf/position.html
  9. http://aa.quae.nl/en/antwoorden/