def __init__(self): volcanoes = {} tmp=[] with open(self.filename) as opened: lines = opened.read().split('\n') opened.close() for i in lines: tmp.extend([(i.split('\t'))]) for i in tmp: if not (i==[''] or i[0] == 'Volcano Name'): name=i[0] # print(name+" "+i[10]+"/"+i[9]+"/"+i[8]) if (not i[10] == "") and (not i[9] == "") and (not i[8] == ""): #newtime = JulianDate(utc=datetime(int(i[10]),int(i[9]),int(i[8]), # tzinfo=timezone.utc)).tt newtime=gregorian.to_jd(int(i[10]), int(i[9]), int(i[8])) elif (not i[10] == "") and (not i[9] == "") and i[8] == "": # newtime = JulianDate(utc=datetime(int(i[10]),int(i[9]),1, # tzinfo=timezone.utc)).tt newtime=gregorian.to_jd(int(i[10]), int(i[9]), 1) elif (not i[10] == "") and (i[9] == "") and (i[8] == ""): # newtime = JulianDate(utc=datetime(int(i[10]),1,1, # tzinfo=timezone.utc)).tt newtime=gregorian.to_jd(int(i[10]), 1, 1) else: newtime = None volcanoes[name]={"lat":i[2],"lon":i[3],"time":newtime} # print(newtime) setattr(Volcanoes,"volcanoes",volcanoes)
def test_year_zero(self): assert gregorian.to_jd(1, 1, 1) == 1.0 + gregorian.to_jd(0, 12, 31) assert julian.to_jd(1, 1, 1) == 1.0 + julian.to_jd(0, 12, 31) assert julian.from_jd(julian.to_jd(1, 1, 1) - 1) == (0, 12, 31) self.assertEqual(gregorian.from_jd(gregorian.to_jd(1, 1, 1) - 1), (0, 12, 31))
def setUp(self): self.tm = time.localtime() self.gregoriandate = (self.tm[0], self.tm[1], self.tm[2]) self.c_greg = (1492, 10, 21) self.c = gregorian.to_jd(*self.c_greg) self.jd = gregorian.to_jd(self.gregoriandate[0], self.gregoriandate[1], self.gregoriandate[2]) self.jdcs = range(2159677, 2488395, 2000)
def test_gregorian(self): assert gregorian.to_jd(*self.gregoriandate) == self.jd assert gregorian.to_jd2(*self.gregoriandate) == self.jd self.assertEqual(self.c, 2266295.5) assert gregorian.to_jd(2000, 1, 1) == 2451544.5 assert gregorian.to_jd2(2000, 1, 1) == 2451544.5 self.reflexive(gregorian.from_jd, gregorian.to_jd)
def setUp(self): self.tm = time.localtime() self.gregoriandate = (self.tm[0], self.tm[1], self.tm[2]) self.jd = gregorian.to_jd(self.gregoriandate[0], self.gregoriandate[1], self.gregoriandate[2]) self.x = gregorian.to_jd(2016, 2, 29) self.j = gregorian.to_jd(2015, 9, 24) # around the autumnal equinox self.start = 2457285
def test_gregorian_julian_dif_proleptic(self): self.assertEqual(julian.to_jd(1500, 5, 10), gregorian.to_jd(1500, 5, 20)) assert julian.to_jd(1300, 5, 10) == gregorian.to_jd(1300, 5, 18) assert julian.to_jd(1000, 5, 10) == gregorian.to_jd(1000, 5, 16) assert julian.to_jd(900, 5, 10) == gregorian.to_jd(900, 5, 15) assert julian.to_jd(300, 5, 10) == gregorian.to_jd(300, 5, 11) assert julian.to_jd(200, 5, 10) == gregorian.to_jd(200, 5, 10) assert julian.to_jd(100, 5, 10) == gregorian.to_jd(100, 5, 9) assert julian.to_jd(-1, 5, 10) == gregorian.to_jd(-1, 5, 8)
def test_french_republican(self): assert self.jd == fr.to_jd(*fr.from_jd(self.jd)) assert fr.from_gregorian(2014, 6, 14) == (222, 9, 26) assert (2014, 6, 14) == fr.to_gregorian(222, 9, 26) assert (3, 13, 6) == fr.from_gregorian(1795, 9, 22) for jd in range(2378822, 2488395, 2000): self.assertEqual(jd + 0.5, gregorian.to_jd(*gregorian.from_jd(jd + 0.5)))
def test_day_of_week(self, _): daycount = self.gregorian_dc bce_year, bce_month, bce_day = self.random_bce_ymd() bce_julian_day = gregorian.to_jd(bce_year, bce_month, bce_day) bce_ordinal = daycount.from_gregorian(bce_year, bce_month, bce_day) + 1 ce_year, ce_month, ce_day = self.random_ce_ymd() ce_julian_day = gregorian.to_jd(ce_year, ce_month, ce_day) ce_ordinal = daycount.from_gregorian(ce_year, ce_month, ce_day) + 1 assert self.gregorian_cd.day_of_week(1) == 0 # 1/1/1/CE is a Monday assert self.gregorian_cd.day_of_week(2) == 1 # Tuesday assert self.gregorian_cd.day_of_week(3) == 2 # Wednesday assert self.gregorian_cd.day_of_week(4) == 3 # Thursday assert self.gregorian_cd.day_of_week(5) == 4 # Friday assert self.gregorian_cd.day_of_week(6) == 5 # Saturday assert self.gregorian_cd.day_of_week(7) == 6 # Sunday assert self.gregorian_cd.day_of_week(8) == 0 # Monday assert self.gregorian_cd.day_of_week(bce_ordinal) == utils.jwday( bce_julian_day) assert self.gregorian_cd.day_of_week(ce_ordinal) == utils.jwday( ce_julian_day)
def test_to_gregorian(self): self.assertEqual(gregorian.to_jd(2014, 11, 5), 2456966.5) assert gregorian.to_jd(2012, 3, 1) == 1 + gregorian.to_jd(2012, 2, 29) assert gregorian.from_jd(gregorian.to_jd(2012, 2, 29) + 1) == (2012, 3, 1) assert gregorian.from_jd(gregorian.to_jd(2011, 2, 28) + 1) == (2011, 3, 1) assert gregorian.from_jd(gregorian.to_jd(2012, 3, 2) - 2) == (2012, 2, 29) assert gregorian.from_jd(gregorian.to_jd(2011, 3, 2) - 2) == (2011, 2, 28)
def test_dublin_dc(self): self.assertEqual(dublin.from_gregorian(1900, 1, 1), 0.5) self.assertEqual(dublin.to_gregorian(1), (1900, 1, 1)) self.assertEqual(dublin.to_jd(0), 2415020.0) self.assertEqual( dublin.to_jd(dublin.from_jd(self.c)), gregorian.to_jd(*dublin.to_gregorian(dublin.from_gregorian(*self.c_greg))) ) self.assertEqual(dublin.to_gregorian(dublin.from_jd(1737936)), gregorian.from_jd(1737936)) self.assertEqual(dublin.to_julian(dublin.from_jd(1737936)), julian.from_jd(1737936))
def test_gregorian_proleptic(self): self.assertEqual(gregorian.to_jd(72, 6, 27), 1747535.5) assert gregorian.to_jd2(72, 6, 27) == 1747535.5 for y in range(int(gregorian.EPOCH), int(gregorian.EPOCH) - 10000, -250): assert gregorian.to_jd(*gregorian.from_jd(y)) == y - 0.5 assert gregorian.from_jd(gregorian.to_jd(-1, 3, 1)) == (-1, 3, 1) assert gregorian.from_jd(gregorian.to_jd(-100, 7, 1)) == (-100, 7, 1) assert gregorian.from_jd(gregorian.to_jd(-500, 12, 31)) == (-500, 12, 31) assert gregorian.from_jd(gregorian.to_jd(-1000, 1, 1)) == (-1000, 1, 1)
def test_french_republican_famous_dates(self): self.assertEqual(gregorian.to_jd(1793, 9, 22), fr.to_jd(2, 1, 1)) # 9 Thermidor II self.assertEqual(gregorian.to_jd(1794, 7, 27), fr.to_jd(2, 11, 9)) # 18 Brumaire An VIII assert gregorian.to_jd(1799, 11, 9) == fr.to_jd(8, 2, 18) assert fr.to_jd(2, 9, 22) == gregorian.to_jd(1794, 6, 10) assert fr.to_jd(4, 1, 13) == gregorian.to_jd(1795, 10, 5) assert fr.to_gregorian(5, 12, 18) == (1797, 9, 4) assert fr.to_jd(6, 8, 22) == gregorian.to_jd(1798, 5, 11) assert (2, 9, 22) == fr.from_gregorian(1794, 6, 10) assert (4, 1, 13) == fr.from_gregorian(1795, 10, 5) assert (5, 12, 18) == fr.from_gregorian(1797, 9, 4) assert (6, 8, 22) == fr.from_gregorian(1798, 5, 11) # Coup of 30 Prairial VII self.assertEqual(fr.to_gregorian(7, 9, 30), (1799, 6, 18))
def getJulianDay( n ): if not isinstance( n, RPNDateTime ): raise ValueError( 'a date-time type required for this operator' ) return gregorian.to_jd( n.year, n.month, n.day )
def test_gregorian_1_ma(self): assert gregorian.to_jd(*self.c_greg) == 2266295.5