Class TimeStampedPVCoordinates

    • Constructor Detail

      • TimeStampedPVCoordinates

        public TimeStampedPVCoordinates​(AbsoluteDate date,
                                        Vector3D position,
                                        Vector3D velocity,
                                        Vector3D acceleration)
        Builds a TimeStampedPVCoordinates pair.
        Parameters:
        date - coordinates date
        position - the position vector (m)
        velocity - the velocity vector (m/s)
        acceleration - the acceleration vector (m/s²)
      • TimeStampedPVCoordinates

        public TimeStampedPVCoordinates​(AbsoluteDate date,
                                        Vector3D position,
                                        Vector3D velocity)
        Build from position and velocity. Acceleration is set to zero.
        Parameters:
        date - coordinates date
        position - the position vector (m)
        velocity - the velocity vector (m/s)
      • TimeStampedPVCoordinates

        public TimeStampedPVCoordinates​(AbsoluteDate date,
                                        PVCoordinates pv)
        Build from position velocity acceleration coordinates.
        Parameters:
        date - coordinates date
        pv - position velocity, and acceleration coordinates, in meters and seconds.
      • TimeStampedPVCoordinates

        public TimeStampedPVCoordinates​(AbsoluteDate date,
                                        double a,
                                        PVCoordinates pv)
        Multiplicative constructor

        Build a TimeStampedPVCoordinates from another one and a scale factor.

        The TimeStampedPVCoordinates built will be a * pv

        Parameters:
        date - date of the built coordinates
        a - scale factor
        pv - base (unscaled) PVCoordinates
      • TimeStampedPVCoordinates

        public TimeStampedPVCoordinates​(AbsoluteDate date,
                                        PVCoordinates start,
                                        PVCoordinates end)
        Subtractive constructor

        Build a relative TimeStampedPVCoordinates from a start and an end position.

        The TimeStampedPVCoordinates built will be end - start.

        Parameters:
        date - date of the built coordinates
        start - Starting PVCoordinates
        end - ending PVCoordinates
      • TimeStampedPVCoordinates

        public TimeStampedPVCoordinates​(AbsoluteDate date,
                                        double a1,
                                        PVCoordinates pv1,
                                        double a2,
                                        PVCoordinates pv2)
        Linear constructor

        Build a TimeStampedPVCoordinates from two other ones and corresponding scale factors.

        The TimeStampedPVCoordinates built will be a1 * u1 + a2 * u2

        Parameters:
        date - date of the built coordinates
        a1 - first scale factor
        pv1 - first base (unscaled) PVCoordinates
        a2 - second scale factor
        pv2 - second base (unscaled) PVCoordinates
      • TimeStampedPVCoordinates

        public TimeStampedPVCoordinates​(AbsoluteDate date,
                                        double a1,
                                        PVCoordinates pv1,
                                        double a2,
                                        PVCoordinates pv2,
                                        double a3,
                                        PVCoordinates pv3)
        Linear constructor

        Build a TimeStampedPVCoordinates from three other ones and corresponding scale factors.

        The TimeStampedPVCoordinates built will be a1 * u1 + a2 * u2 + a3 * u3

        Parameters:
        date - date of the built coordinates
        a1 - first scale factor
        pv1 - first base (unscaled) PVCoordinates
        a2 - second scale factor
        pv2 - second base (unscaled) PVCoordinates
        a3 - third scale factor
        pv3 - third base (unscaled) PVCoordinates
      • TimeStampedPVCoordinates

        public TimeStampedPVCoordinates​(AbsoluteDate date,
                                        double a1,
                                        PVCoordinates pv1,
                                        double a2,
                                        PVCoordinates pv2,
                                        double a3,
                                        PVCoordinates pv3,
                                        double a4,
                                        PVCoordinates pv4)
        Linear constructor

        Build a TimeStampedPVCoordinates from four other ones and corresponding scale factors.

        The TimeStampedPVCoordinates built will be a1 * u1 + a2 * u2 + a3 * u3 + a4 * u4

        Parameters:
        date - date of the built coordinates
        a1 - first scale factor
        pv1 - first base (unscaled) PVCoordinates
        a2 - second scale factor
        pv2 - second base (unscaled) PVCoordinates
        a3 - third scale factor
        pv3 - third base (unscaled) PVCoordinates
        a4 - fourth scale factor
        pv4 - fourth base (unscaled) PVCoordinates
      • TimeStampedPVCoordinates

        public TimeStampedPVCoordinates​(AbsoluteDate date,
                                        FieldVector3D<U> p)
        Builds a TimeStampedPVCoordinates triplet from a FieldVector3D<Derivative>.

        The vector components must have time as their only derivation parameter and have consistent derivation orders.

        Type Parameters:
        U - type of the derivative
        Parameters:
        date - date of the built coordinates
        p - vector with time-derivatives embedded within the coordinates
    • Method Detail

      • shiftedBy

        public TimeStampedPVCoordinates shiftedBy​(double dt)
        Get a time-shifted state.

        The state can be slightly shifted to close dates. This shift is based on a simple Taylor expansion. It is not intended as a replacement for proper orbit propagation (it is not even Keplerian!) but should be sufficient for either small time shifts or coarse accuracy.

        Specified by:
        shiftedBy in interface TimeShiftable<PVCoordinates>
        Overrides:
        shiftedBy in class PVCoordinates
        Parameters:
        dt - time shift in seconds
        Returns:
        a new state, shifted with respect to the instance (which is immutable)
      • toTaylorProvider

        public PVCoordinatesProvider toTaylorProvider​(Frame instanceFrame)
        Create a local provider using simply Taylor expansion through shiftedBy(double).

        The time evolution is based on a simple Taylor expansion. It is not intended as a replacement for proper orbit propagation (it is not even Keplerian!) but should be sufficient for either small time shifts or coarse accuracy.

        Parameters:
        instanceFrame - frame in which the instance is defined
        Returns:
        provider based on Taylor expansion, for small time shifts around instance date
      • toString

        public String toString​(TimeScale utc)
        Return a string representation of this date, position, velocity, and acceleration.
        Parameters:
        utc - time scale used to print the date.
        Returns:
        string representation of this.