Class FieldHansenThirdBodyLinear<T extends CalculusFieldElement<T>>

  • Type Parameters:
    T - type of the field elements

    public class FieldHansenThirdBodyLinear<T extends CalculusFieldElement<T>>
    extends Object
    Hansen coefficients K(t,n,s) for t=0 and n > 0.

    Implements Collins 4-254 or Danielson 2.7.3-(7) for Hansen Coefficients and Danielson 3.2-(3) for derivatives. The recursions are transformed into composition of linear transformations to obtain the associated polynomials for coefficients and their derivatives - see Petre's paper

    Author:
    Petre Bazavan, Lucian Barbulescu, Bryan Cazabonne
    • Constructor Detail

      • FieldHansenThirdBodyLinear

        public FieldHansenThirdBodyLinear​(int nMax,
                                          int s,
                                          Field<T> field)
        Constructor.
        Parameters:
        nMax - the maximum value of n
        s - the value of s
        field - field used by default
    • Method Detail

      • computeInitValues

        public void computeInitValues​(T chitm1,
                                      T chitm2,
                                      T chitm3)
        Compute the initial values (see Collins, 4-255, 4-256 and 4.259)

        K₀s, s = (-1)s * ( (2*s+1)!! / (s+1)! )

        K₀s+1, s = (-1)s * ( (2*s+1)!! / (s+2)! ) * (2*s+3 - χ-2)

        dK₀s+1, s / dχ = = (-1)s * 2 * ( (2*s+1)!! / (s+2)! ) * χ-3

        Parameters:
        chitm1 - sqrt(1 - e²)
        chitm2 - sqrt(1 - e²)²
        chitm3 - sqrt(1 - e²)³
      • getValue

        public T getValue​(int n,
                          T chitm1)
        Compute the value of the Hansen coefficient K₀n, s.
        Parameters:
        n - n value
        chitm1 - χ-1
        Returns:
        the coefficient K₀n, s
      • getDerivative

        public T getDerivative​(int n,
                               T chitm1)
        Compute the value of the Hansen coefficient dK₀n, s / dΧ.
        Parameters:
        n - n value
        chitm1 - χ-1
        Returns:
        the coefficient dK₀n, s / dΧ