# ----------------------------------------------------------------------------- # DEFINING CONSTANTS # ----------------------------------------------------------------------------- export μs, G, GMs, μ, rs, as, es # Gravitational Constants μs = Dict( "Sun" => 1.32712440018e11, "Mercury" => 2.2032e4, "Venus" => 3.257e5, "Earth" => 3.986004415e5, "Moon" => 4.902799e3, "Mars" => 4.305e4, "Jupiter" => 1.266865361e8, "Saturn" => 3.794e7, "Uranus" => 5.794e6, "Neptune" => 6.809e6, "Pluto" => 9e2) G = 6.67430e-20 function μ(m1::Float64, m2::Float64) return m2/(m1+m2) end function μ(GM1::Float64, GM2::Float64, Grav::Float64) return μ(GM1/Grav, GM2/Grav) end function μ(primary::String, secondary::String) return μ(GMs[primary]/G, GMs[secondary]/G) end GMs = Dict( "Sun" => 132712440041.93938, "Earth" => 398600.435436, "Moon" => 4902.800066) # Radii rs = Dict( "Sun" => 696000., "Mercury" => 2439., "Venus" => 6052., "Earth" => 6378.1363, "Moon" => 1738., "Mars" => 3397.2, "Jupiter" => 71492., "Saturn" => 60268., "Uranus" => 25559., "Neptune" => 24764., "Pluto" => 1151.) # Semi Major Axes as = Dict( "Mercury" => 57909083., "Venus" => 108208601., "Earth" => 149598023., "Moon" => 384400., "Mars" => 227939186., "Jupiter" => 778298361., "Saturn" => 1429394133., "Uranus" => 2875038615., "Neptune" => 4504449769., "Pluto" => 5915799000.) # Eccentricities es = Dict( "Earth" => 0.016708617, "Moon" => 0.0549) # J2 for basic oblateness j2s = Dict( "Mercury" => 0.00006, "Venus" => 0.000027, "Earth" => 0.0010826269, "Moon" => 0.0002027, "Mars" => 0.001964, "Jupiter" => 0.01475, "Saturn" => 0.01645, "Uranus" => 0.012, "Neptune" => 0.004, "Pluto" => 0.) # These are just the colors for plots p_colors = Dict( "Sun" => :Electric, "Mercury" => :heat, "Venus" => :turbid, "Earth" => :Blues, "Moon" => :Greys, "Mars" => :Reds, "Jupiter" => :solar, "Saturn" => :turbid, "Uranus" => :haline, "Neptune" => :ice, "Pluto" => :matter) AU = 149597870.691 #km init_STM = vec(Matrix{Float64}(I,6,6))