Class TaylorMap

java.lang.Object
org.hipparchus.analysis.differentiation.TaylorMap
All Implemented Interfaces:
DifferentialAlgebra

public class TaylorMap extends Object implements DifferentialAlgebra
Container for a Taylor map.

A Taylor map is a set of n DerivativeStructure (f1,f2,,fn) depending on m parameters (p1,p2,,pm), with positive n and m.

Since:
2.2
  • Constructor Details

    • TaylorMap

      public TaylorMap(double[] point, DerivativeStructure[] functions)
      Simple constructor.

      The number of number of parameters and derivation orders of all functions must match.

      Parameters:
      point - point at which map is evaluated
      functions - functions composing the map (must contain at least one element)
    • TaylorMap

      public TaylorMap(int parameters, int order, int nbFunctions)
      Constructor for identity map.

      The identity is considered to be evaluated at origin.

      Parameters:
      parameters - number of free parameters
      order - derivation order
      nbFunctions - number of functions
  • Method Details

    • getFreeParameters

      public int getFreeParameters()
      Get the number of free parameters.
      Specified by:
      getFreeParameters in interface DifferentialAlgebra
      Returns:
      number of free parameters
    • getOrder

      public int getOrder()
      Get the maximum derivation order.
      Specified by:
      getOrder in interface DifferentialAlgebra
      Returns:
      maximum derivation order
    • getNbParameters

      @Deprecated public int getNbParameters()
      Deprecated.
      Get the number of parameters of the map.
      Returns:
      number of parameters of the map
    • getNbFunctions

      public int getNbFunctions()
      Get the number of functions of the map.
      Returns:
      number of functions of the map
    • getPoint

      public double[] getPoint()
      Get the point at which map is evaluated.
      Returns:
      point at which map is evaluated
    • getFunction

      public DerivativeStructure getFunction(int i)
      Get a function from the map.
      Parameters:
      i - index of the function (must be between 0 included and getNbFunctions() excluded
      Returns:
      function at index i
    • value

      public double[] value(double... deltaP)
      Evaluate Taylor expansion of the map at some offset.
      Parameters:
      deltaP - parameters offsets (Δp1,Δp2,,Δpn)
      Returns:
      value of the Taylor expansion at (p1+Δp1,p2+Δp2,,pn+Δpn)
    • compose

      public TaylorMap compose(TaylorMap other)
      Compose the instance with another Taylor map as thisother.
      Parameters:
      other - map with which instance must be composed
      Returns:
      composed map thisother
    • invert

      public TaylorMap invert(MatrixDecomposer decomposer)
      Invert the instance.

      Consider Taylor expansion of the map with small parameters offsets (Δp1,Δp2,,Δpn) which leads to evaluation offsets (f1+df1,f2+df2,,fn+dfn). The map inversion defines a Taylor map that computes (Δp1,Δp2,,Δpn) from (df1,df2,,dfn).

      The map must be square to be invertible (i.e. the number of functions and the number of parameters in the functions must match)

      Parameters:
      decomposer - matrix decomposer to user for inverting the linear part
      Returns:
      inverted map
      See Also: