PyEpchem i Python
-
jacek
08/10/2019
- Programowanie
- 1964 czytań 0 komentarzy
PyEphem. Centrum Astronomii UMK. Krzysztof Katarzyński.
#!/usr/bin/python3
#-------------------------------------------------------------------------------
# Name: Księżyce Jowisza - ephem v.2
# Purpose: python 3.7 i 3.6
#
# Author: Jacek Patka
#
# Created: 08-10-2019
# Copyright: (c) astronom 2019
# Licence: Jacek Patka - jpatka@wp.pl
#-------------------------------------------------------------------------------
# -*- coding: UTF-8 -*-
# Importujemy potrzebne moduły
import matplotlib.pyplot as plt
import ephem as ep
import numpy as np
# Tworzymy obiekty - księżyce
Io = ep.Io()
Eu = ep.Europa()
Ga = ep.Ganymede()
Ca = ep.Callisto()
# PUSTE LISTY DO KTÓRYCH BĘDZIEMY
# DOPISYWAĆ KOLEJNE WSPÓŁRZĘDNE
y = [] # wspólna wsp. y
xIo = [] # współrzędna x dla
xEu = [] # każdego księżyca
xGa = [] # osobno
xCa = []
# krok czasowy - godzina
dt = ep.hour
# czas początkowy
ts = ep.now()
# czas aktualny
tm = ts
# GŁÓWNA PĘTLA OBLICZENIOWA
for i in range (2*24):
# obliczamy wsp. y-ową
y.append((tm-ts)*24.0)
# obliczamy wsp. x-owe
Io.compute(tm)
Eu.compute(tm)
Ga.compute(tm)
Ca.compute(tm)
# dodajemy wyliczenia do list
xIo.append(Io.x)
xEu.append(Eu.x)
xGa.append(Ga.x)
xCa.append(Ca.x)
# zwiększamy czas o godzinę
tm += dt
# rysujemy wynik
fig,ax = plt.subplots(figsize=(12,9), dpi=150)
ax.plot(xIo, y, marker="o", markersize=5, markerfacecolor="orange",
markeredgewidth="1", markeredgecolor="black", label="Io")
ax.plot(xEu, y, marker="o", markersize=5, markerfacecolor="white",
markeredgewidth="1", markeredgecolor="black", label="Eu")
ax.plot(xGa, y, marker="o", markersize=5, markerfacecolor="brown",
markeredgewidth="1", markeredgecolor="black",label="Gan")
ax.plot(xCa, y, marker="o", markersize=5, markerfacecolor="gray",
markeredgewidth="1", markeredgecolor="black", label="Cal")
ax.plot(np.zeros(len(y)), y, marker="o", markersize=8, markerfacecolor="black",
markeredgewidth="1", markeredgecolor="black", label="Jowisz", alpha=0.5)
# opis rysunku
ax.legend(loc=4)
ax.set_xlabel(u"pozycja względem Jowisza")
ax.set_ylabel("czas od chwili obecnej\n(UT:%s)"%ts)
ax.set_title(u"Ruch księżyców galileuszowych")
fig.savefig("KsiezyceJowisza-ax.pdf", dpi=200) ##możłiwe formaty PNG
## JPG EPS SVG PGF PDF
fig.savefig("KsiezyceJowisza-ax.png", dpi=200)
plt.show()
Dodaj komentarz
Zaloguj się, aby móc dodać komentarz.
Oceny
Tylko zarejestrowani użytkownicy mogą oceniać zawartość strony
Zaloguj się , żeby móc zagłosować.
Zaloguj się , żeby móc zagłosować.
Brak ocen. Może czas dodać swoją?



















































