Question about IodLaplace

Hello everyone!
The measurement data is AZ_EL, if I use IodLaplace to estimate the initial orbit, is it necessary to convert the AZ_EL to Ra, Dec? Does Orekit provide a conversion method?
Thank you!

Hi @newWL

I plan to add it in the 12.0 release :slight_smile: which will be released very soon (see Draft: Fix multiple regressions in IOD (!415) · Merge requests · Orekit / Orekit · GitLab)

With the current Orekit version (11.3.3) you can do it without conversion to RaDec:

Frame outputInertialFrame = ...; // Your output inertial frame
AngularAzEl azEl1 = ...;
AngularAzEl azEl2 = ...;
AngularAzEl azEl3 = ...;

PVCoordinates stationInInertial = azEl2.getStation().getBaseFrame().getPVCoordinates(central.getDate(), outputInertialFrame);
IodLaplace laplace =  new IodLaplace(Constants.WGS84_EARTH_MU);
TimeStampedPVCoordinates estimated = laplace.estimate(outputInertialFrame, stationInInertial, azEl1.getDate(), toLineOfSight(azEl1, outputInertialFrame), azEl2.getDate(),
                                                      toLineOfSight(azEl2, outputInertialFrame), azEl3.getDate(), toLineOfSight(azEl3, outputInertialFrame)).getPVCoordinates();

The implementation of toLineOfSight can be:

    public Vector3D toLineOfSight(AngularAzEl azEl, Frame outputInertialFrame) {
        return azEl.getStation().getBaseFrame()
                                .getStaticTransformTo(outputInertialFrame, azEl.getDate())
                                .transformVector(new Vector3D(MathUtils.SEMI_PI - azEl.getObservedValue()[0], azEl.getObservedValue()[1]));
    }

I tested it and it works well. I plan to add it in 12.0

Regards,
Bryan

2 Likes

Another recommendation. Once 12.0 released, I recommend to used IodGauss instead of IodLaplace. This method gives me better results in terms of orbit shape and orbit plane.

1 Like

Much appreciated, thank you.You’ve been very helpful.I can hardly thank you enough for your help.