Partnerzy

Astro-Miejsca


URANIA

astroturystyka

100 lat IAU

IAU

Comet

Centrum Nauki Kepler

Planetarium Wenus

ERC

Centrum Nauk Przyrodniczych

Orion,serwis,astronomii,PTA

POLSA

Astronomia Nova

Astronarium

forum astronomiczne

IPCN

Portal AstroNet

Puls Kosmosu

Forum Meteorytowe

kosmosnautaNET

kosmosnautaNET

Nauka w Polsce

astropolis

astromaniak

PTMA

PTR

heweliusz

heweliusz

ESA

Astronomers Without Borders

Hubble ESA

Space.com

Space Place

Instructables

Tu pełno nauki

Konkursy

Olimpiady Astronomiczne
Olimpiada Astronomiczna przebiega w trzech etapach.
Zadania zawodów I stopnia są rozwiązywane w warunkach pracy domowej. Zadania zawodów II i III stopnia mają charakter pracy samodzielnej. Zawody finałowe odbywają się w Planetarium Śląskim. Tematyka olimpiady wiąże ze sobą astronomię, fizykę i astronomiczne aspekty geografii. Olimpiady Astronomiczne


Urania Postępy Astronomii - konkurs dla szkół


astrolabium

Organizatorem konkursu astronomicznego jest Fundacja dla Uniwersytetu Jagiellońskiego a patronat nad akcją sprawuje Obserwatorium Astronomiczne im. Mikołaja Kopernika będące instytutem Wydziału Fizyki, Astronomii i Informatyki Stosowanej Uniwersytetu Jagiellońskiego w Krakowie.
Zobacz szczegóły »

astrolabium

konkurs, astronomiczny

AstroSklepy

Serwis Astro - 30 lat AstroDoświadczenia!

Astro Schopy
 Firma ScopeDome

Planeta Oczu

Astrocentrum

NEO każdego dnia z Pythonem

Tak. I to na dwa sposoby. Pierwszy jest prosty. Wystarczy kliknąć l ink i wejść na stronę NASA. Tam znajdziemy wszystkie wiadomości na temat takich obiektów. Jest ich czasem sporo, a jak wejdziemy głębiej w serwis to okaże się, że jest ich bardzo dużo. Ale możemy sobie to uprościć za pomocą języka Python, który systematycznie poznajemy na zajęciach sekcji astronomicznej. To jest dobry przykład jak przydaje się umiejętność programowania.

Poniższy skrypt połączy się z serwerem NASA i pobierze gotowe dane. Potem je sformatuje i wyświetli tak by by dla nas czytelne. Nie musi tego być wiele. Ale dzisiaj (10.11.2019) tych planetoid pojawiło się 12. Bywa, że nie ma żadnej.

Ale to nie znaczy, że ich nie może być. To w NASA nie wiedza nic o tych obiektach. Tak się może zdarzyć. Niektóre obiekty mogą być tak małe, lub zbliżać się do nas od strony Słońca i możemy ich nie wykryć nawet technikami radarowymi. Moim zdaniem służba ochrony Ziemi działa już całkiem sprawnie. Wiemy o wielu asteroidach przelatujących w naszym pobliżu. Skrypt wyświetli nam wiadomości o tych, które stanowią zagrożenie kolizją z Ziemią.

Sekcja Astronomiczna specjalizuje się w małych ciałach niebieskich (asteroidach). Bierzemy udział kilka razy w roku w projekcie poszukiwania planetoid IASC. To jest przedsionek naszych starań o poznanie tajemnic tych obiektów. Są one niezwykle ciekawe i mają wiele tajemnic. Wiedza o nich jest nam konieczna do poznania, bo warunkuje to czy przetrwamy czy tak jak dinozaury znikniemy z powierzchni na zawsze.

#Real time Asteroid Watch - www.101computing.net/real-time-asteroid-watch/ fNbj5dugfaqytqHVLfpPagEWbsu1rmOkFNY6b6xh
import json, urllib.request, time

