Zakrycie Saturna przez Księżyc sfotografowane przez kolegę z dalekiego krajuZaplanowane jak każdego tygodnia sobotnie spotkanie pasjonatów astronomii miało szansę na ładną do obserwacji pogodę. W planach była grupa plam, zakrycie Saturna przez Księżyc oraz przynajmniej początek obserwacji Orionidów – meteorów z radiantem w Orionie oraz Leonidów – radiant w Lwie.
Pogoda polska jest jednak nieprzewidywalna jak komety i wszystkie wydarzenia schowały się za chmurami, które przywędrowały z zachodniego krańca nieba zaraz za pięknymi skądinąd Cirrusami. Przygotowując obserwacje w rejonie pałacu zmuszeni jesteśmy do pewnych kompromisów i zamiast całego sprzętu jaki tylko mamy szykujemy precyzyjnie zestawy wyposażenia, aby w jakiś rozsądny sposób zabrać się na dziedzinie. Niestety po rewitalizacji dostęp do terenu parku jest dość ograniczony. Przede wszystkim nie da się wjechać samochodem na nasze miejsca obserwacji, a za jego pomocą transportowaliśmy teleskopy i osprzęt. W zasadzie to dobrze, ale nie dla nas bo nie da się tego obejść. Jak obserwować bez sprzętu? Nasza grupa w tym roku stopniała do liczby gotowej do policzenia na palcach jednej ręki, stąd na piechotę też nie wiele da się przenieść. Do pełnego komfortu musimy zaczekać do wiosny, gdy ruszy, mamy nadzieję budowa Obserwatorium Astrobazy Kepler.
Słynna już grupa plam 2119, która wygenerował kilka rozbłysków w ciągu ostatnich dni w tym dwa klasy X. Tu sfotografowana naszą kamera w dniu następnym po zajęciach, czyli w niedzielę.Chmury rozwiązały nam ten problem tym razem, ale za to mieliśmy wreszcie czas na zrobienie tego co szykujemy od dwóch tygodni. Nim jednak przystąpiliśmy do meritum sprawy, w kilku słowach uczestnicy poznali szczegóły pogrzeby prof. Janusza Gila. Najmłodsi nie bardzo kojarzyli o kogo chodzi, więc po prostu wyjaśniliśmy sobie kim był Pan Profesor i dlaczego tak znaczącą osobą był dla żagańskich miłośników astronomii. Był jak Pole Higgsa dla nas neutrin. W zasadzie nic nie znaczymy niezwykle słabo oddziałując z materią Wszechświata. Ale gdy już do spotkania takiego dojdzie przyciągamy uwagę najtęższych umysłów świata nauki. Dzięki pracy jaką prowadził prof. Janusz Gil, zyskaliśmy na znaczeniu i poznaliśmy naszą historię związaną z Johannesem Keplerem. Niestety od piątku musimy sobie radzić już bez niego i choć niełatwo będzie zdecydowani jesteśmy kontynuować to czego nas nauczył.
Na horyzoncie pojawia się kolejne wydarzenie a mianowicie lądowanie na komecie lądowania
Philae.
Misja Rosetta zyskuje coraz bardziej na znaczeniu nie tylko dla naukowców, bo to jest oczywiste, ale również dla nas zwykłych pasjonatów kosmosu. Oto przyjdzie nam poznać tajemnicę wody na naszej planecie. Czy pochodzi ona z komet, jak przypuszczają astronomowie, czy może jest tu i zawsze była, jak donoszą geolodzy? Zbadać to trzeba u samego źródła. Dlatego niewielki lądownik zostanie osadzony na wybranej przed laty komecie do której uparcie zmierza sonda Rosetta. Przy tej okazji poznaliśmy film jaki przygotował Tomasz Bagiński na zlecenie ESA. Jest czym się zachwycać, bo produkcja jest perfekcyjna. A do tego przenosi nas w niezwykły magiczny świat naszej wyobraźni.
Od dwóch tygodni przygotowywaliśmy się do rozpoczęcia cyklu elementów programowania astronomicznego. Na podstawie znanych algorytmów zajmiemy się samodzielnymi obliczeniami astronomicznymi na naszych komputerach. Do nauki ruszyli najmłodsi z zespołu w tym Alicja i Miłosz. Do programowania wykorzystamy język Python ten sam jaki wdrożony został do projekty Ścieżki Kopernika prowadzonego przez Instytut Astronomii w Zielonej Górze.
Niełatwo jest skłonić początkującego programistę do zajęcia się tworzeniem programu komputerowego od podstaw. Przyzwyczajeni jesteśmy do gotowych i znanych aplikacji i często sami prędzej zadamy sobie masę zachodu by poszukać gotowego rozwiązania niż zdecydujemy się na własne programowanie. Ale tu przyszła niespodzianka. Bo oto okazało się, że to całkiem przyjemne i praktyczne zajęcie, szczególnie gdy wszystko nam wychodzi tak jak chcemy. To dzięki przygotowanym zajęciom mamy taki efekt, ale warto było. Na początek zajmiemy się obliczeniami
Daty Juliańskiej –
Rachuby Ciągłej Dni. W astronomii to niezwykle ważne i podstawowe zadanie. Gdy przyjrzymy się różnym astronomicznym zadaniom obliczeniowym, okaże się, że te elementarne obliczenie jest podstawą wielu algorytmów związanych z ciałami niebieskimi. A czy jest to trudne? Zrobienie tego na kartce papieru nie jest jakieś wyjątkowe, ale gdy przychodzi nam wykonać tych obliczeń wiele, sprawa staje co najmniej żmudna.
Do pracy wykorzystamy interpreter języka Python oraz program który pomoże nam pisać skrypty w tym języku (
PyScripter). Programy są w wersjach anglojęzycznych, ale jak pokazuje praktyka nie stanowi to problemu. Zaczęliśmy od prostych działań matematycznych – podstawowe działania arytmetyczne, by potem przejść do pierwszych programów.
Jako ułatwienie w nauce warto wykorzystać szereg tutoriali dostępnych w sieci, a szczególnie kurs Pythona w serwisie Youtube -
Link
Do rozpoczęcia pracy należy zainstalować sobie na komputerze wspomniane programy – interpreter języka w wersji 2.6:
Link oraz edytor skryptów:
Link . Ten ostatni nie jest konieczny ale na początku zdecydowanie ułatwi pracę z pisaniem programów. Zresztą o nim wspomina nasz kurs języka Python. Wszystkie programy są bezpłatne więc nic cię to nie będzie kosztować …. Poza wysiłkiem intelektualnym.
Co do samego interpretera, to trzeba się zdecydować na wersję 2.x lub 3.x . Niestety one różnią się od siebie na tyle, że programy mogą być nie do przeniesienia bez ręcznej modyfikacji kodu. Poniżej znajdziesz kod naszego algorytmu liczenia Dni Juliańskich więc możesz sam spróbować. PyScripter w tej wersji obsługuje Pythona o numerach od 2.4 do najnowszego 3.4 i tu problemów nie będzie – sprawdziliśmy. Problem z polskimi ogonkami pojawi się tylko na początku póki nie skonfigurujemy edytora skryptów i nie zaczniemy umieszczać wskazówek dla Pythona z jakiego kodowania korzystamy. Przyjęliśmy kodowanie UTF-8 (bardzo popularne). Po uruchomieniu PySciptera należy wejść do menu
Edit potem
File Format i wybrać
UTF-8. Od teraz jak użyjesz polskich liter w kodzie programu to będą tam widoczne po kolejnych uruchomieniach edytora. A umieszczenie wpisu w skrypcie
# -*- coding: UTF-8 -*-
Ustawienia edytora PyScript - wybierz Font i w ustawieniach skrypt ustaw pozycję na środkowoeuropejski by mieć polskie litery w edytorze i w czasie pracy skryptuna początku skryptu spowoduje, że polskie litery będą widoczne w czasie jego działania (w naszym skrypcie znajdziesz ten wpis). Jeśli nadal polskie litery zastępowane są dziwnymi znakami to należy sprawdzić jeszcze jedno miejsce:
Tools dalej wybrać
Options i w rozwiniętym menu wybrać pozycje ustawień edytora -
Editor Options. Wyświetli nam się okienko w którym należy ustawić dwa parametry programu
Font (da przyciski, ale okienko takie samo-ustawiamy w obu miejscach)
środkowoeuropejski
Między wersją 2.x i 3.x Pythona są różnice w używaniu poszczególnych poleceń. Np.
print w starszej wersji używało się bez nawiasów:
print ‘Jakiś napis’
a w wersji 2.7 i 3.x:
print (‘Jakiś napis’)
Program będzie wtedy zgłaszał błędy, które trzeba poprawić ręcznie. Lub po prostu zainstalować kilka wersji interpretera i będzie po problemie.
Poniżej znajduje się przygotowany kod
Dni Juliańskie. Nie należy go mylić z datą juliańską, bo takowa wygląda dość podobnie do gregoriańskiej ale tylko pod względem zapisu. Różnica między nimi w czasie reformy kalendarza to 11 dni. Mówiliśmy o tym na zajęciach w zeszłym tygodniu.
Poniżej treść skryptu:
#-------------------------------------------------------------------------------
# Name: data julianska
# Purpose: python 3.x
#
# Author: astronom
#
# Created: 17-10-2014
# Copyright: (c) astronom 2014
# Licence:
#-------------------------------------------------------------------------------
# -*- coding: UTF-8 -*-
# Po usunieciu chasza przy poniższych liniach 17,18,19 skrypt
# będzie prosil o podanie daty - rok,miesiac,dzien - w kolejnych oknach
# nalezy jednak wstawic chasze w liniach 22,23,24,27,28,29
#R = input("Podaj rok")
#M = input("Podaj miesiąc")
#D = input("Podaj dzień")
#g = input("Podaj godzinę")
#m = input("Podaj minutę")
#s = input("Podaj sekundę")
# Data gregorianska Rok, Miesiac, Dzien
R=2014
M=10
D=17
# Mozna uwzględnic ulamek dnia w obliczeniach
g=22
m=58
s=13
t=g/24+m/(60*24)+s/(3600*24)
# Obliczenia
a=4716+R+int((M+9)/12)
b=1729279.5+367*R+int(275*M/9)-int(7*a/4)+D
c=int((a+83)/100)
e=int(3*(c+1)/4)
jd=b+38-e
# Aby uwzglenic ulamek dnia odkomentuj linie 43
# i umiesc komentarz w linii 39
#jd=b+38-e+t
# Wyswietlenie danych
print('Data gregoriańska:',D,'-',M,'-',R)
print('Dni Juliańskie JD:',jd)
Pliki skryptów
Do obliczenia dni Juliańskich użyliśmy na początek algorytmu ze strony Cybermon. Ale najdziesz go też w Wikipedii czy na stronach archiwum Uranii. Warto zapoznać się z zakresem stosowalności poszczególnych algorytmów. Mają one swoje ograniczenia.
Dlaczego programowanie w ramach zajęć? W naszym Instytucie Astronomii realizowany jest grant badawczy poświęcony falom grawitacyjnym. W ramach tego projektu powstał klaster komputerowy, na którym naukowcy analizują dane z wielu projektów zajmujących się wykrywaniem fal grawitacyjnych a w przyszłości również uzyskiwaniem danych o obiektach w kosmosie. Praca naukowca to nie tylko pozyskiwanie danych badawczych, ale głównie umiejętna ich analiza i komputer w dużej mierze te prace ułatwia. Trzeba go tylko opanować.
Ciekawostką jest zainteresowanie naszego Miłosza zagadnieniami matematycznymi. Często nas nimi zarzuca. Jak się okazuje komputer daje mu szerokie możliwości realizowania ciekawych projektów matematycznych w tym różnych metod obliczeń w tej dziedzinie. A wiek nie stanowi tu żadnej przeszkody. Znajduje on już gotowe skrypty w języku Python i uruchamia w interpreterze. Efekt daje mu wiele satysfakcji. Nam też.
Przeczytaj więcej: