public class IntervalsFunction extends Parameterizable implements IParamDiffFunction
AbsoluteDateInterval
and IParamDiffFunction
.
Note that this function is not defined on dates outside of its intervals
.
Each function parameters descriptor is enriched with a
StandardFieldDescriptors.DATE_INTERVAL
corresponding to the interval where the parameter
is defined.
Constructor and Description |
---|
IntervalsFunction(List<IParamDiffFunction> functionsList,
List<AbsoluteDateInterval> intervalsList)
|
IntervalsFunction(Map<AbsoluteDateInterval,IParamDiffFunction> mapOfFunctions)
Simple constructor to initialize directly the map of intervals and functions.
|
Modifier and Type | Method and Description |
---|---|
double |
derivativeValue(Parameter p,
SpacecraftState s)
Compute the derivative value with respect to the input parameter.
|
boolean |
isDifferentiableBy(Parameter p)
Tell if the function is differentiable by the given parameter.
|
double |
value(SpacecraftState s)
Getting the value of the function.
|
addAllParameters, addAllParameters, addParameter, getParameters, supportsParameter
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getParameters, supportsParameter
public IntervalsFunction(List<IParamDiffFunction> functionsList, List<AbsoluteDateInterval> intervalsList)
functions
and a list of
intervals
. Both lists should be the same size. They define each
sub-function to apply on each interval. The intervals must not overlap with each other.
Each function parameters descriptor is enriched with a
StandardFieldDescriptors.DATE_INTERVAL
corresponding to the interval where the
parameter is defined.
functionsList
- List of functionsintervalsList
- List of intervalsDimensionMismatchException
- if functionsList.size() != intervalsList.size()
IllegalArgumentException
- if some intervals from the specified list overlap with each
otherpublic IntervalsFunction(Map<AbsoluteDateInterval,IParamDiffFunction> mapOfFunctions)
Each function parameters descriptor is enriched with a
StandardFieldDescriptors.DATE_INTERVAL
corresponding to the interval where the
parameter is defined.
Note: the given map is stored with a shallow copy.
mapOfFunctions
- Map of intervals and functions. Note that the map is not duplicated internally.IllegalArgumentException
- if some intervals overlap with each otherpublic double value(SpacecraftState s)
value
in interface IParameterizableFunction
s
- the spacecraft stateIllegalStateException
- if the given date isn't contained by the intervalspublic double derivativeValue(Parameter p, SpacecraftState s)
derivativeValue
in interface IParamDiffFunction
p
- parameters
- current stateIllegalStateException
- if the given date isn't contained by the intervalspublic boolean isDifferentiableBy(Parameter p)
isDifferentiableBy
in interface IParamDiffFunction
p
- function parameterCopyright © 2023 CNES. All rights reserved.