úÎ#ħuİ›t      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrsNone%.>HMUVX_krorbits"One complete revolution in radiansorbits À radiansorbitsMultiply by 1 radianorbitsDivide by 1 radianNone%.>HMUVX_k ÖorbitsA unitless measure. orbits!A measure in radians (hyperbolic) orbitsA measure in radians. orbitsA measure in kilograms. orbitsA measure in meters per second. orbitsA measure in meters.orbitsA measure in seconds.    None%.>HMUVX_k ìtuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹None%.>HMUVX_k[7orbitsEWhat form the orbit's geometry takes. This is dependant only on the #, e >= 0, of the orbit.orbits 0 <= e < 1This includes circular orbits.orbitse == 1orbitse > 1orbits Along with  the 3 describes orbital elements extra to its geometry.orbitsThe orbit is not circularorbits+The orbit has an eccentricity of 0 so the  is indeterminate.orbitsThe argument of periapsis, É.The [ is the angle of the periapsis relative to the reference direction in the orbital plane.orbits Along with  the 3 describes orbital elements extra to its geometry.orbits6The orbit does not lie exactly in the reference planeorbits%The orbit lies in the reference planeorbits(The longitude of the ascending node, İ.‹The angle between the reference direction and the point where the orbiting body crosses the reference plane in the positive z direction. orbitsThe orbit's inclination, i.<The angle between the reference plane and the orbital plane!orbitsOData type defining an orbit parameterized by the type used to represent values#orbitsThe orbit's eccentricity, e.# must be non-negative.0An eccentricity of 0 describes a circular orbit.<An eccentricity of less than 1 describes an elliptic orbit.7An eccentricity equal to 1 describes a parabolic orbit.=An eccentricity greater than 1 describes a hyperbolic orbit.$orbitsThe orbit's periapsis, q.$ must be positive.LThe periapsis is the distance between the bodies at their closest approach.%orbitsThe %H describes the angle between the obtital plane and the reference plane.&orbits& is  iff # is 0wThe periapsis specifier describes any rotation of the orbit relative to the reference direction in the orbital plane.'orbits8The gravitational parameter of the system's primary, ĵ..ĵ is equal to the mass of the primary times < 4https://en.wikipedia.org/wiki/Gravitational_constant G>.' must be positive.(orbits.Determines if the orbital elements are valid (e >= 0l etc...). The behavior of all the other functions in this module is undefined when given an invalid orbit.)orbitsWhat shape is the orbit*orbits$Return an equivalent orbit such that i " [0..À) İ " [0..2À) É " [0..2À),inclinationSpecifier == NonInclined if i = 03periapsisSpecifier == Circular if e == 0 and É == 0+orbits)Calculate the semi-major axis, a, of the ! . Returns Œ‡ when given a parabolic orbit for which there is no semi-major axis. Note that the semi-major axis of a hyperbolic orbit is negative.,orbits)Calculate the semi-minor axis, b, of the !. Like + 'semiMinorAxis' o is negative when o: is a hyperbolic orbit. In the case of a parabolic orbit , returns 0m.-orbits)Calculate the semiLatusRectum, l, of the !.orbitsPCalculate the distance between the bodies when they are at their most distant. . returns Œ- when given a parabolic or hyperbolic orbit./orbits)Calculate the mean motion, n, of an orbitDThis is the rate of change of the mean anomaly with respect to time.0orbits6Calculate the orbital period, p, of an elliptic orbit.0: returns Nothing if given a parabolic or hyperbolic orbit.1orbits.Calculate the areal velocity, A, of the orbit.The areal velocity is the area  https://xkcd.com/21/ swept outC by the line between the orbiting body and the primary per second.2orbits˙Calculate the angle at which a body leaves the system when on an escape trajectory relative to the argument of periapsis. This is the limit of the true anomaly as time tends towards infinity minus the argument of periapsis. The departure angle is in the closed range (À/2..À).+This is the negation of the approach angle.2R returns Nothing when given an elliptic orbit and À when given a parabolic orbit.3orbits˙Calculate the angle at which a body leaves the system when on a hyperbolic trajectory relative to the argument of periapsis. This is the limit of the true anomaly as time tends towards -infinity minus the argument of periapsis. The approach angle is in the closed range (-À..À/2).,This is the negation of the departure angle.3X returns Nothing when given a non-hyperbolic orbit and -À when given a parabolic orbit.4orbitsCCalculate the time since periapse, t, when the body has the given  *https://en.wikipedia.org/wiki/Mean_anomaly mean anomalyU, M. M may be negative, indicating that the orbiting body has yet to reach periapse.DThe sign of the time at mean anomaly M is the same as the sign of M.The returned time is unbounded.5orbitsXCalculate the time since periapse, t, of an elliptic orbit when at eccentric anomaly E.5; returns Nothing if given a parabolic or hyperbolic orbit.6orbitsZCalculate the time since periapse, t, of a hyperbolic orbit when at hyperbolic anomaly H.8Returns Nothing if given an elliptic or parabolic orbit.7orbitsRCalculate the time since periapse given the true anomaly, ½, of an orbiting body.Returns Œ> if the body never passed through the specified true anomaly.8orbitsCalculate the  *https://en.wikipedia.org/wiki/Mean_anomaly mean anomaly{, M, at the given time since periapse, t. t may be negative, indicating that the orbiting body has yet to reach periapse.DThe sign of the mean anomaly at time t is the same as the sign of t.'The returned mean anomaly is unbounded.9orbitsPCalculate the mean anomaly, M, of an elliptic orbit when at eccentric anomaly E9; returns Nothing if given a parabolic or hyperbolic orbit.HThe number of orbits represented by the anomalies is preserved; i.e. M  2À = E  2À:orbitsRCalculate the mean anomaly, M, of a hyperbolic orbit when at hyperbolic anomaly H;orbitsVCalculate the mean anomaly, M, of an orbiting body when at the given true anomaly, ½.HThe number of orbits represented by the anomalies is preserved; i.e. M  2À = ½  2ÀReturns Œ for parabolic orbits.Returns Œ@ when the trajectory is not defined for the given true anomaly.<orbitsCCalculate the eccentric anomaly, E, of an elliptic orbit at time t.<= returns Nothing when given a parabolic or hyperbolic orbit.CThe number of orbits represented by the time is preserved; i.e. t  p = E  2À=orbitsŜCalculate the eccentric anomaly, E, of an elliptic orbit when at mean anomaly M. This function is considerably slower than most other conversion functions as it uses an iterative method as no closed form solution exists.HThe number of orbits represented by the anomalies is preserved; i.e. M  2À = E  2À== returns Nothing when given a parabolic or hyperbolic orbit.>orbits= specialized to Ž.:This function is used to calculate the initial guess for =.?orbitsUCalculate the eccentric anomaly, E, of an orbiting body when it has true anomaly, ½.HThe number of orbits represented by the anomalies is preserved; i.e. ½  2À = E  2À9Returns Nothing if given a parabolic or hyperbolic orbit.BorbitsFCalculate the hyperbolic anomaly, H, at a given mean anomaly. Unline >> this uses double precision floats to help avoid overflowing.CorbitsBReturns the hyperbolic anomaly, H, for an orbit at true anomaly ½.Returns Œ when given an  or D orbit, or a true anomaly out of the range of the hyperbolic orbit.DorbitsCCalculate the true anomaly, ½, of a body at time since periapse, t.Eorbits[Calculate the true anomaly, ½, of an orbiting body when it has the given mean anomaly, _M.Forbits`Calculate the true anomaly, ½, of an orbiting body when it has the given eccentric anomaly, _E.HThe number of orbits represented by the anomalies is preserved; i.e. ½  2À = E  2ÀHorbitsZThe distance, r, from the primary body to the orbiting body at a particular true anomaly.Iorbits<What is the speed, v, of a body at a particular true anomalyJorbitsCSpecific angular momentum, h, is the angular momentum per unit massKorbits?Specific orbital energy, µ, is the orbital energy per unit massLorbitsbSpecific potential energy, µp, is the potential energy per unit mass at a particular true anomalyMorbits^Specific kinetic energy, µk, is the kinetic energy per unit mass at a particular true anomalyNorbitscThe escape velocity for a primary with specified gravitational parameter at a particular distance.ForbitsAn elliptic orbitorbitsThe eccentric anomaly _EorbitsThe true anomaly, ½H  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNH!"#$%&' ()*./01+,-32456789:;<=>?@ABCDEFGJKLMIHN None%.>HMUVX_k–+^orbitsYThe fastest comet in the west. Nice for testing as it's on a hyperbolic trajectory. See 'https://en.wikipedia.org/wiki/C/1980_E1Orbital data from: Whttp://ssd.jpl.nasa.gov/horizons.cgi?CGISESSID=6c2730c1201457522760d3f26b7d1f00#resultsXYZ[\]^XYZ[\]^None%.>HMUVX_k¨˙ eorbitslGet the position in space of a body after rotating it according to the inclination and periapsis specifier.forbits8Get the position of a body relative to the orbital planegorbitslGet the velocity in space of a body after rotating it according to the inclination and periapsis specifier.horbitsThe in-plane velocity of a bodykorbitsUCalculate the true anomaly, ½, of a body at position, r, given its orbital elements.lorbits5Calculate the momentum vector, h, given state vectorsmorbits9Calculate the eccentricity vector, e, given state vectorsnorbitspRotate a position relative to the orbital plane according to the inclination specifier and periapsis specifier.0The orbital plane is perpendicular to the z axisoorbits€Rotate a position such that is is relative to the orbital plane according to the inclination specifier and periapsis specifier.0The orbital plane is perpendicular to the z axisporbits;A quaternion representing the rotation of the orbital planeqorbitsGet the flight path angle, Ĉ, of a body a a specific true anomaly. This is the angle of the body's motion relative to a vector perpendicular to the radius._`abcdefghijklmnopq_`abdciefghjmkponql      !"#$%&'(()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdeefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“‘”•–—˜™orbits-0.4-inplace Physics.OrbitData.Constants.Mechanics.ExtraPhysics.Orbit.MetrologyPhysics.Orbit.SolPhysics.Orbit.StateVectorsData.Metrology.Extra(exact-real-0.12.4-JV5lRefIITBJVmoQwBnsIrData.CReal.ConvergeConvergeturnhalfTurnaddRaddelRadPlaneAngleHyperbolic$fDimensionPlaneAngleHyperbolicUnitlessAngleHAngleMassSpeedDistanceTimeQuantityRadianHyperbolic$fShowRadianHyperbolic$fUnitRadianHyperbolicClassificationElliptic Parabolic HyperbolicPeriapsisSpecifier EccentricCircularargumentOfPeriapsisInclinationSpecifierInclined NonInclinedlongitudeOfAscendingNode inclinationOrbit eccentricity periapsisinclinationSpecifierperiapsisSpecifierprimaryGravitationalParameterisValidclassifynormalizeOrbit semiMajorAxis semiMinorAxissemiLatusRectumapoapsis meanMotionperiod arealVelocityhyperbolicDepartureAnglehyperbolicApproachAngletimeAtMeanAnomalytimeAtEccentricAnomalytimeAtHyperbolicAnomalytimeAtTrueAnomalymeanAnomalyAtTimemeanAnomalyAtEccentricAnomalymeanAnomalyAtHyperbolicAnomalymeanAnomalyAtTrueAnomalyeccentricAnomalyAtTimeeccentricAnomalyAtMeanAnomaly"eccentricAnomalyAtMeanAnomalyFloateccentricAnomalyAtTrueAnomalyhyperbolicAnomalyAtTimehyperbolicAnomalyAtMeanAnomaly$hyperbolicAnomalyAtMeanAnomalyDoublehyperbolicAnomalyAtTrueAnomalytrueAnomalyAtTimetrueAnomalyAtMeanAnomalytrueAnomalyAtEccentricAnomalytrueAnomalyAtHyperbolicAnomalyradiusAtTrueAnomalyspeedAtTrueAnomalyspecificAngularMomentumspecificOrbitalEnergy$specificPotentialEnergyAtTrueAnomaly"specificKineticEnergyAtTrueAnomalyescapeVelocityAtDistance$fShowInclinationSpecifier$fEqInclinationSpecifier$fShowPeriapsisSpecifier$fEqPeriapsisSpecifier $fShowOrbit $fEqOrbit$fShowClassification$fReadClassification$fEqClassificationsolMasssolGraviationalParameter venusOrbit earthOrbit marsOrbit halleyOrbit c1980E1Orbit StateVectorspositionvelocityVelocityPositionpositionAtTrueAnomalypositionInPlaneAtTrueAnomalyvelocityAtTrueAnomalyvelocityInPlaneAtTrueAnomalystateVectorsAtTrueAnomalyelementsFromStateVectorstrueAnomalyAtPositionspecificAngularMomentumVectoreccentricityVectorrotateFromPlane rotateToPlaneorbitalPlaneQuaternionflightPathAngleAtTrueAnomaly$fShowStateVectors$fEqStateVectorsmod'div'divMod'radrdhqCosqSinqTanqArcTanqArcTan2qArcCosqRecipqTanhqSinhqCoshqArcCoshqAbsqCrossqNorm qNormalizeqDot qQuadrance|^/||^-^|base GHC.MaybeNothingGHC.Realdivghc-prim GHC.TypesFloat