Nutze Skyfield fuer praezisere Daemmerungsberechnung

This commit is contained in:
2026-07-13 19:35:39 +02:00
parent dc5292735f
commit 97357a88e0
1092 changed files with 370248 additions and 61 deletions
+51
View File
@@ -0,0 +1,51 @@
URL = 'https://cdsarc.u-strasbg.fr/ftp/cats/I/239/tyc_main.dat'
PANDAS_MESSAGE = """Skyfield needs Pandas to load the Tycho2 catalog
To load the Tycho2 star catalog, Skyfield needs the Pandas data
analysis toolkit. Try installing it using your usual Python package
installer, like "pip install pandas" or "conda install pandas".
"""
_COLUMN_NAMES = (
'Catalog', 'TYC', 'Proxy', 'RAhms', 'DEdms', 'Vmag', '---',
'r_Vmag', 'RAdeg', 'DEdeg', 'AstroRef', 'Plx', 'pmRA',
'pmDE', 'e_RAdeg', 'e_DEdeg', 'e_Plx', 'e_pmRA', 'e_pmDE', 'DE:RA',
'Plx:RA', 'Plx:DE', 'pmRA:RA', 'pmRA:DE', 'pmRA:Plx', 'pmDE:RA',
'pmDE:DE', 'pmDE:Plx', 'pmDE:pmRA', 'Nastro', 'F2', 'HIP', 'BTmag',
'e_BTmag', 'VTmag', 'e_VTmag', 'r_BTmag', 'B-V', 'e_B-V', '---(2)',
'Q', 'Fs', 'Source', 'Nphoto', 'VTscat', 'VTmax', 'VTmin', 'Var',
'VarFlag', 'MultFlag', 'morePhoto', 'm_HIP', 'PPM', 'HD', 'BD', 'CoD',
'CPD', 'Remark',
)
def load_dataframe(fobj):
"""Given an open file for ``tyc_main.dat``, return a parsed dataframe.
If the file is gzipped, it will be automatically uncompressed.
"""
try:
from pandas import read_csv
except ImportError:
raise ImportError(PANDAS_MESSAGE)
fobj.seek(0)
magic = fobj.read(2)
compression = 'gzip' if (magic == b'\x1f\x8b') else None
fobj.seek(0)
df = read_csv(
fobj, sep='|', names=_COLUMN_NAMES, compression=compression,
usecols=['TYC', 'Vmag', 'RAdeg', 'DEdeg', 'Plx', 'pmRA', 'pmDE'],
na_values=[' ', ' ', ' '],
)
df.columns = (
'tyc', 'magnitude', 'ra_degrees', 'dec_degrees',
'parallax_mas', 'ra_mas_per_year', 'dec_mas_per_year',
)
df = df.assign(
ra_hours = df['ra_degrees'] / 15.0,
epoch_year = 1991.25,
)
return df.set_index('tyc')