public class TaylorMap extends Object
A Taylor map is a set of n DerivativeStructure
\((f_1, f_2, \ldots, f_n)\) depending on m parameters \((p_1, p_2, \ldots, p_m)\),
with positive n and m.
Constructor and Description |
---|
TaylorMap(double[] point,
DerivativeStructure[] functions)
Simple constructor.
|
TaylorMap(int parameters,
int order,
int nbFunctions)
Constructor for identity map.
|
Modifier and Type | Method and Description |
---|---|
TaylorMap |
compose(TaylorMap other)
Compose the instance with another Taylor map as \(\mathrm{this} \circ \mathrm{other}\).
|
DerivativeStructure |
getFunction(int i)
Get a function from the map.
|
int |
getNbFunctions()
Get the number of functions of the map.
|
int |
getNbParameters()
Get the number of parameters of the map.
|
double[] |
getPoint()
Get the point at which map is evaluated.
|
TaylorMap |
invert(MatrixDecomposer decomposer)
Invert the instance.
|
double[] |
value(double... deltaP)
Evaluate Taylor expansion of the map at some offset.
|
public TaylorMap(double[] point, DerivativeStructure[] functions)
The number of number of parameters and derivation orders of all functions must match.
point
- point at which map is evaluatedfunctions
- functions composing the map (must contain at least one element)public TaylorMap(int parameters, int order, int nbFunctions)
The identity is considered to be evaluated at origin.
parameters
- number of free parametersorder
- derivation ordernbFunctions
- number of functionspublic int getNbParameters()
public int getNbFunctions()
public double[] getPoint()
public DerivativeStructure getFunction(int i)
i
- index of the function (must be between 0 included and getNbFunctions()
excludedpublic double[] value(double... deltaP)
deltaP
- parameters offsets \((\Delta p_1, \Delta p_2, \ldots, \Delta p_n)\)public TaylorMap compose(TaylorMap other)
other
- map with which instance must be composedpublic TaylorMap invert(MatrixDecomposer decomposer)
Consider Taylor expansion
of the map with
small parameters offsets \((\Delta p_1, \Delta p_2, \ldots, \Delta p_n)\)
which leads to evaluation offsets \((f_1 + df_1, f_2 + df_2, \ldots, f_n + df_n)\).
The map inversion defines a Taylor map that computes \((\Delta p_1,
\Delta p_2, \ldots, \Delta p_n)\) from \((df_1, df_2, \ldots, df_n)\).
The map must be square to be invertible (i.e. the number of functions and the number of parameters in the functions must match)
decomposer
- matrix decomposer to user for inverting the linear partCopyright © 2016-2022 CS GROUP. All rights reserved.