today = time.strftime('%Y-%m-%d', time.gmtime())
print("Date: " + today)

#Our JSON request to retrieve data about asteroids approaching planet Earth.
url = "https://api.nasa.gov/neo/rest/v1/feed?start_date=" + today + "&end_date=" + today + "&detailed=true&api_key=DEMO_KEY"
## klucz DEMO_KEY można zastąpić prywatnym kluczem po zarejestrowaniu usługi w NASA
response = urllib.request.urlopen(url)
result = json.loads(response.read())

print("Today " + str(result["element_count"]) + " asteroids will be passing close to planet Earth:")
print("")
#print(url)
print("")
asteroids = result["near_earth_objects"]

#Parsing all the JSON data:
for asteroid in asteroids:
    for field in asteroids[asteroid]:
      try:
        print("Asteroid Name: " + field["name"])
        estimated = round((field["estimated_diameter"]["meters"]["estimated_diameter_min"]+field["estimated_diameter"]["meters"]["estimated_diameter_max"]),2)
        
        print("Estimated Diameter: " + str(estimated) + " meters")
        
        print("Close Approach Date & Time: " + field["close_approach_data"][0]["close_approach_date_full"])
        print("Velocity: " + str(field["close_approach_data"][0]["relative_velocity"]
                                 ["kilometers_per_hour"]) + " km/h") 
        print("Distance to Earth: " + str(field["close_approach_data"][0]
                                          ["miss_distance"]["kilometers"]) + " km") 
   
        if field["is_potentially_hazardous_asteroid"]:   
          print ("This asteroid could be dangerous to planet Earth!")
        else:
          print ("This asteroid poses not threat to planet Earth!")
      except:
        print("Unable to access all data.")
      print("--------------------")



i kolejny skrypt:

#!/bin/python3
#NASA NEO
#Big thanks to NASA API (https://api.nasa.gov/api.html), get your API key from this site.
import json, requests, time
#variables
api= "DEMO_KEY"
#I have an API Key but I don"t want to share it here!
start_date=""
end_date=""
result=""
n=""
#message to welcome the user
print("Hi and welcome to GeekTechStuff\"s NASA Near Earth Object (NEO) Python program")
print("This programme uses NASA\"s open API system")
print("This Python program searches a data for NEOs")
print("")
#asks the users for dates, these must be in yyyy-mm-dd format
today = time.strftime('%Y-%m-%d', time.gmtime())
start_date = today
## start_date=input("Please enter an eight digit date in yyyy-mm-dd format for the start date:")
#end_date=input("Please enter an eight digit date in yyyy-mm-dd format for the end date:")
end_date=start_date
#opens JSON file containing NEO data
url="https://api.nasa.gov/neo/rest/v1/feed?start_date="+start_date+"&end_date="+end_date+"&api_key="+api
response=requests.get(url)
response.raise_for_status()
neodata=json.loads(response.text)
number_of_neo=neodata["element_count"]
nd=neodata["near_earth_objects"]
nd2=nd[start_date]
print("Loading data from NASA")
print("")
#uses the json loaded from get_json
print("On",start_date,"there were",number_of_neo,"near Earth objects")
print("")
neo_range=range(number_of_neo)
for n in neo_range:
    print("Neo Ref:")
    print(nd2[n]["neo_reference_id"])
    print("Neo Name:")
    print(nd2[n]["name"])
    print("Check out the NASA page for the NEO at:")
    print(nd2[n]["nasa_jpl_url"])
    if nd2[n]["is_potentially_hazardous_asteroid"] == False:
        print("It was not potentially hazardous")
    else:
        print("It was potentially hazardous")
    print("")
Brak komentarzy. Może czas dodać swój?

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ć.

Brak ocen. Może czas dodać swoją?
31,501,306 unikalne wizyty