Nutze Skyfield fuer praezisere Daemmerungsberechnung
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
"""Routines to download Earth orientation data."""
|
||||
|
||||
import numpy as np
|
||||
import os
|
||||
from skyfield.api import load
|
||||
from skyfield.timelib import julian_date
|
||||
|
||||
def morrison_and_stephenson_2004_table():
|
||||
"""Table of smoothed Delta T values from Morrison and Stephenson, 2004."""
|
||||
import pandas as pd
|
||||
f = load.open('http://eclipse.gsfc.nasa.gov/SEcat5/deltat.html')
|
||||
tables = pd.read_html(f.read())
|
||||
df = tables[0]
|
||||
return pd.DataFrame({'year': df[0], 'delta_t': df[1]})
|
||||
|
||||
def parse_S15_table(f):
|
||||
"""Parse polynomial coefficients from Table S15.
|
||||
|
||||
The table is available at the website of Her Majesty's Nautical
|
||||
Almanac Office, from the paper “Measurement of the Earth's Rotation:
|
||||
720 BC to AD 2015” by L.V. Morrison, F.R. Stephenson, C.Y. Hohenkerk
|
||||
and M. Zawilski 2021.
|
||||
|
||||
"""
|
||||
# http://astro.ukho.gov.uk/nao/lvm/Table-S15.2020.txt
|
||||
content = f.read()
|
||||
banner = b'- ' * 36 + b'-\n'
|
||||
sections = content.split(banner)
|
||||
names = sections[1].splitlines()[-1].decode('utf-8').split()
|
||||
table = np.loadtxt(sections[2].splitlines())
|
||||
return names, table.T
|
||||
|
||||
def main():
|
||||
thisdir = os.path.dirname(__file__)
|
||||
|
||||
df = morrison_and_stephenson_2004_table()
|
||||
year = df.year.values
|
||||
jd = julian_date(year, 1, 1)
|
||||
delta_t = df.delta_t.values
|
||||
array = np.array((jd, delta_t))
|
||||
np.save(os.path.join(thisdir, 'morrison_stephenson_deltat.npy'),
|
||||
array)
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
Reference in New Issue
Block a user