Class AbstractLightFluxModel

    • Constructor Detail

      • AbstractLightFluxModel

        protected AbstractLightFluxModel​(ExtendedPositionProvider occultedBody)
        Constructor.
        Parameters:
        occultedBody - position provider for light source
    • Method Detail

      • getOccultedBody

        public ExtendedPositionProvider getOccultedBody()
        Getter for the occulted body's position provider.
        Returns:
        occulted body
      • getOccultedBodyPosition

        protected Vector3D getOccultedBodyPosition​(AbsoluteDate date,
                                                   Frame frame)
        Method computing the occulted body's position at a given date and frame.
        Parameters:
        date - date
        frame - frame
        Returns:
        position
      • getOccultedBodyPosition

        protected <T extends CalculusFieldElement<T>> FieldVector3D<T> getOccultedBodyPosition​(FieldAbsoluteDate<T> date,
                                                                                               Frame frame)
        Method computing the occulted body's position at a given date and frame. Field version.
        Type Parameters:
        T - field type
        Parameters:
        date - date
        frame - frame
        Returns:
        position
      • getUnoccultedFluxVector

        protected abstract Vector3D getUnoccultedFluxVector​(Vector3D relativePosition)
        Get the light flux vector, not considering any shadowing effect.
        Parameters:
        relativePosition - relative position w.r.t. light source
        Returns:
        unocculted flux
      • getUnoccultedFluxVector

        protected abstract <T extends CalculusFieldElement<T>> FieldVector3D<T> getUnoccultedFluxVector​(FieldVector3D<T> relativePosition)
        Get the light flux vector, not considering any shadowing effect. Field version.
        Type Parameters:
        T - field type
        Parameters:
        relativePosition - relative position w.r.t. light source
        Returns:
        unocculted flux
      • getLightingRatio

        public double getLightingRatio​(SpacecraftState state)
        Get the lighting ratio ([0-1]).
        Parameters:
        state - state
        Returns:
        lighting ratio
      • getLightingRatio

        protected abstract double getLightingRatio​(Vector3D position,
                                                   Vector3D occultedBodyPosition)
        Get the lighting ratio ([0-1]).
        Parameters:
        position - object's position
        occultedBodyPosition - occulted body position in same frame
        Returns:
        lighting ratio
      • getLightingRatio

        public <T extends CalculusFieldElement<T>> T getLightingRatio​(FieldSpacecraftState<T> state)
        Get the lighting ratio ([0-1]).
        Type Parameters:
        T - field type
        Parameters:
        state - state
        Returns:
        lighting ratio
      • getLightingRatio

        protected abstract <T extends CalculusFieldElement<T>> T getLightingRatio​(FieldVector3D<T> position,
                                                                                  FieldVector3D<T> occultedBodyPosition)
        Get the lighting ratio ([0-1]). Field version.
        Type Parameters:
        T - field type
        Parameters:
        position - object's position
        occultedBodyPosition - occulted body position in same frame
        Returns:
        lighting ratio