Class TaylorSeries


  • public final class TaylorSeries
    extends java.lang.Object
    Utility class continaing the Taylor expansion of a few trigonometric functions. We recall that: arcos(x) = pi/2 - arcsin(x)
    Author:
    F.-X. Pineau
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static double FIVE_OVER_112
      Constant value equal to 3/40.
      static double HALF
      Constant value equal to 1/2.
      static double ONE_OVER_120
      Constant value equal to 1/120 = 1/5!.
      static double ONE_OVER_24
      Constant value equal to 1/24 = 1/4!.
      static double ONE_OVER_5040
      Constant value equal to 1/5040 = 1/7!.
      static double ONE_OVER_720
      Constant value equal to 1/720 = 1/6!.
      static double ONE_SIXTH
      Constant value equal to 1/6 = 1/6.
      static double ONE_THIRD
      Constant value equal to 1/3.
      static double Q_17_OVER_315
      Constant value equal to 17/215.
      static double THREE_OVER_40
      Constant value equal to 3/40.
      static double TWO_OVER_15
      Constant value equal to 2/15.
    • Constructor Summary

      Constructors 
      Constructor Description
      TaylorSeries()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static double asinO1​(double x)  
      static double asinO3​(double x)  
      static double asinO5​(double x)  
      static double asinO7​(double x)  
      static double cosO0​(double a)
      Returns the Taylor serie of the trigonometric cosine around a = 0 at the 0 order (constant).
      static double cosO2​(double a)
      Returns the Taylor serie of the trigonometric cosine around a = 0 at the order of the 2nd degree.
      static double cosO4​(double a)
      Returns the Taylor serie of the trigonometric cosine around a = 0 at the order of the 4th degree.
      static double cosO6​(double a)
      Returns the Taylor serie of the trigonometric cosine around a = 0 at the order of the 6th degree.
      static double sinO1​(double a)
      Returns the Taylor serie of the trigonometric sine around a = 0 at the order of the 1st degree.
      static double sinO3​(double a)
      Returns the Taylor serie of the trigonometric sine around a = 0 at the order of the 3rd degree.
      static double sinO5​(double a)
      Returns the Taylor serie of the trigonometric sine around a = 0 at the order of the 5th degree.
      static double sinO7​(double a)
      Returns the Taylor serie of the trigonometric sine around a = 0 at the order of the 7th degree.
      static double tanO1​(double a)
      Returns the Taylor serie of the trigonometric tan around a = 0 at the order of the 1st degree.
      static double tanO3​(double a)
      Returns the Taylor serie of the trigonometric tan around a = 0 at the order of the 3rd degree.
      static double tanO5​(double a)
      Returns the Taylor serie of the trigonometric tan around a = 0 at the order of the 5th degree.
      static double tanO7​(double a)
      Returns the Taylor serie of the trigonometric tan around a = 0 at the order of the 7th degree.
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • ONE_THIRD

        public static final double ONE_THIRD
        Constant value equal to 1/3.
        See Also:
        Constant Field Values
      • ONE_SIXTH

        public static final double ONE_SIXTH
        Constant value equal to 1/6 = 1/6.
        See Also:
        Constant Field Values
      • ONE_OVER_24

        public static final double ONE_OVER_24
        Constant value equal to 1/24 = 1/4!.
        See Also:
        Constant Field Values
      • ONE_OVER_120

        public static final double ONE_OVER_120
        Constant value equal to 1/120 = 1/5!.
        See Also:
        Constant Field Values
      • ONE_OVER_720

        public static final double ONE_OVER_720
        Constant value equal to 1/720 = 1/6!.
        See Also:
        Constant Field Values
      • ONE_OVER_5040

        public static final double ONE_OVER_5040
        Constant value equal to 1/5040 = 1/7!.
        See Also:
        Constant Field Values
      • TWO_OVER_15

        public static final double TWO_OVER_15
        Constant value equal to 2/15.
        See Also:
        Constant Field Values
      • THREE_OVER_40

        public static final double THREE_OVER_40
        Constant value equal to 3/40.
        See Also:
        Constant Field Values
      • FIVE_OVER_112

        public static final double FIVE_OVER_112
        Constant value equal to 3/40.
        See Also:
        Constant Field Values
      • Q_17_OVER_315

        public static final double Q_17_OVER_315
        Constant value equal to 17/215.
        See Also:
        Constant Field Values
    • Constructor Detail

      • TaylorSeries

        public TaylorSeries()
    • Method Detail

      • cosO0

        public static final double cosO0​(double a)
        Returns the Taylor serie of the trigonometric cosine around a = 0 at the 0 order (constant). That is: 1. The error on this approximation is no more than |x|^2 / 2, i.e. ~5e-17 if x = 1e-8. We recall that the erro due to numercial approximation is 1e-16.
        Parameters:
        a - angle, in radians
        Returns:
        1, i.e. the Taylor serie of the trigonometric cosine around a = 0 at the 0 order.
      • cosO2

        public static final double cosO2​(double a)
        Returns the Taylor serie of the trigonometric cosine around a = 0 at the order of the 2nd degree. That is: 1 - x^2/2. The error on this approximation is no more than |x|^4 / 4!, i.e. ~4e-18 if x = 1e-4.
        Parameters:
        a - angle, in radians
        Returns:
        the Taylor serie of the trigonometric sine around a = 0 at the order of the 2nd degree.
      • cosO4

        public static final double cosO4​(double a)
        Returns the Taylor serie of the trigonometric cosine around a = 0 at the order of the 4th degree. That is: 1 - x^2/2 + x^4/4!. The error on this approximation is no more than |x|^6 / 6!, i.e. ~1.3e-21 if x = 1e-3.
        Parameters:
        a - angle, in radians
        Returns:
        the Taylor serie of the trigonometric sine around a = 0 at the order of the 4th degree.
      • cosO6

        public static final double cosO6​(double a)
        Returns the Taylor serie of the trigonometric cosine around a = 0 at the order of the 6th degree. That is: 1 - x^2/2 + x^4/4! - x^6/6!. The error on this approximation is no more than |x|^8 / 8!, i.e. ~1.7e-20 if x = 1e-2.
        Parameters:
        a - angle, in radians
        Returns:
        the Taylor serie of the trigonometric sine around a = 0 at the order of the 6th degree.
      • sinO1

        public static final double sinO1​(double a)
        Returns the Taylor serie of the trigonometric sine around a = 0 at the order of the 1st degree. That is: x. The error on this approximation is no more than |x|^3 / 3!, i.e. ~1.6e-19 if x = 1e-6.
        Parameters:
        a - angle, in radians
        Returns:
        the Taylor serie of the trigonometric sine around a = 0 at the order of the 1st degree.
      • sinO3

        public static final double sinO3​(double a)
        Returns the Taylor serie of the trigonometric sine around a = 0 at the order of the 3rd degree. That is: x - x^3/3!. The error on this approximation is no more than |x|^5 / 120, i.e. ~8.3e-18 if x = 1e-3.
        Parameters:
        a - angle, in radians
        Returns:
        the Taylor serie of the trigonometric sine around a = 0 at the order the 3rd degree.
      • sinO5

        public static final double sinO5​(double a)
        Returns the Taylor serie of the trigonometric sine around a = 0 at the order of the 5th degree. That is: x - x^3/3! + x^5/5!. The error on this approximation is no more than |x|^7 / 7!, i.e. ~2e-18 if x = 1e-2.
        Parameters:
        a - angle, in radians
        Returns:
        the Taylor serie of the trigonometric sine around a = 0 at the order of the 5th degree.
      • sinO7

        public static final double sinO7​(double a)
        Returns the Taylor serie of the trigonometric sine around a = 0 at the order of the 7th degree. That is: x - x^3/3! + x^5/5! - x^7/7!. The error on this approximation is no more than |x|^9 / 9!, i.e. ~2.8e-15 if x = 1e-1.
        Parameters:
        a - angle, in radians
        Returns:
        the Taylor serie of the trigonometric sine around a = 0 at the order of the 7th degree.
      • tanO1

        public static final double tanO1​(double a)
        Returns the Taylor serie of the trigonometric tan around a = 0 at the order of the 1st degree. That is: x. The error on this approximation is no more than |x|^3 / 3, i.e. ~4e-19 if x = 1e-6.
        Parameters:
        a - angle, in radians
        Returns:
        the Taylor serie of the trigonometric tan around a = 0 at the order of the 1st degree.
      • tanO3

        public static final double tanO3​(double a)
        Returns the Taylor serie of the trigonometric tan around a = 0 at the order of the 3rd degree. That is: x + x^3/3. The error on this approximation is no more than 2*|x|^5 / 15, i.e. ~1.3e-21 if x = 1e-4.
        Parameters:
        a - angle, in radians
        Returns:
        the Taylor serie of the trigonometric tan around a = 0 at the order of the 3rd degree.
      • tanO5

        public static final double tanO5​(double a)
        Returns the Taylor serie of the trigonometric tan around a = 0 at the order of the 5th degree. That is: x + x^3/3 + 2x^5/15. The error on this approximation is no more than 17|x|^7 / 315, i.e. ~5.4e-23 if x = 1e-3.
        Parameters:
        a - angle, in radians
        Returns:
        the Taylor serie of the trigonometric tan around a = 0 at the order of the 5th degree.
      • tanO7

        public static final double tanO7​(double a)
        Returns the Taylor serie of the trigonometric tan around a = 0 at the order of the 7th degree. That is: x + x^3/3 + 2x^5/15 + 17x^7/315. The error on this approximation is no more than 62|x|^9 / 2835, i.e. ~2.2e-20 if x = 1e-2.
        Parameters:
        a - angle, in radians
        Returns:
        the Taylor serie of the trigonometric tan around a = 0 at the order of the 7th degree.
      • asinO1

        public static final double asinO1​(double x)
      • asinO3

        public static final double asinO3​(double x)
      • asinO5

        public static final double asinO5​(double x)
      • asinO7

        public static final double asinO7​(double x)