Class FieldParameterDriver<T extends CalculusFieldElement<T>>

Type Parameters:
T - type of the field elements
Direct Known Subclasses:
FieldParameterDriversList.FieldDelegatingDriver

public class FieldParameterDriver<T extends CalculusFieldElement<T>> extends BaseParameterDriver<FieldParameterDriver<T>,FieldParameterObserver<T>>
Field version of ParameterDriver.
Since:
14.0
Author:
Luc Maisonobe
See Also:
  • Constructor Details

    • FieldParameterDriver

      public FieldParameterDriver(String name, T referenceValue, double scale, double minValue, double maxValue, TimeInterval validity)
      Simple constructor.

      At construction, the parameter is configured as not selected, the reference date is set to null, the value is set to the referenceValue.

      Parameters:
      name - name of the parameter
      referenceValue - reference value of the parameter
      scale - scaling factor to convert the parameters value to non-dimensional (typically set to the expected standard deviation of the parameter), it must be non-zero
      minValue - minimum value allowed
      maxValue - maximum value allowed
      validity - validity interval
  • Method Details

    • getReferenceDate

      public FieldAbsoluteDate<T> getReferenceDate()
      Get current reference date.
      Returns:
      current reference date (null if it was never set)
    • setReferenceDate

      public void setReferenceDate(FieldAbsoluteDate<T> newReferenceDate)
      Set reference date.
      Parameters:
      newReferenceDate - new reference date
    • getReferenceValue

      public T getReferenceValue()
      Get reference parameter value.
      Returns:
      reference parameter value
    • setReferenceValue

      public void setReferenceValue(T referenceValue)
      Set reference parameter value.
      Parameters:
      referenceValue - the reference value to set.
    • getValue

      public T getValue()
      Get current parameter value.
      Returns:
      current parameter value
    • getValue

      public FieldGradient<T> getValue(int freeParameters, Map<String,Integer> indices)
      Get the value as a gradient.
      Parameters:
      freeParameters - total number of free parameters in the gradient
      indices - indices of the differentiation parameters in derivatives computations
      Returns:
      value with derivatives
    • setValue

      public void setValue(T newValue)
      Set parameter value.

      If newValue is below BaseParameterDriver.getMinValue(), it will be silently set to BaseParameterDriver.getMinValue(). If newValue is above BaseParameterDriver.getMaxValue(), it will be silently set to BaseParameterDriver.getMaxValue().

      Parameters:
      newValue - new value to set
    • getNormalizedValue

      public T getNormalizedValue()
      Get normalized value.

      The normalized value is a non-dimensional value suitable for use as part of a vector in an optimization process. It is computed as (current - reference)/scale.

      Returns:
      normalized value
    • setNormalizedValue

      public void setNormalizedValue(T normalized)
      Set normalized value.

      The normalized value is a non-dimensional value suitable for use as part of a vector in an optimization process. It is computed as (current - reference)/scale.

      Parameters:
      normalized - value
    • setMinValue

      public void setMinValue(double minValue)
      Set minimum parameter value.
      Overrides:
      setMinValue in class BaseParameterDriver<FieldParameterDriver<T extends CalculusFieldElement<T>>,FieldParameterObserver<T extends CalculusFieldElement<T>>>
      Parameters:
      minValue - the minimum value to set.
    • setMaxValue

      public void setMaxValue(double maxValue)
      Set maximum parameter value.
      Overrides:
      setMaxValue in class BaseParameterDriver<FieldParameterDriver<T extends CalculusFieldElement<T>>,FieldParameterObserver<T extends CalculusFieldElement<T>>>
      Parameters:
      maxValue - the maximum value to set.
    • toString

      public String toString()
      Get a text representation of the parameter.
      Overrides:
      toString in class Object
      Returns:
      text representation of the parameter, in the form name = value.