Class GroundAtNightDetector

  • All Implemented Interfaces:
    Serializable, EventDetector

    public class GroundAtNightDetector
    extends AbstractDetector<GroundAtNightDetector>
    Detector for ground location being at night.

    This detector is mainly useful for scheduling optical measurements (either passive telescope observation of satellites against the stars background or active satellite laser ranging).

    The g function of this detector is positive when ground is at night (i.e. Sun is below dawn/dusk elevation angle).

    Since:
    9.3
    Author:
    Luc Maisonobe
    See Also:
    Serialized Form
    • Field Detail

      • CIVIL_DAWN_DUSK_ELEVATION

        public static final double CIVIL_DAWN_DUSK_ELEVATION
        Sun elevation at civil dawn/dusk (6° below horizon).
      • NAUTICAL_DAWN_DUSK_ELEVATION

        public static final double NAUTICAL_DAWN_DUSK_ELEVATION
        Sun elevation at nautical dawn/dusk (12° below horizon).
      • ASTRONOMICAL_DAWN_DUSK_ELEVATION

        public static final double ASTRONOMICAL_DAWN_DUSK_ELEVATION
        Sun elevation at astronomical dawn/dusk (18° below horizon).
    • Method Detail

      • create

        protected GroundAtNightDetector create​(double newMaxCheck,
                                               double newThreshold,
                                               int newMaxIter,
                                               EventHandler<? super GroundAtNightDetector> newHandler)
        Build a new instance.
        Specified by:
        create in class AbstractDetector<GroundAtNightDetector>
        Parameters:
        newMaxCheck - maximum checking interval (s)
        newThreshold - convergence threshold (s)
        newMaxIter - maximum number of iterations in the event time search
        newHandler - event handler to call at event occurrences
        Returns:
        a new instance of the appropriate sub-type
      • g

        public double g​(SpacecraftState state)
        Compute the value of the switching function. This function must be continuous (at least in its roots neighborhood), as the integrator will need to find its roots to locate the events.

        The g function of this detector is positive when ground is at night (i.e. Sun is below dawn/dusk elevation angle).

        This function only depends on date, not on the actual position of the spacecraft.

        Specified by:
        g in interface EventDetector
        Specified by:
        g in class AbstractDetector<GroundAtNightDetector>
        Parameters:
        state - the current state information: date, kinematics, attitude
        Returns:
        value of the switching function