Class CoefficientsFactory


  • public class CoefficientsFactory
    extends Object
    This class is designed to provide coefficient from the DSST theory.
    Author:
    Romain Di Costanzo
    • Method Detail

      • computeQns

        public static double[][] computeQns​(double gamma,
                                            int nMax,
                                            int sMax)
        Compute the Qn,s coefficients evaluated at γ from the recurrence formula 2.8.3-(2).

        Qn,s coefficients are computed for n = 0 to nMax and s = 0 to sMax + 1 in order to also get the derivative dQn,s/dγ = Q(n, s + 1)

        Parameters:
        gamma - γ angle
        nMax - n max value
        sMax - s max value
        Returns:
        Qn,s coefficients array
      • computeQns

        public static <T extends CalculusFieldElement<T>> T[][] computeQns​(T gamma,
                                                                           int nMax,
                                                                           int sMax)
        Compute the Qn,s coefficients evaluated at γ from the recurrence formula 2.8.3-(2).

        Qn,s coefficients are computed for n = 0 to nMax and s = 0 to sMax + 1 in order to also get the derivative dQn,s/dγ = Q(n, s + 1)

        Type Parameters:
        T - the type of the field elements
        Parameters:
        gamma - γ angle
        nMax - n max value
        sMax - s max value
        Returns:
        Qn,s coefficients array
      • computeGsHs

        public static double[][] computeGsHs​(double k,
                                             double h,
                                             double alpha,
                                             double beta,
                                             int order)
        Compute recursively Gs and Hs polynomials from equation 3.1-(5).
        Parameters:
        k - x-component of the eccentricity vector
        h - y-component of the eccentricity vector
        alpha - 1st direction cosine
        beta - 2nd direction cosine
        order - development order
        Returns:
        Array of Gs and Hs polynomials for s from 0 to order.
        The 1st column contains the Gs values. The 2nd column contains the Hs values.
      • computeGsHs

        public static <T extends CalculusFieldElement<T>> T[][] computeGsHs​(T k,
                                                                            T h,
                                                                            T alpha,
                                                                            T beta,
                                                                            int order,
                                                                            Field<T> field)
        Compute recursively Gs and Hs polynomials from equation 3.1-(5).
        Type Parameters:
        T - the type of the field elements
        Parameters:
        k - x-component of the eccentricity vector
        h - y-component of the eccentricity vector
        alpha - 1st direction cosine
        beta - 2nd direction cosine
        order - development order
        field - field of elements
        Returns:
        Array of Gs and Hs polynomials for s from 0 to order.
        The 1st column contains the Gs values. The 2nd column contains the Hs values.
      • computeVns

        public static SortedMap<CoefficientsFactory.NSKey,​Double> computeVns​(int order)
        Compute the Vn,s coefficients from 2.8.2-(1)(2).
        Parameters:
        order - Order of the computation. Computation will be done from 0 to order -1
        Returns:
        Map of the Vn, s coefficients
        Since:
        11.3.3
      • getVmns

        public static double getVmns​(int m,
                                     int n,
                                     int s)
        Get the Vn,sm coefficient from Vn,s.
        See § 2.8.2 in Danielson paper.
        Parameters:
        m - m
        n - n
        s - s
        Returns:
        The Vn, s m coefficient