Package org.orekit.rugged.los
Class PolynomialRotation
- java.lang.Object
-
- org.orekit.rugged.los.PolynomialRotation
-
- All Implemented Interfaces:
LOSTransform
public class PolynomialRotation extends Object implements LOSTransform
LOS transform
based on a rotation with polynomial angle.- Author:
- Luc Maisonobe
- See Also:
LOSBuilder
-
-
Constructor Summary
Constructors Constructor Description PolynomialRotation(String name, Vector3D axis, AbsoluteDate referenceDate, double... angleCoeffs)
Simple constructor.PolynomialRotation(String name, Vector3D axis, AbsoluteDate referenceDate, PolynomialFunction angle)
Simple constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Stream<ParameterDriver>
getParametersDrivers()
Get the drivers for LOS parameters.<T extends Derivative<T>>
FieldVector3D<T>transformLOS(int i, FieldVector3D<T> los, AbsoluteDate date, DerivativeGenerator<T> generator)
Transform a line-of-sight and its partial derivatives.Vector3D
transformLOS(int i, Vector3D los, AbsoluteDate date)
Transform a line-of-sight.
-
-
-
Constructor Detail
-
PolynomialRotation
public PolynomialRotation(String name, Vector3D axis, AbsoluteDate referenceDate, double... angleCoeffs)
Simple constructor.The angle of the rotation is evaluated as a polynomial in t, where t is the duration in seconds between evaluation date and reference date. The parameters are the polynomial coefficients, with the constant term at index 0.
- Parameters:
name
- name of the rotation (used for estimated parameters identification)axis
- rotation axisreferenceDate
- reference date for the polynomial angleangleCoeffs
- polynomial coefficients of the polynomial angle, with the constant term at index 0
-
PolynomialRotation
public PolynomialRotation(String name, Vector3D axis, AbsoluteDate referenceDate, PolynomialFunction angle)
Simple constructor.The angle of the rotation is evaluated as a polynomial in t, where t is the duration in seconds between evaluation date and reference date. The parameters are the polynomial coefficients, with the constant term at index 0.
- Parameters:
name
- name of the rotation (used for estimated parameters identification)axis
- rotation axisreferenceDate
- reference date for the polynomial angleangle
- polynomial angle
-
-
Method Detail
-
getParametersDrivers
public Stream<ParameterDriver> getParametersDrivers()
Get the drivers for LOS parameters.- Specified by:
getParametersDrivers
in interfaceLOSTransform
- Returns:
- drivers for LOS parameters
- Since:
- 2.0
-
transformLOS
public Vector3D transformLOS(int i, Vector3D los, AbsoluteDate date)
Transform a line-of-sight.- Specified by:
transformLOS
in interfaceLOSTransform
- Parameters:
i
- los pixel indexlos
- line-of-sight to transformdate
- current date- Returns:
- transformed line-of-sight
-
transformLOS
public <T extends Derivative<T>> FieldVector3D<T> transformLOS(int i, FieldVector3D<T> los, AbsoluteDate date, DerivativeGenerator<T> generator)
Transform a line-of-sight and its partial derivatives.This method is used for LOS calibration purposes. It allows to compute the Jacobian matrix of the LOS with respect to the parameters, which are typically polynomials coefficients representing rotation angles. These polynomials can be used for example to model thermo-elastic effects.
- Specified by:
transformLOS
in interfaceLOSTransform
- Type Parameters:
T
- derivative type- Parameters:
i
- los pixel indexlos
- line-of-sight to transformdate
- dategenerator
- generator to use for buildingDerivativeStructure
instances- Returns:
- line of sight, and its first partial derivatives with respect to the parameters
-
-