Class IodHerrickGibbs


  • public class IodHerrickGibbs
    extends Object
    HerrickGibbs position-based Initial Orbit Determination (IOD) algorithm.

    An orbit is determined from three position vectors. Because Gibbs IOD algorithm is limited when the position vectors are to close to one other, Herrick-Gibbs IOD algorithm is a variation made to address this limitation. Because this method is only approximate, it is not robust as the Gibbs method for other cases.

    Since:
    13.1
    Author:
    Bryan Cazabonne
    See Also:
    "Vallado, D., Fundamentals of Astrodynamics and Applications, 4th Edition."
    • Constructor Detail

      • IodHerrickGibbs

        public IodHerrickGibbs​(double mu)
        Constructor.
        Parameters:
        mu - gravitational constant
    • Method Detail

      • estimate

        public Orbit estimate​(Frame frame,
                              Position p1,
                              Position p2,
                              Position p3)
        Give an initial orbit estimation, assuming Keplerian motion.

        All observations should be from the same location.

        Parameters:
        frame - measurements frame, used as output orbit frame
        p1 - First position measurement
        p2 - Second position measurement
        p3 - Third position measurement
        Returns:
        an initial orbit estimation at the central date (i.e., date of the second position measurement)
      • estimate

        public Orbit estimate​(Frame frame,
                              PV pv1,
                              PV pv2,
                              PV pv3)
        Give an initial orbit estimation, assuming Keplerian motion.

        All observations should be from the same location.

        Parameters:
        frame - measurements frame, used as output orbit frame
        pv1 - First PV measurement
        pv2 - Second PV measurement
        pv3 - Third PV measurement
        Returns:
        an initial orbit estimation at the central date (i.e., date of the second PV measurement)
      • estimate

        public Orbit estimate​(Frame frame,
                              Vector3D r1,
                              AbsoluteDate date1,
                              Vector3D r2,
                              AbsoluteDate date2,
                              Vector3D r3,
                              AbsoluteDate date3)
        Give an initial orbit estimation, assuming Keplerian motion.

        All observations should be from the same location.

        Parameters:
        frame - measurements frame, used as output orbit frame
        r1 - position vector 1, expressed in frame
        date1 - epoch of position vector 1
        r2 - position vector 2, expressed in frame
        date2 - epoch of position vector 2
        r3 - position vector 3, expressed in frame
        date3 - epoch of position vector 3
        Returns:
        an initial orbit estimation at the central date (i.e., date of the second position measurement)
      • estimate

        public <T extends CalculusFieldElement<T>> FieldOrbit<T> estimate​(Frame frame,
                                                                          FieldVector3D<T> r1,
                                                                          FieldAbsoluteDate<T> date1,
                                                                          FieldVector3D<T> r2,
                                                                          FieldAbsoluteDate<T> date2,
                                                                          FieldVector3D<T> r3,
                                                                          FieldAbsoluteDate<T> date3)
        Give an initial orbit estimation, assuming Keplerian motion.

        All observations should be from the same location.

        Type Parameters:
        T - type of the elements
        Parameters:
        frame - measurements frame, used as output orbit frame
        r1 - position vector 1, expressed in frame
        date1 - epoch of position vector 1
        r2 - position vector 2, expressed in frame
        date2 - epoch of position vector 2
        r3 - position vector 3, expressed in frame
        date3 - epoch of position vector 3
        Returns:
        an initial orbit estimation at the central date (i.e., date of the second position measurement)