Class TargetPointing

  • All Implemented Interfaces:
    AttitudeProvider, AttitudeRotationModel, EventDetectorsProvider, ParameterDriversProvider

    public class TargetPointing
    extends GroundPointing
    This class handles target pointing attitude provider.

    This class represents the attitude provider where the satellite z axis is pointing to a ground point target.

    The target position is defined in a body frame specified by the user. It is important to make sure this frame is consistent.

    The object TargetPointing is guaranteed to be immutable.

    Author:
    Véronique Pommier-Maurussane
    See Also:
    GroundPointing
    • Constructor Detail

      • TargetPointing

        public TargetPointing​(Frame inertialFrame,
                              Frame bodyFrame,
                              Vector3D target)
        Creates a new instance from body frame and target expressed in Cartesian coordinates.
        Parameters:
        inertialFrame - frame in which orbital velocities are computed
        bodyFrame - body frame.
        target - target position in body frame
        Since:
        7.1
      • TargetPointing

        public TargetPointing​(Frame inertialFrame,
                              GeodeticPoint targetGeo,
                              BodyShape shape)
        Creates a new instance from body shape and target expressed in geodetic coordinates.
        Parameters:
        inertialFrame - frame in which orbital velocities are computed
        targetGeo - target defined as a geodetic point in body shape frame
        shape - body shape
        Since:
        7.1
    • Method Detail

      • getTargetPV

        public TimeStampedPVCoordinates getTargetPV​(PVCoordinatesProvider pvProv,
                                                    AbsoluteDate date,
                                                    Frame frame)
        Compute the target point position/velocity in specified frame.
        Specified by:
        getTargetPV in class GroundPointing
        Parameters:
        pvProv - provider for PV coordinates
        date - date at which target point is requested
        frame - frame in which observed ground point should be provided
        Returns:
        observed ground point position (element 0) and velocity (at index 1) in specified frame
      • getTargetPosition

        protected Vector3D getTargetPosition​(PVCoordinatesProvider pvProv,
                                             AbsoluteDate date,
                                             Frame frame)
        Compute the target point position in specified frame.
        Overrides:
        getTargetPosition in class GroundPointing
        Parameters:
        pvProv - provider for PV coordinates
        date - date at which target point is requested
        frame - frame in which observed ground point should be provided
        Returns:
        observed ground point position in specified frame
      • getTargetPosition

        protected <T extends CalculusFieldElement<T>> FieldVector3D<T> getTargetPosition​(FieldPVCoordinatesProvider<T> pvProv,
                                                                                         FieldAbsoluteDate<T> date,
                                                                                         Frame frame)
        Compute the target point position in specified frame.
        Overrides:
        getTargetPosition in class GroundPointing
        Type Parameters:
        T - type of the field elements
        Parameters:
        pvProv - provider for PV coordinates
        date - date at which target point is requested
        frame - frame in which observed ground point should be provided
        Returns:
        observed ground point position in specified frame