Class SolidTides

  • All Implemented Interfaces:
    ForceModel

    public class SolidTides
    extends AbstractForceModel
    Solid tides force model.
    Since:
    6.1
    Author:
    Luc Maisonobe
    • 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.
        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 org.hipparchus.geometry.euclidean.threed.Vector3D acceleration​(SpacecraftState s,
                                                                              double[] parameters)
        Compute acceleration.
        Parameters:
        s - current state information: date, kinematics, attitude
        parameters - values of the force model parameters
        Returns:
        acceleration in same frame as state
      • acceleration

        public <T extends org.hipparchus.RealFieldElement<T>> org.hipparchus.geometry.euclidean.threed.FieldVector3D<T> acceleration​(FieldSpacecraftState<T> s,
                                                                                                                                     T[] parameters)
        Compute acceleration.
        Type Parameters:
        T - type of the elements
        Parameters:
        s - current state information: date, kinematics, attitude
        parameters - values of the force model parameters
        Returns:
        acceleration in same frame as state
      • getEventsDetectors

        public Stream<EventDetector> getEventsDetectors()
        Get the discrete events related to the model.
        Returns:
        stream of events detectors
      • getFieldEventsDetectors

        public <T extends org.hipparchus.RealFieldElement<T>> Stream<FieldEventDetector<T>> getFieldEventsDetectors​(org.hipparchus.Field<T> field)
        Get the discrete events related to the model.
        Type Parameters:
        T - extends RealFieldElement
        Parameters:
        field - field to which the state belongs
        Returns:
        stream of events detectors
      • getParametersDrivers

        public ParameterDriver[] getParametersDrivers()
        Get the drivers for force model parameters.
        Returns:
        drivers for force model parameters