Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

interpolation_step="7D" raises a ValueError #2

Closed
barentsen opened this issue Dec 23, 2020 · 2 comments
Closed

interpolation_step="7D" raises a ValueError #2

barentsen opened this issue Dec 23, 2020 · 2 comments
Assignees
Labels
bug Something isn't working

Comments

@barentsen
Copy link
Contributor

@jessie-dotson pointed me to the following failure for "2004 QX2", which occurs when interpolation_step="7D" but not when interpolation_step="12H".

>>> from tess_ephem import ephem
>>> ephem("2004 QX2", interpolation_step="7D")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/gb/dev/tess-ephem/src/tess_ephem/ephem.py", line 180, in ephem
    return te.predict(time=time, verbose=verbose)
  File "/Users/gb/dev/tess-ephem/src/tess_ephem/ephem.py", line 100, in predict
    crd = SkyCoord(sky.ra, sky.dec, unit="deg")
  File "/Users/gb/Library/Caches/pypoetry/virtualenvs/tess-ephem-_eKBvW1X-py3.8/lib/python3.8/site-packages/astropy/coordinates/sky_coordinate.py", line 315, in __init__
    skycoord_kwargs, components, info = _parse_coordinate_data(
  File "/Users/gb/Library/Caches/pypoetry/virtualenvs/tess-ephem-_eKBvW1X-py3.8/lib/python3.8/site-packages/astropy/coordinates/sky_coordinate_parsers.py", line 301, in _parse_coordinate_data
    _components[frame_attr_name] = attr_class(arg, unit=unit)
  File "/Users/gb/Library/Caches/pypoetry/virtualenvs/tess-ephem-_eKBvW1X-py3.8/lib/python3.8/site-packages/astropy/coordinates/angles.py", line 536, in __new__
    self._validate_angles()
  File "/Users/gb/Library/Caches/pypoetry/virtualenvs/tess-ephem-_eKBvW1X-py3.8/lib/python3.8/site-packages/astropy/coordinates/angles.py", line 557, in _validate_angles
    raise ValueError('Latitude angle(s) must be within -90 deg <= angle <= 90 deg, '
ValueError: Latitude angle(s) must be within -90 deg <= angle <= 90 deg, got [ 2.57963712e+01  2.59729000e+01  2.61491591e+01  2.63251927e+01
  2.65010451e+01  2.66767606e+01  2.68523836e+01  2.70279586e+01
  2.72035300e+01  2.73791423e+01  2.75548400e+01  2.77306677e+01
  2.79066700e+01  2.80828914e+01  2.82593765e+01  2.84361700e+01
  2.86132785e+01  2.87905570e+01  2.89678223e+01  2.91448914e+01
  2.93215812e+01  2.94977084e+01  2.96730900e+01  2.98475820e+01
  3.00211970e+01  3.01939869e+01  3.03660034e+01  3.05372983e+01
  3.07079232e+01  3.08779300e+01  3.10473073e+01  3.12157924e+01
  3.13830595e+01  3.15487828e+01  3.17126363e+01  3.18742941e+01
  3.20334300e+01  3.21897549e+01  3.23431267e+01  3.24934402e+01
  3.26405899e+01  3.27844702e+01  3.29249755e+01  3.30620000e+01
  3.31953654e+01  3.33246046e+01  3.34491777e+01  3.35685449e+01
  3.36821661e+01  3.37895012e+01  3.38900100e+01  3.39831707e+01
  3.40685360e+01  3.41456770e+01  3.42141650e+01  3.42735709e+01
  3.43234656e+01  3.43634200e+01  3.43930064e+01  3.44118034e+01
  3.44193911e+01  3.44153495e+01  3.43992587e+01  3.43706988e+01
  3.43292500e+01  3.42744390e+01  3.42055787e+01  3.41219286e+01
  3.40227474e+01  3.39072937e+01  3.37748253e+01  3.36246000e+01
  3.34561130e+01  3.32698111e+01  3.30663784e+01  3.28464976e+01
  3.26108507e+01  3.23601183e+01  3.20949800e+01  3.18159189e+01
  3.15226360e+01  3.12146334e+01  3.08914093e+01  3.05524580e+01
  3.01972694e+01  2.98253300e+01  2.94365809e+01  2.90327955e+01
  2.86162057e+01  2.81890430e+01  2.77535372e+01  2.73119154e+01
  2.68664000e+01  2.64186883e+01  2.59683930e+01  2.55146027e+01
  2.50564029e+01  2.45928761e+01  2.41231024e+01  2.36461600e+01
  2.31617181e+01  2.26718160e+01  2.21790903e+01  2.16861816e+01
  2.11957325e+01  2.07103853e+01  2.02327800e+01  1.97648335e+01
  1.93055831e+01  1.88533460e+01  1.84064407e+01  1.79631871e+01
  1.75219081e+01  1.70809300e+01  1.66392032e+01  1.61981618e+01
  1.57598643e+01  1.53263723e+01  1.48997496e+01  1.44820608e+01
  1.40753700e+01  1.36810975e+01  1.32980924e+01  1.29245618e+01
  1.25587140e+01  1.21987598e+01  1.18429129e+01  1.14893900e+01
  1.11369023e+01  1.07861249e+01  1.04382247e+01  1.00943697e+01
  9.75572827e+00  9.42346897e+00  9.09876000e+00  8.78239871e+00
  8.47370106e+00  8.17161352e+00  7.87508371e+00  7.58306071e+00
  7.29449526e+00  7.00834000e+00  6.72366578e+00  6.44000899e+00
  6.15702125e+00  5.87435321e+00  5.59165455e+00  5.30857412e+00
  5.02476000e+00  4.73993661e+00  4.45413684e+00  4.16747252e+00
  3.88005758e+00  3.59200809e+00  3.30344217e+00  3.01448000e+00
  2.72468311e+00  2.43136831e+00  2.13128329e+00  1.82116671e+00
  1.49774828e+00  1.15774878e+00  7.97880000e-01  4.15744230e-01
  1.25420645e-02 -4.09607700e-01 -8.48562953e-01 -1.30215697e+00
 -1.76819804e+00 -2.24447000e+00 -2.73255296e+00 -3.24933644e+00
 -3.81565650e+00 -4.45250267e+00 -5.18104188e+00 -6.02263867e+00
 -6.99885000e+00 -8.12249230e+00 -9.37083894e+00 -1.07120811e+01
 -1.21142760e+01 -1.35455376e+01 -1.49742803e+01 -1.63694600e+01
 -1.77006228e+01 -1.89370767e+01 -2.00474889e+01 -2.10000491e+01
 -2.17625929e+01 -2.23026713e+01 -2.25875900e+01 -2.25984338e+01
 -2.23720888e+01 -2.19594349e+01 -2.14114120e+01 -2.07790241e+01
 -2.01132833e+01 -1.94651100e+01 -1.88750238e+01 -1.83425439e+01
 -1.78569910e+01 -1.74077295e+01 -1.69841675e+01 -1.65757544e+01
 -1.61719800e+01 -1.57644468e+01 -1.53530684e+01 -1.49398271e+01
 -1.45266971e+01 -1.41156434e+01 -1.37086202e+01 -1.33075700e+01
 -1.29140605e+01 -1.25282016e+01 -1.21497443e+01 -1.17784451e+01
 -1.14140658e+01 -1.10563734e+01 -1.07051400e+01 -1.03601016e+01
 -1.00208320e+01 -9.68686328e+00 -9.35772765e+00 -9.03295708e+00
 -8.71208371e+00 -8.39464000e+00 -8.08025583e+00 -7.76894965e+00
 -7.46083766e+00 -7.15603676e+00 -6.85466458e+00 -6.55683936e+00
 -6.26268000e+00 -5.97226702e+00 -5.68552567e+00 -5.40234278e+00
 -5.12260565e+00 -4.84620211e+00 -4.57302057e+00 -4.30295000e+00
 -4.03585708e+00 -3.77151739e+00 -3.50968371e+00 -3.25010895e+00
 -2.99254618e+00 -2.73674868e+00 -2.48247000e+00 -2.22954989e+00
 -1.97817208e+00 -1.72860660e+00 -1.48112384e+00 -1.23599448e+00
 -9.93489490e-01 -7.53880000e-01 -5.17324445e-01 -2.83529840e-01
 -5.20903371e-02  1.77399849e-01  4.05346370e-01  6.32154685e-01
  8.58230000e-01  1.08385062e+00  1.30878816e+00  1.53268739e+00
  1.75519285e+00  1.97594892e+00  2.19459989e+00  2.41079000e+00
  2.62428881e+00  2.83536725e+00  3.04442157e+00  3.25184800e+00
  3.45804261e+00  3.66340137e+00  3.86832000e+00  4.07307527e+00
  4.27746876e+00  4.48118316e+00  4.68390102e+00  4.88530483e+00
  5.08507701e+00  5.28290000e+00  5.47855711e+00  5.67223508e+00
  5.86422148e+00  6.05480382e+00  6.24426951e+00  6.43290586e+00
  6.62100000e+00  6.80875587e+00  6.99604517e+00  7.18265642e+00
  7.36837813e+00  7.55299870e+00  7.73630653e+00  7.91809000e+00
  8.09820228e+00  8.27675561e+00  8.45392697e+00  8.62989329e+00
  8.80483141e+00  8.97891810e+00  9.15233000e+00  9.32519660e+00
  9.49745907e+00  9.66901146e+00  9.83974778e+00  1.00095620e+01
  1.01783481e+01  1.03460000e+01  1.05124349e+01  1.06776630e+01
  1.08417178e+01  1.10046327e+01  1.11664408e+01  1.13271756e+01
  1.14868700e+01  1.16455549e+01  1.18032515e+01  1.19599787e+01
  1.21157553e+01  1.22706002e+01  1.24245322e+01  1.25775700e+01
  1.27297157e+01  1.28809051e+01  1.30310571e+01  1.31800907e+01
  1.33279248e+01  1.34744783e+01  1.36196700e+01  1.37634458e+01
  1.39058605e+01  1.40469958e+01  1.41869336e+01  1.43257558e+01
  1.44635440e+01  1.46003800e+01  1.47363075e+01  1.48712190e+01
  1.50049689e+01  1.51374116e+01  1.52684015e+01  1.53977929e+01
  1.55254400e+01  1.56512332e+01  1.57752068e+01  1.58974311e+01
  1.60179764e+01  1.61369129e+01  1.62543107e+01  1.63702400e+01
  1.64847336e+01  1.65976748e+01  1.67089100e+01  1.68182850e+01
  1.69256461e+01  1.70308391e+01  1.71337100e+01  1.72341319e+01
  1.73320865e+01  1.74275823e+01  1.75206280e+01  1.76112321e+01
  1.76994033e+01  1.77851500e+01  1.78684495e+01  1.79491541e+01
  1.80270848e+01  1.81020628e+01  1.81739090e+01  1.82424444e+01
  1.83074900e+01  1.83688886e+01  1.84265703e+01  1.84804874e+01
  1.85305919e+01  1.85768358e+01  1.86191711e+01  1.86575500e+01
  1.86918991e+01  1.87220442e+01  1.87477860e+01  1.87689249e+01
  1.87852615e+01  1.87965963e+01  1.88027300e+01  1.88034949e+01
  1.87988513e+01  1.87887913e+01  1.87733071e+01  1.87523907e+01
  1.87260343e+01  1.86942300e+01  1.86569305e+01  1.86139304e+01
  1.85649848e+01  1.85098490e+01  1.84482779e+01  1.83800266e+01
  1.83048500e+01  1.82225852e+01  1.81333974e+01  1.80375342e+01
  1.79352427e+01  1.78267702e+01  1.77123636e+01  1.75922700e+01
  1.74666670e+01  1.73354559e+01  1.71984683e+01  1.70555358e+01
  1.69064896e+01  1.67511608e+01  1.65893800e+01  1.64210933e+01
  1.62467084e+01  1.60667484e+01  1.58817361e+01  1.56921942e+01
  1.54986448e+01  1.53016100e+01  1.51015235e+01  1.48984681e+01
  1.46924387e+01  1.44834299e+01  1.42714361e+01  1.40564515e+01
  1.38384700e+01  1.36175656e+01  1.33941331e+01  1.31686479e+01
  1.29415850e+01  1.27134196e+01  1.24846264e+01  1.22556800e+01
  1.20270092e+01  1.17988606e+01  1.15714358e+01  1.13449364e+01
  1.11195643e+01  1.08955215e+01  1.06730100e+01  1.04522081e+01
  1.02331986e+01  1.00160401e+01  9.80079183e+00  9.58751284e+00
  9.37626243e+00  9.16710000e+00  8.96013126e+00  8.75564699e+00
  8.55398451e+00  8.35548150e+00  8.16047591e+00  7.96930594e+00
  7.78231000e+00  7.59972477e+00  7.42137950e+00  7.24700165e+00
  7.07631885e+00  6.90905892e+00  6.74494989e+00  6.58372000e+00
  6.42520813e+00  6.26969495e+00  6.11757173e+00  5.96922993e+00
  5.82506118e+00  5.68545725e+00  5.55081000e+00  5.42137490e+00
  5.29686146e+00  5.17684275e+00  5.06089192e+00  4.94858225e+00
  4.83948710e+00  4.73318000e+00  4.62936655e+00  4.52828023e+00
  4.43028654e+00  4.33575104e+00  4.24503935e+00  4.15851711e+00
  4.07655000e+00  3.99937920e+00  3.92674773e+00  3.85827413e+00
  3.79357695e+00  3.73227477e+00  3.67398623e+00  3.61833000e+00
  3.56502737e+00  3.51420999e+00  3.46611208e+00  3.42096788e+00
  3.37901163e+00  3.34047759e+00  3.30560000e+00  3.27453906e+00
  3.24715868e+00  3.22324870e+00  3.20259899e+00  3.18499939e+00
  3.17023977e+00  3.15811000e+00  3.14844220e+00  3.14123751e+00
  3.13653935e+00  3.13439111e+00  3.13483621e+00  3.13791803e+00
  3.14368000e+00  3.15215410e+00  3.16332668e+00  3.17717269e+00
  3.19366708e+00  3.21278480e+00  3.23450079e+00  3.25879000e+00
  3.28561983e+00  3.31492747e+00  3.34664255e+00  3.38069470e+00
  3.41701356e+00  3.45552877e+00  3.49617000e+00  3.53888124e+00
  3.58366389e+00  3.63053370e+00  3.67950644e+00  3.73059788e+00
  3.78382380e+00  3.83920000e+00  3.89673201e+00  3.95638434e+00
  4.01811123e+00  4.08186695e+00  4.14760578e+00  4.21528203e+00
  4.28485000e+00  4.35626846e+00  4.42951391e+00  4.50456730e+00
  4.58140961e+00  4.66002182e+00  4.74038494e+00  4.82248000e+00
  4.90629436e+00  4.99184071e+00  5.07913810e+00  5.16820561e+00
  5.25906233e+00  5.35172741e+00  5.44622000e+00  5.54254112e+00
  5.64061911e+00  5.74036418e+00  5.84168655e+00  5.94449646e+00
  6.04870417e+00  6.15422000e+00  6.26098345e+00  6.36905080e+00
  6.47850755e+00  6.58943924e+00  6.70193146e+00  6.81606983e+00
  6.93194000e+00  7.04959393e+00  7.16894880e+00  7.28988807e+00
  7.41229527e+00  7.53605393e+00  7.66104763e+00  7.78716000e+00
  7.91430987e+00  8.04255669e+00  8.17199513e+00  8.30271991e+00
  8.43482578e+00  8.56840753e+00  8.70356000e+00  8.84034664e+00
  8.97870535e+00  9.11854264e+00  9.25976511e+00  9.40227936e+00
  9.54599208e+00  9.69081000e+00  9.83666261e+00  9.98357019e+00
  1.01315758e+01  1.02807224e+01  1.04310532e+01  1.05826114e+01
  1.07354400e+01  1.08895745e+01  1.10450186e+01  1.12017686e+01
  1.13598205e+01  1.15191705e+01  1.16798149e+01  1.18417500e+01
  1.20049649e+01  1.21694189e+01  1.23350642e+01  1.25018528e+01
  1.26697368e+01  1.28386685e+01  1.30086000e+01  1.31795071e+01
  1.33514594e+01  1.35245499e+01  1.36988719e+01  1.38745186e+01
  1.40515835e+01  1.42301600e+01  1.44102996e+01  1.45918858e+01
  1.47747602e+01  1.49587642e+01  1.51437394e+01  1.53295274e+01
  1.55159700e+01  1.57029730e+01  1.58906994e+01  1.60793764e+01
  1.62692314e+01  1.64604919e+01  1.66533856e+01  1.68481400e+01
  1.70448962e+01  1.72434476e+01  1.74435011e+01  1.76447633e+01
  1.78469409e+01  1.80497409e+01  1.82528700e+01  1.84561426e+01
  1.86598019e+01  1.88641986e+01  1.90696837e+01  1.92766081e+01
  1.94853232e+01  1.96961800e+01  1.99093958e+01  2.01246512e+01
  2.03414929e+01  2.05594670e+01  2.07781203e+01  2.09969990e+01
  2.12156500e+01  2.14337748e+01  2.16516945e+01  2.18698849e+01
  2.20888223e+01  2.23089829e+01  2.25308434e+01  2.27548800e+01
  2.29813875e+01  2.32099338e+01  2.34399046e+01  2.36706858e+01
  2.39016632e+01  2.41322226e+01  2.43617500e+01  2.45897987e+01
  2.48165892e+01  2.50425094e+01  2.52679468e+01  2.54932892e+01
  2.57189244e+01  2.59452400e+01  2.61724254e+01  2.63998779e+01
  2.66267961e+01  2.68523783e+01  2.70758227e+01  2.72963272e+01
  2.75130900e+01  2.77254309e+01  2.79331569e+01  2.81361966e+01
  2.83344786e+01  2.85279311e+01  2.87164823e+01  2.89000600e+01
  2.90783484e+01  2.92500560e+01  2.94136464e+01  2.95675820e+01
  2.97103241e+01  2.98403334e+01  2.99560700e+01  3.00559884e+01
  3.01385220e+01  3.02021001e+01  3.02451526e+01  3.02661094e+01
  3.02633995e+01  3.02354500e+01  3.01800315e+01  3.00922955e+01
  2.99667398e+01  2.97978664e+01  2.95801879e+01  2.93082372e+01
  2.89765800e+01  2.85790547e+01  2.81063863e+01  2.75483930e+01
  2.68947005e+01  2.61346915e+01  2.52574644e+01  2.42518100e+01
  2.31171103e+01  2.18963991e+01  2.06442765e+01  1.94158857e+01
  1.82665423e+01  1.72513635e+01  1.64250400e+01  1.58266643e+01
  1.54345202e+01  1.52119865e+01  1.51226988e+01  1.51304297e+01
  1.51989760e+01  1.52920900e+01  1.53811544e+01  1.54682793e+01
  1.55632828e+01  1.56760095e+01  1.58163456e+01  1.59942528e+01
  1.62198200e+01  1.65005910e+01  1.68332254e+01  1.72113505e+01
  1.76281238e+01  1.80761313e+01  1.85473308e+01  1.90330500e+01
  1.95386033e+01  2.01275568e+01  2.08791845e+01  2.18754198e+01
  2.32037011e+01  2.49610172e+01  2.72586700e+01  3.02267270e+01
  3.40158149e+01  3.87912231e+01  4.47100920e+01  5.18693126e+01
  6.02196925e+01  6.94768300e+01  7.91100857e+01  8.84771241e+01
  9.70402895e+01  1.04505716e+02  1.10816309e+02  1.16063376e+02] deg
>>> ephem("2004 QX2", interpolation_step="12H")
Empty DataFrame
Columns: [sector, camera, ccd, column, row]
Index: []
@barentsen barentsen added the bug Something isn't working label Dec 23, 2020
@barentsen barentsen self-assigned this Dec 23, 2020
@barentsen
Copy link
Contributor Author

I determined the cause of this bug to be as follows:

  1. 2004 QX2 had a close approach with Earth/TESS. During this time, its declination changed very rapidly (>degrees/day).
  2. As a result, the object ephemeris which was obtained with resolution step="7D" was too coarse, which in turn caused the interpolation performed by TessEphem.predict_sky to be inaccurate.
  3. The inaccurate interpolation included illegal values for declination (>90 degrees), which caused SkyCoord to raise the ValueError seen in the exception message above.

Graphical illustration of the ephemeris of 2004 QX2, including its close encounter:

Screen Shot 2021-01-05 at 09 42 15

@barentsen
Copy link
Contributor Author

I've addressed this in cb2af02 by setting the default interpolation step to 12H.

This is an incomplete fix because there are likely extremely fast-moving objects for which this resolution is insufficient as well.

A better fix would be to properly detect and address periods affected by extreme motion. I opened issue #3 to address this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant