Data.Astro.Moon.MoonDetails: exported symbols usage examples

Symbols

  • j2010MoonDetails See 3 Occurences [+] Collapse [-]
    Found in Data.Astro.Moon from the package astro
          cmq = correctedMoonQuantities lambdaS ms mmq
          mm' = toRadians $ mqAnomaly cmq
          ec = toRadians $ centreEquation mm'
          e = mdE md
      in MDU $ (1 - e*e)/(1+e*(cos(mm'+ec)))
    
    
    -- | Calculate the Moon's angular size at the given distance.
    moonAngularSize :: MoonDistanceUnits -> DecimalDegrees
    moonAngularSize (MDU p) = (mdBigTheta j2010MoonDetails) / (DD p)
    
    
    -- | Calculates the Moon's horizontal parallax at the given distance.
    moonHorizontalParallax :: MoonDistanceUnits -> DecimalDegrees
    moonHorizontalParallax (MDU p) = (mdPi j2010MoonDetails) / (DD p)
    
    
    -- | Calculates the Moon's phase (the area of the visible segment expressed as a fraction of the whole disk)
    -- at the given universal time.
    moonPhase :: MoonDetails -> JulianDate -> Double
    

    Found in Data.Astro.Moon from the package astro
    moonDistance1 md ut =
      let sd = sunDetails ut
          lambdaS = sunEclipticLongitude2 sd
          ms = sunMeanAnomaly2 sd
          mmq = meanMoonQuantities md ut
          cmq = correctedMoonQuantities lambdaS ms mmq
          mm' = toRadians $ mqAnomaly cmq
          ec = toRadians $ centreEquation mm'
          e = mdE md
      in MDU $ (1 - e*e)/(1+e*(cos(mm'+ec)))
    
    
    -- | Calculate the Moon's angular size at the given distance.
    moonAngularSize :: MoonDistanceUnits -> DecimalDegrees
    moonAngularSize (MDU p) = (mdBigTheta j2010MoonDetails) / (DD p)
    
    
    -- | Calculates the Moon's horizontal parallax at the given distance.
    moonHorizontalParallax :: MoonDistanceUnits -> DecimalDegrees
    moonHorizontalParallax (MDU p) = (mdPi j2010MoonDetails) / (DD p)
    

    Found in Data.Astro.Moon from the package astro
      , moonAngularSize
      , moonHorizontalParallax
      , moonPhase
      , moonBrightLimbPositionAngle
    )
    
    where
    
    import qualified Data.Astro.Utils as U
    import Data.Astro.Types (DecimalDegrees(..), GeographicCoordinates, toRadians, fromRadians, kmToAU)
    import Data.Astro.Time.JulianDate (JulianDate(..), numberOfDays)
    import Data.Astro.Coordinate (EquatorialCoordinates1(..), EclipticCoordinates(..), eclipticToEquatorial)
    import Data.Astro.Planet (planetBrightLimbPositionAngle)
    import Data.Astro.Sun (sunDetails, sunMeanAnomaly2, sunEclipticLongitude2)
    import Data.Astro.Moon.MoonDetails (MoonDetails(..), MoonDistanceUnits(..), j2010MoonDetails, mduToKm)
    import Data.Astro.Effects (parallax)
    
    
    -- | Reduce the value to the range [0, 360)
    reduceDegrees :: DecimalDegrees -> DecimalDegrees
    

    mduToKm See 2 Occurences [+] Collapse [-]
    Found in Data.Astro.Moon from the package astro
      in eclipticToEquatorial (EcC betaM lambdaM) ut
    
    
    -- | Calculate Equatorial Coordinates of the Moon with the given MoonDetails,
    -- distance to the Moon, geographic coordinates of the onserver,
    -- height above sea-level of the observer measured in metres (20 is a good reasonable value for the height)
    -- and at the given JulianDate.
    -- 
    -- It is recommended to use 'j2010MoonDetails' as a first parameter,
    -- to obtain the distance to the Moon you can use `moonDistance1` function.
    -- `moonPosition2` takes into account parallax effect.
    moonPosition2 :: MoonDetails -> MoonDistanceUnits -> GeographicCoordinates -> Double -> JulianDate -> EquatorialCoordinates1
    moonPosition2 md distance coords height jd =
      let p = moonPosition1 md jd
      in parallax coords height (kmToAU $ mduToKm distance) jd p
    
    
    -- | Calculates the Moon's Distance at the given julian date.
    -- Returns distance to the Moon
    -- moonDistance1 :: JulianDate -> MoonDistanceUnits
    

    Found in Data.Astro.Moon from the package astro
      , moonAngularSize
      , moonHorizontalParallax
      , moonPhase
      , moonBrightLimbPositionAngle
    )
    
    where
    
    import qualified Data.Astro.Utils as U
    import Data.Astro.Types (DecimalDegrees(..), GeographicCoordinates, toRadians, fromRadians, kmToAU)
    import Data.Astro.Time.JulianDate (JulianDate(..), numberOfDays)
    import Data.Astro.Coordinate (EquatorialCoordinates1(..), EclipticCoordinates(..), eclipticToEquatorial)
    import Data.Astro.Planet (planetBrightLimbPositionAngle)
    import Data.Astro.Sun (sunDetails, sunMeanAnomaly2, sunEclipticLongitude2)
    import Data.Astro.Moon.MoonDetails (MoonDetails(..), MoonDistanceUnits(..), j2010MoonDetails, mduToKm)
    import Data.Astro.Effects (parallax)
    
    
    -- | Reduce the value to the range [0, 360)
    reduceDegrees :: DecimalDegrees -> DecimalDegrees
    

    MoonDetails No usage example found for this symbol :( Collapse [-]
    MoonDistanceUnits No usage example found for this symbol :( Collapse [-]