Class AbstractParticipant

java.lang.Object
org.orekit.estimation.measurements.AbstractParticipant
All Implemented Interfaces:
MeasurementParticipant, ParameterDriversProvider
Direct Known Subclasses:
GroundStation, ObservableSatellite, ObserverSatellite

public abstract class AbstractParticipant extends Object implements MeasurementParticipant
Abstract class underlying both observed and observing measurement objects. Contains the QuadraticClockModel and the ability to store a master list of all parameter drivers associated with the object.
Since:
14.0
Author:
Brianna Aubin
  • Constructor Details

    • AbstractParticipant

      protected AbstractParticipant(String name)
      Simple constructor.
      Parameters:
      name - name of MeasurementObject
    • AbstractParticipant

      protected AbstractParticipant(String name, QuadraticClockModel quadraticClock)
      Simple constructor.
      Parameters:
      name - name of MeasurementObject
      quadraticClock - clock belonging to MeasurementObject
  • Method Details

    • getName

      public final String getName()
      Get the MeasurementObject name.
      Specified by:
      getName in interface MeasurementParticipant
      Returns:
      name for the object
    • createEmptyQuadraticClock

      protected static QuadraticClockModel createEmptyQuadraticClock(String name)
      Creates a quadratic clock with zero displacement.
      Parameters:
      name - name of object that is holding the clock
      Returns:
      new quadratic clock model
    • getQuadraticClockModel

      public final QuadraticClockModel getQuadraticClockModel()
      Get a quadratic clock model valid at some date.
      Specified by:
      getQuadraticClockModel in interface MeasurementParticipant
      Returns:
      quadratic clock model
    • getParametersDrivers

      public List<ParameterDriver> getParametersDrivers()
      Get model parameters.
      Specified by:
      getParametersDrivers in interface ParameterDriversProvider
      Returns:
      model parameters, will throw an exception if one PDriver has several values driven. If it's the case (if at least 1 PDriver of the model has several values driven) the method ParameterDriversProvider.getParameters(AbsoluteDate) must be used.
    • addParameterDriver

      protected final void addParameterDriver(ParameterDriver parameterDriver)
      Add a single parameter.
      Parameters:
      parameterDriver - parameter being added to the MeasurementObject
    • extractPVCoordinatesProvider

      public static PVCoordinatesProvider extractPVCoordinatesProvider(SpacecraftState templateState, TimeStampedPVCoordinates pvCoordinates)
      Create PV provider from position-velocity-acceleration vector and template state.
      Parameters:
      templateState - template state
      pvCoordinates - position-velocity-acceleration
      Returns:
      position-velocity-acceleration provider
    • extractFieldPVCoordinatesProvider

      public static FieldPVCoordinatesProvider<Gradient> extractFieldPVCoordinatesProvider(SpacecraftState templateState, TimeStampedFieldPVCoordinates<Gradient> pvCoordinates)
      Create PV provider from position-velocity-acceleration vector and template state.
      Parameters:
      templateState - template state
      pvCoordinates - position-velocity-acceleration
      Returns:
      position-velocity-acceleration provider