As promised, here’s the planetary orbital and properties calculator that I created. At the time, I was teaching myself PowerShell scripting and wanted to make something useful.
<#
The MIT License (MIT)
Copyright (c) 2018 Gary Hammock
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
#>
Function Calculate-Planetary-Data
{
<#
.SYNOPSIS
Calculates solar orbital geometry parameters, solar orbital
dynamics parameters, and planetary geometry parameters given
base inputs.
.DESCRIPTION
Calculates solar orbital geometry parameters, solar orbital
dynamics parameters, and planetary geometry parameters given
the orbital semi-major axis, orbital eccentricity,
planetary mass, planetary equitorial radius, and optional
planetary flattening parameter.
.PARAMETER semiMajorAxis
The semi-major axis of the elliptical orbit (or radius of a
circular orbit). [Units: meters]
.PARAMETER eccentricity
The eccentricity of the elliptical orbit. Eccentricity is a
parameter that is between 0 and 1, inclusive. An eccentricity
of 0 implies a circlular orbit and an eccentricity of 1 implies
an ellipse collapsed to a line (i.e. semi-minor axis = 0,
area = 0) that is collinear with the semi-major axis.
[dimensionless]
.PARAMETER mass
The mass of the orbiting body. [Units: kg]
.PARAMETER radiusEquitorial
The equitorial radius of the orbiting body. [Units: m]
.PARAMETER flattening
[Optional]The flattening parameter of the orbiting body.
If the flattening parameter is absent, a spherical body is
assumed. Otherwise, the calculation results in an oblate
spheroid. [dimensionless]
.NOTES
Name: Calculate-Planetary-Data
Author: Gary Hammock
Created: 2018-01-05
.INPUTS
None. This script does not accept piped inputs.
.OUTPUTS
System.String in list format.
.EXAMPLE
Calculate-Planetary-Data -a 1.496e11 -e 0.01671 -m 5.9724e24 -r 6.378e6 -f 0.00335
Orbit Geometry
--------------
Aphelion (m) : 1.52099816e+011
Perihelion (m) : 1.47100184e+011
Semi-Major Axis (m) : 1.49600000e+011
Semi-Minor Axis (m) : 1.49579113e+011
Semi-Latus Rectum (m) : 1.49558228e+011
Eccentricity : 0.01671000
Linear Eccentricity (m) : 2.49981600e+009
Area (m^2) : 7.02995295e+022
Perimeter (m) : 9.39898903e+011
Focal Parameter (m) : 8.95022310e+012
Orbit Dynamics
--------------
Period (s) : 3.15588224e+007
Specific Angular Momentum (m^2/s) : 4.45513607e+015
Specific Energy (J/kg) : -4.43557620e+008
Gravitational Parameter (m^3/s^2) : 3.98602754e+014
Maximum Velocity (m/s) : 30286.407
Minimum Velocity (m/s) : 29290.871
Average Velocity (m/s) : 29782.445
Planetary Parameters
--------------------
Mass (kg) : 5.97240000e+024
Equitorial Radius (m) : 6.37800000e+006
Polar Radius (m) : 6.35663370e+006
Volume Averaged Radius (m) : 6.37086993e+006
Flattening : 0.00335000
Eccentricity : 0.08178495
Moment of Inertia, sphere (kg-m^2) : 9.69630695e+037
Surface Area (m^2) : 5.10044667e+014
Volume (m^3) : 1.08314058e+021
Average Density (kg/m^3) : 5513.966
Surface Gravity (m/s^2) : 9.799
Escape Velocity (m/s) : 11186.282
Description
-----------
Generates all of the orbital and planetary data for a
body orbiting the sun with the given inputs.
#>
[CmdletBinding()]
Param
(
[Parameter(Position=0,
Mandatory=$true,
HelpMessage="The largest distance from the center of the " +
"orbit to the edge of the ellipse. Enter " +
"value in meters.")]
[Alias("A")]
[double]$semiMajorAxis,
[Parameter(Position=1,
Mandatory=$true,
HelpMessage="The orbital eccentricity between 0 and 1.")]
[Alias("E")]
[ValidateRange(0, 1)]
[double]$eccentricity,
# Planetary mass (kg).
[Parameter(Position=2,
Mandatory=$true,
HelpMessage="The mass of the orbiting body in kilograms.")]
[Alias("M")]
[double]$mass,
# Planetary equitorial radius (m).
[Parameter(Position=3,
Mandatory=$true,
HelpMessage="The equatorial radius of the orbiting body " +
"in meters.")]
[Alias("R")]
[double]$radiusEquitorial,
# Planetary flattening parameter (dimensionless).
[Parameter(Position=4,
HelpMessage="For oblate spheroids, the flattening " +
"parameter will account for the difference " +
"in equatorial and polar radii. The " +
"flattening parameter is between 0 and 1.")]
[Alias("F")]
[ValidateRange(0, 1)]
[double]$flattening = 0
)
Begin
{
# Newton's Big-G constant [units: m^3/(kg-s^2)]
$G = 6.67408e-11
# The solar gravitational parameter as given by NASA JPL
# Astrodynamic constants.
# (This implies the solar mass to be 1.98847541561e30.)
# Reference:
# Online: https://ssd.jpl.nasa.gov/?constants
$solarGravParameter = 1.32712440018e20 # Units: m^3/s^2
# Note that using the NIST standard value of G and the range of
# values for the solar mass (1.98855 +/- 0.00025)e30 kg yields a
# gravitational parameter of (1.3271742 +/- 0.0001669)e20 m^3/s^2.
}
Process
{
#########################################
# Elliptical Geometry
#########################################
$e2 = $eccentricity * $eccentricity
# b = a * sqrt(1-e^2)
$semiMinorAxis = $semiMajorAxis * [Math]::Sqrt(1.0 - $e2)
$aSquared = $semiMajorAxis * $semiMajorAxis
$bSquared = $semiMinorAxis * $semiMinorAxis
# l = a * (1 - e^2)
# = a * (b / a)^2
# = b^2 / a
$semiLatusRectum = $bSquared / $semiMajorAxis
$linearEccentricity = [Math]::Sqrt($aSquared - $bSquared)
# Distance from foci to the ellipse extrema [Units: meters]
$apoapsis = $semiMajorAxis * (1.0 + $eccentricity)
$periapsis = $semiMajorAxis * (1.0 - $eccentricity)
# Units: m^2
$area = [Math]::PI * $semiMajorAxis * $semiMinorAxis
# Perimeter of the ellipse using Gauss-Kummer Series [Units: meters].
# Reference equations (65) and (66):
# http://mathworld.wolfram.com/Ellipse.html
$h = ($semiMajorAxis - $semiMinorAxis) / ($semiMajorAxis + $semiMinorAxis)
$h2 = $h * $h
$perimeter = [Math]::PI * ($semiMajorAxis + $semiMinorAxis) *
(1.0 + ($h2/4) + ($h2 * $h2 /64))
# Distance from the focus to the directrix [Units: meters].
if ($linearEccentricity -lt 1e-5)
{
# For a circle, the directrix is undefined so the focal
# parameter is infinite.
$focalParameter = [double]::PositiveInfinity
}
else
{
$focalParameter = $bSquared / $linearEccentricity
}
$geometry = New-Object -Type PSObject
$geometry | Add-Member -Type NoteProperty -Name "Aphelion (m)" -Value ([string]::Format("{0:e8}", $apoapsis))
$geometry | Add-Member -Type NoteProperty -Name "Perihelion (m)" -Value ([string]::Format("{0:e8}", $periapsis))
$geometry | Add-Member -Type NoteProperty -Name "Semi-Major Axis (m)" -Value ([string]::Format("{0:e8}", $semiMajorAxis))
$geometry | Add-Member -Type NoteProperty -Name "Semi-Minor Axis (m)" -Value ([string]::Format("{0:e8}", $semiMinorAxis))
$geometry | Add-Member -Type NoteProperty -Name "Semi-Latus Rectum (m)" -Value ([string]::Format("{0:e8}", $semiLatusRectum))
$geometry | Add-Member -Type NoteProperty -Name "Eccentricity" -Value ([string]::Format("{0:f8}", $eccentricity))
$geometry | Add-Member -Type NoteProperty -Name "Linear Eccentricity (m)" -Value ([string]::Format("{0:e8}", $linearEccentricity))
$geometry | Add-Member -Type NoteProperty -Name "Area (m^2)" -Value ([string]::Format("{0:e8}", $area))
$geometry | Add-Member -Type NoteProperty -Name "Perimeter (m)" -Value ([string]::Format("{0:e8}", $perimeter))
$geometry | Add-Member -Type NoteProperty -Name "Focal Parameter (m)" -Value ([string]::Format("{0:e8}", $focalParameter))
#########################################
# Orbital Dynamics Parameters
#########################################
# The gravitational parameter of the orbiting body [Units: m^3/s^2].
$gravParameter = $G * $mass
# G(M + m) = GM + Gm
$mu = $solarGravParameter + $gravParameter
# Kepler's Third Law
$period = 2.0 * [Math]::PI * [Math]::Sqrt([Math]::Pow($semiMajorAxis, 3.0) / $mu)
# Specific Relative Angular Momemtum [units: m^2/s]
# From Kepler's First Law.
$specificAngularMom = [Math]::Sqrt($solarGravParameter * $semiLatusRectum)
# From the vis-viva equation [units: J/kg]
$specificEnergy = -1 * $solarGravParameter / (2.0 * $semiMajorAxis)
# Velocities can be calculated from the vis-viva equation.
# The maximum velocity occurs at the periapsis of an elliptical orbit
# and the minimum velocity occurs at the apoapsis. [Units: m/s]
$velocityMax = [Math]::Sqrt($solarGravParameter * ((2.0 / $periapsis) - (1.0 / $semiMajorAxis)))
$velocityMin = [Math]::Sqrt($solarGravParameter * ((2.0 / $apoapsis) - (1.0 / $semiMajorAxis)))
$velocityAverage = (2.0 * [Math]::PI * $semiMajorAxis / $period) *
(1.0 - ($e2 / 4) - (3.0 * $e2 * $e2 / 64))
# In the unlikely event that the velocity of a super-small particle
# is super-high, make sure it doesn't break the light barrier.
$c = 299792458
if ($velocityMax -gt $c) { $velocityMax = $c }
if ($velocityMin -gt $c) { $velocityMin = $c }
if ($velocityAverage -gt $c) { $velocityAverage = $c }
$dynamics = New-Object -Type PSObject
$dynamics | Add-Member -Type NoteProperty -Name "Period (s)" -Value ([string]::Format("{0:e8}", $period))
$dynamics | Add-Member -Type NoteProperty -Name "Specific Angular Momentum (m^2/s)" -Value ([string]::Format("{0:e8}", $specificAngularMom))
$dynamics | Add-Member -Type NoteProperty -Name "Specific Energy (J/kg)" -Value ([string]::Format("{0:e8}", $specificEnergy))
$dynamics | Add-Member -Type NoteProperty -Name "Gravitational Parameter (m^3/s^2)" -Value ([string]::Format("{0:e8}", $gravParameter))
$dynamics | Add-Member -Type NoteProperty -Name "Maximum Velocity (m/s)" -Value ([string]::Format("{0:f3}", $velocityMax))
$dynamics | Add-Member -Type NoteProperty -Name "Minimum Velocity (m/s)" -Value ([string]::Format("{0:f3}", $velocityMin))
$dynamics | Add-Member -Type NoteProperty -Name "Average Velocity (m/s)" -Value ([string]::Format("{0:f3}", $velocityAverage))
#########################################
## Planetary Parameters
#########################################
$radiusPolar = $radiusEquitorial * (1.0 - $flattening)
$rE2 = $radiusEquitorial * $radiusEquitorial
$rP2 = $radiusPolar * $radiusPolar
$planetaryEccentricity = [Math]::Sqrt(1.0 - ($rP2 / $rE2))
# Interestingly, the planetary eccentricity is related to the
# flattening parameter by:
#
# e^2 = f * (1 + (b/a))
#
# So for a sphere where f=0, e=0. For a flattened ellipse
# (a line, b=0) where f=1, e=1
# We have to distinguish between spheres and oblate spheroids to
# prevent a divide-by-zero exception if the eccentricity is zero.
if ($planetaryEccentricity -lt 1e-5)
{
# Standard Surface area of a sphere [Units: m^2].
$surfaceArea = 4.0 * [Math]::PI * $rE2
}
else
{
$logFactor = [Math]::Log( (1.0 + $planetaryEccentricity) /
(1.0 - $planetaryEccentricity) )
# Surface area of an oblate spheroid
$surfaceArea = (2.0 * [Math]::PI * $rE2) +
([Math]::PI * $rP2 * $logFactor / $planetaryEccentricity)
}
# Volume of an oblate spheroid, reduces to volume of a
# sphere for equal radii.
$volume = (4.0 * [Math]::PI / 3.0) * $rE2 * $radiusPolar
# Calculate a volume averaged radius. This helps
# simplify gravitational problems.
$radiusVAveraged = [Math]::Pow((3.0 * $volume) / (4.0 * [Math]::PI), (1.0/3.0))
$bulkDensity = $mass / $volume
$surfaceGravity = $gravParameter / $rE2
$escapeVelocity = [Math]::Sqrt(2.0 * $gravParameter / $radiusVAveraged)
$moi_solidSphere = (2.0 * $mass * [Math]::Pow($radiusVAveraged, 2.0)) / 5.0
$planet = New-Object -Type PSObject
$planet | Add-Member -Type NoteProperty -Name "Mass (kg)" -Value ([string]::Format("{0:e8}", $mass))
$planet | Add-Member -Type NoteProperty -Name "Equitorial Radius (m)" -Value ([string]::Format("{0:e8}", $radiusEquitorial))
$planet | Add-Member -Type NoteProperty -Name "Polar Radius (m)" -Value ([string]::Format("{0:e8}", $radiusPolar))
$planet | Add-Member -Type NoteProperty -Name "Volume Averaged Radius (m)" -Value ([string]::Format("{0:e8}", $radiusVAveraged))
$planet | Add-Member -Type NoteProperty -Name "Flattening" -Value ([string]::Format("{0:f8}", $flattening))
$planet | Add-Member -Type NoteProperty -Name "Eccentricity" -Value ([string]::Format("{0:f8}", $planetaryEccentricity))
$planet | Add-Member -Type NoteProperty -Name "Moment of Inertia, sphere (kg-m^2)" -Value ([string]::Format("{0:e8}", $moi_solidSphere))
$planet | Add-Member -Type NoteProperty -Name "Surface Area (m^2)" -Value ([string]::Format("{0:e8}", $surfaceArea))
$planet | Add-Member -Type NoteProperty -Name "Volume (m^3)" -Value ([string]::Format("{0:e8}", $volume))
$planet | Add-Member -Type NoteProperty -Name "Average Density (kg/m^3)" -Value ([string]::Format("{0:f3}", $bulkDensity))
$planet | Add-Member -Type NoteProperty -Name "Surface Gravity (m/s^2)" -Value ([string]::Format("{0:f3}", $surfaceGravity))
$planet | Add-Member -Type NoteProperty -Name "Escape Velocity (m/s)" -Value ([string]::Format("{0:f3}", $escapeVelocity))
}
End
{
#########################################
## Output Results
#########################################
Write-Output ""
Write-Output "Orbit Geometry"
Write-Output "--------------"
Write-Output ($geometry | Out-String).Trim()
Write-Output ""
Write-Output "Orbit Dynamics"
Write-Output "--------------"
Write-Output ($dynamics | Out-String).Trim()
Write-Output ""
Write-Output "Planetary Parameters"
Write-Output "--------------------"
Write-Output ($planet | Out-String).Trim()
}
}
Which will generate a list of data like the following (using Earth’s input parameters):
Orbit Geometry
--------------
Aphelion (m) : 1.52097602e11
Perihelion (m) : 1.47098444e11
Semi-Major Axis (m) : 1.49598023e11
Semi-Minor Axis (m) : 1.49577139e11
Semi-Latus Rectum (m) : 1.49556258e11
Eccentricity : 0.01670863
Linear Eccentricity (m) : 2.49957864e9
Area (m^2) : 7.02976731e22
Perimeter (m) : 9.39886493e11
Focal Parameter (m) : 8.95083683e12
Orbit Dynamics
--------------
Period (s) : 3.15581968e7
Specific Angular Momentum (m^2/s) : 4.45510673e15
Specific Energy (J/kg) : -4.43563482e8
Gravitational Parameter (m^3/s^2) : 3.98600436e14
Maximum Velocity (m/s) : 30286.566
Minimum Velocity (m/s) : 29291.104
Average Velocity (m/s) : 29782.642
Planetary Parameters
--------------------
Mass (kg) : 5.97218630e24
Equitorial Radius (m) : 6.37814000e6
Polar Radius (m) : 6.35674772e6
Volume Averaged Radius (m) : 6.37100125e6
Flattening : 0.00335400
Eccentricity : 0.08183368
Moment of Inertia, sphere (kg-m^2) : 9.69635972e37
Surface Area (m^2) : 5.10065696e14
Volume (m^3) : 1.08320756e21
Average Density (kg/m^3) : 5513.427
Surface Gravity (m/s^2) : 9.798
Escape Velocity (m/s) : 11186.135
This is what I used to create a JSON file for use in webpages, NoSQL databases, etc.
[
{
"id": 1,
"name": "Mercury",
"orbit": {
"aphelion": 6.98170291e10,
"perihelion": 4.60011367e10,
"semi-major axis": 5.79090829e10,
"semi-minor axis": 5.66715334e10,
"semi-latus rectum": 5.54604310e10,
"linear eccentricity": 1.19079462e10,
"period": 7.60053295e6,
"velocity": {
"max": 58976.48,
"min": 38858.50,
"average": 47362.03
},
"eccentricity": 0.20563175,
"inclination": 7.005,
"direction": "prograde",
"perimeter": 3.59976120e11,
"area": 1.03100679e22,
"angular momentum": 2.71298528e15,
"specific energy": -1.14586895e9,
"focal parameter": 2.69707525e11
},
"radius": {
"equitorial": 2.4397e6,
"polar": 2.4397e6,
"volume averaged": 2.4397e6
},
"gravitational parameter": 2.20320805e13,
"flattening": 0,
"surface area": 7.47967481e13,
"volume": 6.08272087e19,
"mass": 3.30104228e23,
"density": 5426.917,
"equitorial gravity": 3.702,
"escape velocity": 4249.859,
"rotational period": 5.067034e6,
"moment of inertia": 7.85930116e35,
"moment of inertia factor": 0.346,
"axial tilt": 0.034,
"surface temperature": {
"max": 700,
"min": 100,
"average": 340
},
"satellites": 0,
"type": "terrestrial planet",
"has rings": false,
"atmosphere": {
"pressure": 0.5e-9,
"concentration": {
"oxygen": 0.42,
"sodium": 0.29,
"hydrogen": 0.22,
"helium": 0.06,
"potassium": 0.005
}
}
},
{
"id": 2,
"name": "Venus",
"orbit": {
"aphelion": 1.0894138e11,
"perihelion": 1.07475821e11,
"semi-major axis": 1.08208601e11,
"semi-minor axis": 1.0820612e11,
"semi-latus rectum": 1.08203639e11,
"linear eccentricity": 7.32779599e8,
"period": 1.94140522e7,
"velocity": {
"max": 35258.67,
"min": 34784.35,
"average": 35020.35
},
"eccentricity": 0.00677192,
"inclination": 3.39458,
"direction": "retrograde",
"perimeter": 6.79886896e11,
"area": 3.67843832e22,
"angular momentum": 3.78945496e15,
"specific energy": -6.13225007e8,
"focal parameter": 1.59782892e13
},
"radius": {
"equitorial": 6.0518e6,
"polar": 6.0518e6,
"volume averaged": 6.0518e6
},
"gravitational parameter": 3.24848831e14,
"flattening": 0,
"surface area": 4.60234317e14,
"volume": 9.28415346e20,
"mass": 4.8673204e24,
"density": 5242.6,
"equitorial gravity": 8.870,
"escape velocity": 10361.3,
"rotational period": 2.099736e7,
"moment of inertia": 7.13048483e37,
"moment of inertia factor": null,
"axial tilt": 177.36,
"surface temperature": {
"max": null,
"min": null,
"average": 737
},
"satellites": 0,
"type": "terrestrial planet",
"has rings": false,
"atmosphere": {
"pressure": 9.2e6,
"concentration": {
"carbon dioxide": 0.965,
"nitrogen": 0.035
}
}
},
{
"id": 3,
"name": "Earth",
"orbit": {
"aphelion": 1.52097602e11,
"perihelion": 1.47098444e11,
"semi-major axis": 1.49598023e11,
"semi-minor axis": 1.49577139e11,
"semi-latus rectum": 1.49556258e11,
"linear eccentricity": 2.49957864e9,
"period": 3.15581968e7,
"velocity": {
"max": 30286.57,
"min": 29291.10,
"average": 29782.64
},
"eccentricity": 0.01670863,
"inclination": 5e-5,
"direction": "prograde",
"perimeter": 9.39886493e11,
"area": 7.02976731e22,
"angular momentum": 4.45510673e15,
"specific energy": -4.43563482e8,
"focal parameter": 8.95083683e12
},
"radius": {
"equitorial": 6.37814e6,
"polar": 6.35674772e6,
"volume averaged": 6.37100125e6
},
"gravitational parameter": 3.98600436e14,
"flattening": 0.003354,
"surface area": 5.10065696e14,
"volume": 1.08320756e21,
"mass": 5.97218630e24,
"density": 5513.427,
"equitorial gravity": 9.798,
"escape velocity": 11186.135,
"rotational period": 86164.098903691,
"moment of inertia": 9.69635972e37,
"moment of inertia factor": 0.3307,
"axial tilt": 23.4392811,
"surface temperature": {
"max": 330,
"min": 184,
"average": 288
},
"satellites": 1,
"type": "terrestrial planet",
"has rings": false,
"atmosphere": {
"pressure": 1.01325e5,
"concentration": {
"nitrogen": 0.78084,
"oxygen": 0.20946,
"argon": 0.00934,
"carbon dioxide": 0.0004,
"neon": 1.818e-5,
"helium": 5.24e-6,
"methane": 1.79e-6
}
}
},
{
"id": 4,
"name": "Mars",
"orbit": {
"aphelion": 2.49228853e11,
"perihelion": 2.06649518e11,
"semi-major axis": 2.27939185e11,
"semi-minor axis": 2.26942773e11,
"semi-latus rectum": 2.259250716e11,
"linear eccentricity": 2.12896680e10,
"period": 5.93543383e7,
"velocity": {
"max": 26498.93,
"min": 21971.74,
"average": 24076.68
},
"eccentricity": 0.09340065,
"inclination": 1.85,
"direction": "prograde",
"perimeter": 1.42905553e12,
"area": 1.6251192e23,
"angular momentum": 5.4759904e15,
"specific energy": -2.91113702e8,
"focal parameter": 2.41915571e12
},
"radius": {
"equitorial": 3.39619e6,
"polar": 3.37618644e6,
"volume averaged": 3.38950901e6
},
"gravitational parameter": 4.28283752e13,
"flattening": 0.00589,
"surface area": 1.44373055e14,
"volume": 1.63116911e20,
"mass": 6.41692815e23,
"density": 3933.944,
"equitorial gravity": 3.713,
"escape velocity": 5026.965,
"rotational period": 86164.098903691,
"moment of inertia": 2.94890481e36,
"moment of inertia factor": 0.3662,
"axial tilt": 25.19,
"surface temperature": {
"max": 308,
"min": 130,
"average": 210
},
"satellites": 2,
"type": "terrestrial planet",
"has rings": false,
"atmosphere": {
"pressure": 6.36e2,
"concentration": {
"carbon dioxide": 0.9597,
"argon": 0.0193,
"nitrogen": 0.0189,
"oxygen": 0.00146,
"carbon monoxide": 0.000557
}
}
},
{
"id": 5,
"name": "Jupiter",
"orbit": {
"aphelion": 8.16044218e11,
"perihelion": 7.40552506e11,
"semi-major axis": 7.78298362e11,
"semi-minor axis": 7.77382525e11,
"semi-latus rectum": 7.76467766e11,
"linear eccentricity": 3.77458560e10,
"period": 3.74313934e8,
"velocity": {
"max": 13707.608,
"min": 12439.526,
"average": 13056.730
},
"eccentricity": 0.04849793,
"inclination": 1.303,
"direction": "prograde",
"perimeter": 4.88731607e12,
"area": 1.90077523e24,
"angular momentum": 1.01512035e16,
"specific energy": -8.52580749e7,
"focal parameter": 1.60103295e13
},
"radius": {
"equitorial": 7.14920000e7,
"polar": 6.68540280e7,
"volume averaged": 6.99113182e7
},
"gravitational parameter": 1.26712763e17,
"flattening": 0.064874,
"surface area": 6.14689478e16,
"volume": 1.43130135e24,
"mass": 1.89852332e27,
"density": 1326.432,
"equitorial gravity": 24.792,
"escape velocity": 60207.616,
"rotational period": 35650.59,
"moment of inertia": 3.71168328e42,
"moment of inertia factor": 0.254,
"axial tilt": 3.13,
"surface temperature": {
"average": 165
},
"satellites": 79,
"type": "gas giant",
"has rings": false,
"atmosphere": {
"pressure": 7e4,
"concentration": {
"hydrogen": 0.89,
"helium": 0.10,
"methane": 0.003,
"ammonia": 0.00026
}
}
},
{
"id": 6,
"name": "Saturn",
"orbit": {
"aphelion": 1.50879426e12,
"perihelion": 1.34999388e12,
"semi-major axis": 1.42939407e12,
"semi-minor axis": 1.42718710e12,
"semi-latus rectum": 1.42498354e12,
"linear eccentricity": 7.94001856e10,
"period": 9.31944275e8,
"velocity": {
"max": 10186.593,
"min": 9114.455,
"average": 9629.563
},
"eccentricity": 0.05554814,
"inclination": 2.48,
"direction": "prograde",
"perimeter": 8.97421576e12,
"area": 6.40888915e24,
"angular momentum": 1.37518378e16,
"specific energy": -4.64226216e7,
"focal parameter": 2.56531266e13
},
"radius": {
"equitorial": 6.0268e7,
"polar": 5.43640262e7,
"volume averaged": 5.82320024e7
},
"gravitational parameter": 3.79405849e16,
"flattening": 0.097962,
"surface area": 4.26939903e16,
"volume": 8.27130016e23,
"mass": 5.68459592e26,
"density": 687.268,
"equitorial gravity": 10.446,
"escape velocity": 36098.250,
"rotational period": 38366.26,
"moment of inertia": 7.71050882e41,
"moment of inertia factor": 0.210,
"axial tilt": 26.73,
"surface temperature": {
"average": 134
},
"satellites": 62,
"type": "gas giant",
"has rings": true,
"atmosphere": {
"pressure": 1.4e5,
"concentration": {
"hydrogen": 0.963,
"helium": 0.0325,
"methane": 0.0045,
"ammonia": 0.000125
}
}
},
{
"id": 7,
"name": "Uranus",
"orbit": {
"aphelion": 3.00838641e12,
"perihelion": 2.74169080e12,
"semi-major axis": 2.87503861e12,
"semi-minor axis": 2.87194453e12,
"semi-latus rectum": 2.86885377e12,
"linear eccentricity": 1.33347804e11,
"period": 2.65876585e9,
"velocity": {
"max": 7116.911,
"min": 6485.992,
"average": 6790.625
},
"eccentricity": 0.04638122,
"inclination": 0.773,
"direction": "prograde",
"perimeter": 1.80546813e13,
"area": 2.59399779e25,
"angular momentum": 1.95123700e16,
"specific energy": -2.30801144e7,
"focal parameter": 6.18537771e13
},
"radius": {
"equitorial": 2.5559e7,
"polar": 2.49730088e7,
"volume averaged": 2.53621575e7
},
"gravitational parameter": 5.79454901e15,
"flattening": 0.022927,
"surface area": 8.08395599e15,
"volume": 6.83356289e22,
"mass": 8.68190877e25,
"density": 1270.481,
"equitorial gravity": 8.870,
"escape velocity": 21376.260,
"rotational period": 62004.61,
"moment of inertia": 2.23381704e40,
"moment of inertia factor": 0.230,
"axial tilt": 97.77,
"surface temperature": {
"average": 76
},
"satellites": 27,
"type": "ice giant",
"has rings": true,
"atmosphere": {
"pressure": 1.3e5,
"concentration": {
"hydrogen": 0.83,
"helium": 0.15,
"methane": 0.023
}
}
},
{
"id": 8,
"name": "Neptune",
"orbit": {
"aphelion": 4.54704270e12,
"perihelion": 4.46185682e12,
"semi-major axis": 4.50444976e12,
"semi-minor axis": 4.50424838e12,
"semi-latus rectum": 4.50404701e12,
"linear eccentricity": 4.25929373e10,
"period": 5.21405355e9,
"velocity": {
"max": 5479.509,
"min": 5376.854,
"average": 5427.957
},
"eccentricity": 0.00945575,
"inclination": 1.767975,
"direction": "prograde",
"perimeter": 2.83016599e13,
"area": 6.37402777e25,
"angular momentum": 2.44487846e16,
"specific energy": -1.47312599e7,
"focal parameter": 4.76329053e14
},
"radius": {
"equitorial": 2.4764e7,
"polar": 2.43410061e7,
"volume averaged": 2.46221915e7
},
"gravitational parameter": 6.83652702e15,
"flattening": 0.017081,
"surface area": 7.61879440e15,
"volume": 6.25271632e22,
"mass": 1.02430929e26,
"density": 1638.183,
"equitorial gravity": 11.148,
"escape velocity": 23565.107,
"rotational period": 58058.51,
"moment of inertia": 2.48395952e40,
"moment of inertia factor": 0.230,
"axial tilt": 28.32,
"surface temperature": {
"average": 72
},
"satellites": 14,
"type": "ice giant",
"has rings": true,
"atmosphere": {
"pressure": null,
"concentration": {
"hydrogen": 0.80,
"helium": 0.19,
"methane": 0.015
}
}
}
]