Я пытаюсь вычислить восходы и закаты солнца с помощью пифема, но алгоритм никогда не сходится для полярных регионов?
соблюдать приведенный ниже пример кода. он перебирает весь год с 10-минутными приращениями, запрашивая следующий восход и закат. pyephem всегда возвращается с AlwaysUpError или NeverUpError, но наверняка солнце должно подниматься и садиться хотя бы раз в течение года?
import ephem
from datetime import datetime, timedelta
obs = ephem.Observer()
obs.lat = '89:30'
obs.long = '0'
start = datetime(2011, 1, 1)
end = datetime(2012, 1, 1)
step = timedelta(minutes=10)
sun = ephem.Sun()
timestamp = start
while timestamp < end:
obs.date = timestamp
try:
print obs.next_rising(sun)
except (ephem.AlwaysUpError, ephem.NeverUpError):
pass
try:
print obs.next_setting(sun)
except (ephem.AlwaysUpError, ephem.NeverUpError):
pass
try:
print obs.previous_rising(sun)
except (ephem.AlwaysUpError, ephem.NeverUpError):
pass
try:
print obs.previous_setting(sun)
except (ephem.AlwaysUpError, ephem.NeverUpError):
pass
timestamp += step
либо я использую API неправильно, в pyephem есть ошибка, либо я неправильно понимаю что-то фундаментальное. любая помощь?