Class SolidTides

    • Field Detail

      • DEFAULT_STEP

        public static final double DEFAULT_STEP
        Default step for tides field sampling (seconds).
        See Also:
        Constant Field Values
      • DEFAULT_POINTS

        public static final int DEFAULT_POINTS
        Default number of points tides field sampling.
        See Also:
        Constant Field Values
    • Constructor Detail

      • SolidTides

        public SolidTides​(Frame centralBodyFrame,
                          double ae,
                          double mu,
                          TideSystem centralTideSystem,
                          boolean poleTide,
                          double step,
                          int nbPoints,
                          IERSConventions conventions,
                          UT1Scale ut1,
                          CelestialBody... bodies)
        Simple constructor.
        Parameters:
        centralBodyFrame - rotating body frame
        ae - central body reference radius
        mu - central body attraction coefficient
        centralTideSystem - tide system used in the central attraction model
        poleTide - if true, pole tide is computed
        step - time step between sample points for interpolation
        nbPoints - number of points to use for interpolation, if less than 2 then no interpolation is performed (thus greatly increasing computation cost)
        conventions - IERS conventions used for loading Love numbers
        ut1 - UT1 time scale
        bodies - tide generating bodies (typically Sun and Moon)
    • Method Detail

      • dependsOnPositionOnly

        public boolean dependsOnPositionOnly()
        Check if force models depends on position only.
        Specified by:
        dependsOnPositionOnly in interface ForceModel
        Returns:
        true if force model depends on position only, false if it depends on velocity, either directly or due to a dependency on attitude
      • acceleration

        public Vector3D acceleration​(SpacecraftState s,
                                     double[] parameters)
        Compute acceleration.
        Specified by:
        acceleration in interface ForceModel
        Parameters:
        s - current state information: date, kinematics, attitude
        parameters - values of the force model parameters at state date, only 1 value for each parameterDriver
        Returns:
        acceleration in same frame as state
      • acceleration

        public <T extends CalculusFieldElement<T>> FieldVector3D<T> acceleration​(FieldSpacecraftState<T> s,
                                                                                 T[] parameters)
        Compute acceleration.
        Specified by:
        acceleration in interface ForceModel
        Type Parameters:
        T - type of the elements
        Parameters:
        s - current state information: date, kinematics, attitude
        parameters - values of the force model parameters at state date, only 1 value for each parameterDriver
        Returns:
        acceleration in same frame as state
      • getEventDetectors

        public Stream<EventDetector> getEventDetectors()
        Get the discrete events related to the model.

        This method is not intended to be called several time, only once by a propagator, as it has the side effect of rebuilding the events detectors when called.

        Specified by:
        getEventDetectors in interface EventDetectorsProvider
        Specified by:
        getEventDetectors in interface ForceModel
        Returns:
        stream of event detectors