Class GroundAtNightEventFunction

java.lang.Object
org.orekit.propagation.events.functions.AbstractTopocentricEventFunction
org.orekit.propagation.events.functions.GroundAtNightEventFunction
All Implemented Interfaces:
EventFunction

public class GroundAtNightEventFunction extends AbstractTopocentricEventFunction
Event function for ground location being at night.

It is positive when ground is at night (i.e. Sun is below dawn/dusk elevation angle).

Since:
14.0
Author:
Luc Maisonobe, Romain Serra
  • Constructor Details

    • GroundAtNightEventFunction

      public GroundAtNightEventFunction(TopocentricFrame topocentricFrame, ExtendedPositionProvider sun, double dawnDuskElevation, AtmosphericRefractionModel refractionModel)
      Private constructor.
      Parameters:
      topocentricFrame - ground location from which measurement is performed
      sun - provider for Sun position
      dawnDuskElevation - Sun elevation below which we consider night is dark enough (rad)
      refractionModel - reference to refraction model (null if refraction should be ignored),
  • Method Details

    • value

      public double value(SpacecraftState state)
      Description copied from interface: EventFunction
      Evaluate function.
      Parameters:
      state - spacecraft state
      Returns:
      value
    • value

      public <T extends CalculusFieldElement<T>> T value(FieldSpacecraftState<T> state)
      Evaluate Field function. By default, calls the non-Field version. This is suitable for detection but not be for applications like automatic differentiation, where a proper implementation should be used instead.

      The function 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.

      Type Parameters:
      T - field type
      Parameters:
      state - spacecraft state
      Returns:
      value
    • dependsOnTimeOnly

      public boolean dependsOnTimeOnly()
      Description copied from interface: EventFunction
      Method returning true if and only if the event function does not depend on dependent variables, just the independent one i.e. time. This information is used for performance in propagation and derivatives correction with switches in the dynamics.
      Returns:
      flag