Interface Observer

    • Method Detail

      • getObserverType

        Observer.ObserverType getObserverType()
        Get the type of object being used in measurement observations.
        Returns:
        string value =
      • getPVCoordinatesProvider

        PVCoordinatesProvider getPVCoordinatesProvider()
        Return the PVCoordinatesProvider.
        Returns:
        pos/vel coordinates provider
      • getFieldPVCoordinatesProvider

        FieldPVCoordinatesProvider<Gradient> getFieldPVCoordinatesProvider​(int freeParameters,
                                                                           Map<String,​Integer> parameterIndices)
        Return the FieldPVCoordinatesProvider.
        Parameters:
        freeParameters - number of estimated parameters
        parameterIndices - indices of the estimated parameters in derivatives computations, must be driver
        Returns:
        pos/vel coordinates provider for values with Gradient field
        Since:
        14.0
      • getOffsetToInertial

        Transform getOffsetToInertial​(Frame inertial,
                                      AbsoluteDate date,
                                      boolean clockOffsetAlreadyApplied)
        Get the transform between offset frame and inertial frame.

        The offset frame takes the current position offset, polar motion and the meridian shift into account. The frame returned is disconnected from later changes in the parameters. When the parameters managing these offsets are changed, the method must be called again to retrieve a new offset frame.

        Parameters:
        inertial - inertial frame to transform to
        date - date of the transform
        clockOffsetAlreadyApplied - if true, the specified date is as read by the ground station clock (i.e. clock offset not compensated), if false, the specified date was already compensated and is a physical absolute date
        Returns:
        transform between offset frame and inertial frame, at real measurement date (i.e. with clock, Earth and station offsets applied)
      • getOffsetToInertial

        default FieldTransform<Gradient> getOffsetToInertial​(Frame inertial,
                                                             AbsoluteDate clockDate,
                                                             int freeParameters,
                                                             Map<String,​Integer> indices)
        Get the transform between offset frame and inertial frame with derivatives.

        As the East and North vectors are not well defined at pole, the derivatives of these two vectors diverge to infinity as we get closer to the pole. So this method should not be used for stations less than 0.0001 degree from either poles.

        Parameters:
        inertial - inertial frame to transform to
        clockDate - date of the transform, clock offset and its derivatives already compensated
        freeParameters - total number of free parameters in the gradient
        indices - indices of the estimated parameters in derivatives computations, must be driver span name in map, not driver name or will not give right results (see ParameterDriver.getValue(int, Map))
        Returns:
        transform between offset frame and inertial frame, at specified date
      • getOffsetToInertial

        FieldTransform<Gradient> getOffsetToInertial​(Frame inertial,
                                                     FieldAbsoluteDate<Gradient> offsetCompensatedDate,
                                                     int freeParameters,
                                                     Map<String,​Integer> indices)
        Get the transform between offset frame and inertial frame with derivatives.

        As the East and North vectors are not well defined at pole, the derivatives of these two vectors diverge to infinity as we get closer to the pole. So this method should not be used for stations less than 0.0001 degree from either poles.

        Parameters:
        inertial - inertial frame to transform to
        offsetCompensatedDate - date of the transform, clock offset and its derivatives already compensated
        freeParameters - total number of free parameters in the gradient
        indices - indices of the estimated parameters in derivatives computations, must be driver span name in map, not driver name or will not give right results (see ParameterDriver.getValue(int, Map))
        Returns:
        transform between offset frame and inertial frame, at specified date
      • getParameterIndices

        default Map<String,​Integer> getParameterIndices​(SpacecraftState[] states,
                                                              List<ParameterDriver> parameterDrivers)
        Create a map of the free parameter values.
        Parameters:
        states - list of ObservableSatellite measurement states
        parameterDrivers - list of all parameter values for the measurement
        Returns:
        map of the free parameter values
      • computeRemoteParametersWithout

        default CommonParametersWithoutDerivatives computeRemoteParametersWithout​(SpacecraftState[] states,
                                                                                  ObservableSatellite localSat,
                                                                                  AbsoluteDate measurementDate,
                                                                                  boolean receiverClockOffsetAlreadyApplied)
        Compute common estimation parameters when remote object is the receiver of the signal (e.g. ObservableSatellite sends signal to measuring ground station).
        Parameters:
        states - state(s) of all measured spacecraft
        localSat - satellite whose state is being estimated
        measurementDate - date when measurement was taken
        receiverClockOffsetAlreadyApplied - if true, the specified date is as read by the receiver clock (i.e. clock offset not compensated), if false, the specified date was already compensated and is a physical absolute date
        Returns:
        common parameters
      • computeRemoteParametersWith

        default CommonParametersWithDerivatives computeRemoteParametersWith​(SpacecraftState[] states,
                                                                            ObservableSatellite localSat,
                                                                            AbsoluteDate measurementDate,
                                                                            List<ParameterDriver> parameterDrivers)
        Compute common estimation parameters with derivative when remote object is the receiver of the signal.
        Parameters:
        states - state(s) of all measured spacecraft
        localSat - satellite whose state is being estimated
        measurementDate - date when measurement was taken
        parameterDrivers - list of parameter drivers associated with measurement
        Returns:
        common parameters