Interpolating ephemeris in ITRF

Hi!

I have an epehemeris file with multiple positions, velocities (in ITRF) and dates. I can easly construct TimeStampedPVCoordinates or even AboslutePVCoordinates. Unfortunately this data is sampled every 10s or so and I need measurements let’s say every 1 second. How can I interpolate this data in Orekit (preferably in Python but I can manage with Java code)? I’ve tried converting this data to SpacecraftState to construct an Ephemeris but this is not possible in ITRF.

You can use the static method TimeStampedPVCoordinates.interpolate(date, filter, sample)

Thanks @luc for quick answer! Unfrotunately this is not exactly what I have in mind, I am aware that I may not explained myself clearly. I have measurements spannig whole orbit period (about 100 minutes) with 10s sampling and I need a way to find position given some time. I wanted to construct a bounded propagator from those measurements but I find it difficult with ITRF and no python tutorials on how to convert list of measurements to orbit/propagator.

I’ll bump this question and kinda reiterate myself. I am looking for the most precise measurement I can get. One approach is to use TimeStampedPVCoordinates.interpolate(). It works fine, but in my ephemeris I have around 600 measurements, for interpolation I can use sample of around 10 or 20. I tried using @yzokras GitHub guide: orbit-determination-examples/01-keplerian-od-with-iod.ipynb at a5b592656cadb411f7edafdf15e16d8b3ca3eeaa · GorgiAstro/orbit-determination-examples · GitHub but results were much worse than expected.

To give an example of what I’m working on. I have an image with satellite trail (this image is a collage of many images, taken with 0.2s exposure) on it. I have a precise ephemeris (.EOF file, looks kinda like .XML) of this satelite. Additionally I have an astrometric solution for this image so (given observing location) I can transform any pixel XY from this image to AZEL and any AZEL to XY. I tried transforming measurements from ephemeris to XY and draw them on my image, but unfortunately they don’t line up (see attached image). I suspect that either astrometric solution is off, or interpolating those inbetween positions is off, or transforming .EOF measurements to RADEC is off. I would be very thankful for any help or suggestions on how to approach this problem, for example, how to precisely construct and propagate an orbit given precise ephemeris (or maybe interpolating from 10ish points is even more precise). Maybe someone saw similar problem or worked with EOF files and there is something I don’t know.

Zoomed in picture of multiple trails. Dots should line up with trailes, yet they don’t.

Hey there,

For interpolation of precise ephemeris with a frequency of a few minutes you can also use SplineInterpolator from Hipparchus.

Cheers,
Romain

Hi there @Serrof and @luc . I notice that TimeStampedPVCoordinates.interpolate() has been removed from 12.x. Do you have any recommendations on what to swap to? I see in the release notes that improvements were made in state interpolation, is it possible this same functionality got moved elsewhere?

Greatly appreciated!
Sam

Hi @roanoar welcome

You should look at at TimeStampedPVCoordinatesHermiteInterpolator.

1 Like

Thank you @luc !