On the use of the 18SDS’s SP ephemerides

Hi everyone,

Is there an easy way in Orekit to read 18SDS’s SP ephemerides (nota: the data format seems to have changed a bit since this document was published) and generate an ephemeris that I could then use to interpolate data, a bit like the CPF files can be read and used?

Since the frame used in those files is the TEME frame, do you have any update about the conversion between TEME and GCRF as was discussed in this previous topic?

Thanks in advance !

Hi @nrol,

Not to my knowledge.
But since it’s a well-defined column ASCII file it should be easy to read with Java.
Once you have the set of SpacecraftState you can build an Ephemeris object to hold it and interpolate in that set.
By the way, contributions are always welcome :wink:

I don’t think so. However, since there is no propagation involved in your case I don’t think this potential issue is a problem for you.

Hope this helps,

1 Like

Hi there,
Since there was no parser for those files, I developed a new parser in the style of the “CPFParser” (and connected files).

  1. Right now it parses the files expecting the format of the files I got (each data point in on 2 lines), not in the format described in the PDF (each data point on 1 line). Is it the same for everyone who get these files or is there a way to get the 1-line format files ?
  2. How would you do if you were to add the possibility to parse according to 2 different formats ? I suppose it could be in the Parser class using a simple int variable “fileFormat” but then how can I easily modify the local LineParser enum so that it adapts to the fileFormat variable ?
  3. How can I share the parser to you ? I suppose it’s by following this guide ? If so, the source branch should be the develop branch ? I’ve never contributed to that kind of project so any help and advice is welcome ! :sweat_smile:

Have a nice day

Hi @nrol,

That’s great if you want to contribute it !! Thanks!
The entry point is the contribution guide that you already mentioned.
You should:

  • Open an issue on the forge: issue-XXX
  • Code your new feature on a dedicated branch (issue-XXX) based on the develop branch
  • Push it on your fork repository of Orekit
  • Open a merge request to submit it for revision

If you need more details we can help and walk you through some of the steps.

Sounds like a proper solution. Maybe a constant String or an enumerate would be better than an integer.

I don’t know how different the one-line and two-lines files are but the problem is that an enumerate like LineParser cannot be extended in Java. I guess you will have to create two classes, one for the one-line files, the other one for the two-lines files. With an abstract class above for the common parameters and methods.
Each class would have its own LineParser and there will probably be some code duplications involved…
Other solution: in a single class develop two enumerates, OneLineParser and TwoLinesParser, and use the proper one depending on the file format.
That being said I’m not an expert in file parsing so maybe there are more elegant solutions.

1 Like

So, I’m trying to configure everything in order to be able to commit on a branch in my fork but before that, I’m trying to configure Eclipse properly, especially the Checkstyle part. Problem is, the images in the guide seem to be broken, I can’t access them :thinking:

Could you give me the information they gave, please ? :slight_smile:

Hi @nrol,

Indeed the links aren’t functional anymore, I don’t know why. I’ll open an issue about it.
You can find the images here, that’s where the links should be redirected to.

Have a nice day,

I’ve just remembered one of my colleagues ran into this issue in the past. I’ll ask her.
This version of the contributing guide works if you want the images embedded in the page.