Class FieldEclipseDetector<T extends CalculusFieldElement<T>>

    • Constructor Detail

      • FieldEclipseDetector

        public FieldEclipseDetector​(PVCoordinatesProvider occulted,
                                    double occultedRadius,
                                    PVCoordinatesProvider occulting,
                                    double occultingRadius,
                                    Field<T> field)
        Build a new eclipse detector.

        The new instance is a total eclipse (umbra) detector with default values for maximal checking interval (FieldAbstractDetector.DEFAULT_MAXCHECK) and convergence threshold (FieldAbstractDetector.DEFAULT_THRESHOLD).

        Parameters:
        occulted - the body to be occulted
        occultedRadius - the radius of the body to be occulted (m)
        occulting - the occulting body
        occultingRadius - the occulting body radius (m)
        field - field used by default
      • FieldEclipseDetector

        public FieldEclipseDetector​(T maxCheck,
                                    PVCoordinatesProvider occulted,
                                    double occultedRadius,
                                    PVCoordinatesProvider occulting,
                                    double occultingRadius)
        Build a new eclipse detector.

        The new instance is a total eclipse (umbra) detector with default value for convergence threshold (FieldAbstractDetector.DEFAULT_THRESHOLD).

        The maximal interval between eclipse checks should be smaller than the half duration of the minimal pass to handle, otherwise some short passes could be missed.

        Parameters:
        maxCheck - maximal checking interval (s)
        occulted - the body to be occulted
        occultedRadius - the radius of the body to be occulted in meters
        occulting - the occulting body
        occultingRadius - the occulting body radius in meters
      • FieldEclipseDetector

        public FieldEclipseDetector​(T maxCheck,
                                    T threshold,
                                    PVCoordinatesProvider occulted,
                                    double occultedRadius,
                                    PVCoordinatesProvider occulting,
                                    double occultingRadius)
        Build a new eclipse detector.

        The new instance is a total eclipse (umbra) detector.

        The maximal interval between eclipse checks should be smaller than the half duration of the minimal pass to handle, otherwise some short passes could be missed.

        Parameters:
        maxCheck - maximal checking interval (s)
        threshold - convergence threshold (s)
        occulted - the body to be occulted
        occultedRadius - the radius of the body to be occulted in meters
        occulting - the occulting body
        occultingRadius - the occulting body radius in meters
    • Method Detail

      • withUmbra

        public FieldEclipseDetector<T> withUmbra()
        Setup the detector to full umbra detection.

        This will override a penumbra/umbra flag if it has been configured previously.

        Returns:
        a new detector with updated configuration (the instance is not changed)
        Since:
        6.1
        See Also:
        withPenumbra()
      • withPenumbra

        public FieldEclipseDetector<T> withPenumbra()
        Setup the detector to penumbra detection.

        This will override a penumbra/umbra flag if it has been configured previously.

        Returns:
        a new detector with updated configuration (the instance is not changed)
        Since:
        6.1
        See Also:
        withUmbra()
      • getOcculting

        public PVCoordinatesProvider getOcculting()
        Get the occulting body.
        Returns:
        the occulting body
      • getOccultingRadius

        public double getOccultingRadius()
        Get the occulting body radius (m).
        Returns:
        the occulting body radius
      • getOcculted

        public PVCoordinatesProvider getOcculted()
        Get the occulted body.
        Returns:
        the occulted body
      • getOccultedRadius

        public double getOccultedRadius()
        Get the occulted body radius (m).
        Returns:
        the occulted body radius
      • getTotalEclipse

        public boolean getTotalEclipse()
        Get the total eclipse detection flag.
        Returns:
        the total eclipse detection flag (true for umbra events detection, false for penumbra events detection)