Class FieldGHmsjPolynomials<T extends CalculusFieldElement<T>>

  • Type Parameters:
    T - type of the field elements

    public class FieldGHmsjPolynomials<T extends CalculusFieldElement<T>>
    extends Object
    Compute the Gmsj and the Hmsj polynomials in the equinoctial elements h, k and the direction cosines α and β and their partial derivatives with respect to k, h, α and β.

    The expressions used are equations 2.7.5-(1)(2) from the Danielson paper.

    Author:
    Romain Di Costanzo, Bryan Cazabonne (field translation)
    • Constructor Detail

      • FieldGHmsjPolynomials

        public FieldGHmsjPolynomials​(T k,
                                     T h,
                                     T alpha,
                                     T beta,
                                     int retroFactor,
                                     Field<T> field)
        Create a set of Gmsj and Hmsj polynomials.
        Parameters:
        k - X component of the eccentricity vector
        h - Y component of the eccentricity vector
        alpha - direction cosine α
        beta - direction cosine β
        retroFactor - -1 if the orbit is represented as retrograde, +1 otherwise
        field - field element
    • Method Detail

      • getGmsj

        public T getGmsj​(int m,
                         int s,
                         int j)
        Get the Gmsj coefficient.
        Parameters:
        m - m subscript
        s - s subscript
        j - order
        Returns:
        the Gmsj
      • getHmsj

        public T getHmsj​(int m,
                         int s,
                         int j)
        Get the Hmsj coefficient.
        Parameters:
        m - m subscript
        s - s subscript
        j - order
        Returns:
        the Hmsj
      • getdGmsdk

        public T getdGmsdk​(int m,
                           int s,
                           int j)
        Get the dGmsj / dk coefficient.
        Parameters:
        m - m subscript
        s - s subscript
        j - order
        Returns:
        dGmsj / dk
      • getdGmsdh

        public T getdGmsdh​(int m,
                           int s,
                           int j)
        Get the dGmsj / dh coefficient.
        Parameters:
        m - m subscript
        s - s subscript
        j - order
        Returns:
        dGmsj / dh
      • getdGmsdAlpha

        public T getdGmsdAlpha​(int m,
                               int s,
                               int j)
        Get the dGmsj / dα coefficient.
        Parameters:
        m - m subscript
        s - s subscript
        j - order
        Returns:
        dGmsj / dα
      • getdGmsdBeta

        public T getdGmsdBeta​(int m,
                              int s,
                              int j)
        Get the dGmsj / dβ coefficient.
        Parameters:
        m - m subscript
        s - s subscript
        j - order
        Returns:
        dGmsj / dβ
      • getdHmsdk

        public T getdHmsdk​(int m,
                           int s,
                           int j)
        Get the dHmsj / dk coefficient.
        Parameters:
        m - m subscript
        s - s subscript
        j - order
        Returns:
        dHmsj / dk
      • getdHmsdh

        public T getdHmsdh​(int m,
                           int s,
                           int j)
        Get the dHmsj / dh coefficient.
        Parameters:
        m - m subscript
        s - s subscript
        j - order
        Returns:
        dHmsj / dh
      • getdHmsdAlpha

        public T getdHmsdAlpha​(int m,
                               int s,
                               int j)
        Get the dHmsj / dα coefficient.
        Parameters:
        m - m subscript
        s - s subscript
        j - order
        Returns:
        dHmsj / dα
      • getdHmsdBeta

        public T getdHmsdBeta​(int m,
                              int s,
                              int j)
        Get the dHmsj / dβ coefficient.
        Parameters:
        m - m subscript
        s - s subscript
        j - order
        Returns:
        dHmsj / dβ