1 /* Copyright 2002-2025 CS GROUP
2 * Licensed to CS GROUP (CS) under one or more
3 * contributor license agreements. See the NOTICE file distributed with
4 * this work for additional information regarding copyright ownership.
5 * CS licenses this file to You under the Apache License, Version 2.0
6 * (the "License"); you may not use this file except in compliance with
7 * the License. You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17 package org.orekit.utils;
18
19 import org.hipparchus.util.MathUtils;
20
21 /** Set of useful physical constants.
22
23 * @author Luc Maisonobe
24 * @author Guylaine Prat
25 */
26 public interface Constants {
27
28
29 /** Speed of light: 299792458.0 m/s. */
30 double SPEED_OF_LIGHT = 299792458.0;
31
32 /** Astronomical unit as a conventional unit of length since IAU 2012 resolution B2: 149597870700.0 m.
33 * @see <a href="http://www.iau.org/static/resolutions/IAU2012_English.pdf">IAU 2012 resolutions</a>
34 */
35 double IAU_2012_ASTRONOMICAL_UNIT = 149597870700.0;
36
37 /** Solar radius as defined by IAU 2015 resolution B3: 695700000.0 m.
38 * @see <a href="https://www.iau.org/static/resolutions/IAU2015_English.pdf">IAU 2015 resolutions</a>
39 */
40 double IAU_2015_NOMINAL_SOLAR_RADIUS = 695700000.0;
41
42 /** Sun attraction coefficient as defined by IAU 2015 resolution B3: 1.3271244e20 (m³/s²). */
43 double IAU_2015_NOMINAL_SUN_GM = 1.3271244e20;
44
45 /** Earth equatorial radius as defined by IAU 2015 resolution B3: 6.3781e6 (m). */
46 double IAU_2015_NOMINAL_EARTH_EQUATORIAL_RADIUS = 6.3781e6;
47
48 /** Earth polar radius as defined by IAU 2015 resolution B3: 6.3568e6 (m). */
49 double IAU_2015_NOMINAL_EARTH_POLAR_RADIUS = 6.3568e6;
50
51 /** Earth attraction coefficient as defined by IAU 2015 resolution B3: 3.986004e14 (m³/s²). */
52 double IAU_2015_NOMINAL_EARTH_GM = 3.986004e14;
53
54 /** Jupiter equatorial radius as defined by IAU 2015 resolution B3: 7.1492e7 (m). */
55 double IAU_2015_NOMINAL_JUPITER_EQUATORIAL_RADIUS = 7.1492e7;
56
57 /** Jupiter polar radius as defined by IAU 2015 resolution B3: 6.6854e7 (m). */
58 double IAU_2015_NOMINAL_JUPITER_POLAR_RADIUS = 6.6854e7;
59
60 /** Jupiter attraction coefficient as defined by IAU 2015 resolution B3: 1.2668653e17 (m³/s²). */
61 double IAU_2015_NOMINAL_JUPITER_GM = 1.2668653e17;
62
63 /** Duration of a mean solar day: 86400.0 s. */
64 double JULIAN_DAY = 86400.0;
65
66 /** Duration of a Julian year: 365.25 {@link #JULIAN_DAY}. */
67 double JULIAN_YEAR = 31557600.0;
68
69 /** Duration of a Julian century: 36525 {@link #JULIAN_DAY}. */
70 double JULIAN_CENTURY = 36525 * JULIAN_DAY;
71
72
73 /** Duration of a Besselian year: 365.242198781 {@link #JULIAN_DAY}. */
74 double BESSELIAN_YEAR = 365.242198781 * JULIAN_DAY;
75
76
77 /** Conversion factor from arc seconds to radians: 2*PI/(360*60*60). */
78 double ARC_SECONDS_TO_RADIANS = MathUtils.TWO_PI / 1296000;
79
80
81 /** Standard gravity constant, used in maneuvers definition: 9.80665 m/s². */
82 double G0_STANDARD_GRAVITY = 9.80665;
83
84
85 /** Sun radius: 695700000 m (source: resolution B3 from IAU 2015). */
86 double SUN_RADIUS = 6.957e8;
87
88 /** Moon equatorial radius: 1737400 m. */
89 double MOON_EQUATORIAL_RADIUS = 1737400.0;
90
91
92 /** Earth equatorial radius from WGS84 model: 6378137.0 m. */
93 double WGS84_EARTH_EQUATORIAL_RADIUS = 6378137.0;
94
95 /** Earth flattening from WGS84 model: 1.0 / 298.257223563. */
96 double WGS84_EARTH_FLATTENING = 1.0 / 298.257223563;
97
98 /** Earth angular velocity from WGS84 model: 7.292115e-5 rad/s. */
99 double WGS84_EARTH_ANGULAR_VELOCITY = 7.292115e-5;
100
101 /** Earth gravitational constant from WGS84 model: 3.986004418e14 m³/s². */
102 double WGS84_EARTH_MU = 3.986004418e14;
103
104 /** Earth un-normalized second zonal coefficient from WGS84 model: . */
105 double WGS84_EARTH_C20 = -1.08262668355315e-3;
106
107
108 /** Earth equatorial radius from GRS80 model: 6378137.0 m. */
109 double GRS80_EARTH_EQUATORIAL_RADIUS = 6378137.0;
110
111 /** Earth flattening from GRS80 model: 1.0 / 298.257222101. */
112 double GRS80_EARTH_FLATTENING = 1.0 / 298.257222101;
113
114 /** Earth angular velocity from GRS80 model: 7.292115e-5 rad/s. */
115 double GRS80_EARTH_ANGULAR_VELOCITY = 7.292115e-5;
116
117 /** Earth gravitational constant from GRS80 model: 3.986005e14 m³/s². */
118 double GRS80_EARTH_MU = 3.986005e14;
119
120 /** Earth un-normalized second zonal coefficient from GRS80 model: -1.08263e-3. */
121 double GRS80_EARTH_C20 = -1.08263e-3;
122
123
124 /** Earth equatorial radius from EGM96 model: 6378136.3 m. */
125 double EGM96_EARTH_EQUATORIAL_RADIUS = 6378136.3;
126
127 /** Earth gravitational constant from EGM96 model: 3.986004415e14 m³/s². */
128 double EGM96_EARTH_MU = 3.986004415e14;
129
130 /** Earth un-normalized second zonal coefficient from EGM96 model: -1.08262668355315e-3. */
131 double EGM96_EARTH_C20 = -1.08262668355315e-3;
132
133 /** Earth un-normalized third zonal coefficient from EGM96 model: 2.53265648533224e-6. */
134 double EGM96_EARTH_C30 = 2.53265648533224e-6;
135
136 /** Earth un-normalized fourth zonal coefficient from EGM96 model: 1.619621591367e-6. */
137 double EGM96_EARTH_C40 = 1.619621591367e-6;
138
139 /** Earth un-normalized fifth zonal coefficient from EGM96 model: 2.27296082868698e-7. */
140 double EGM96_EARTH_C50 = 2.27296082868698e-7;
141
142 /** Earth un-normalized sixth zonal coefficient from EGM96 model: -5.40681239107085e-7. */
143 double EGM96_EARTH_C60 = -5.40681239107085e-7;
144
145
146 /** Earth equatorial radius from GRIM5C1 model: 6378136.46 m. */
147 double GRIM5C1_EARTH_EQUATORIAL_RADIUS = 6378136.46;
148
149 /** Earth flattening from GRIM5C1 model: 1.0 / 298.25765. */
150 double GRIM5C1_EARTH_FLATTENING = 1.0 / 298.25765;
151
152 /** Earth angular velocity from GRIM5C1 model: 7.292115e-5 rad/s. */
153 double GRIM5C1_EARTH_ANGULAR_VELOCITY = 7.292115e-5;
154
155 /** Earth gravitational constant from GRIM5C1 model: 3.986004415e14 m³/s². */
156 double GRIM5C1_EARTH_MU = 3.986004415e14;
157
158 /** Earth un-normalized second zonal coefficient from GRIM5C1 model: -1.082626110612609e-3. */
159 double GRIM5C1_EARTH_C20 = -1.082626110612609e-3;
160
161 /** Earth un-normalized third zonal coefficient from GRIM5C1 model: 2.536150841690056e-6. */
162 double GRIM5C1_EARTH_C30 = 2.536150841690056e-6;
163
164 /** Earth un-normalized fourth zonal coefficient from GRIM5C1 model: 1.61936352497151e-6. */
165 double GRIM5C1_EARTH_C40 = 1.61936352497151e-6;
166
167 /** Earth un-normalized fifth zonal coefficient from GRIM5C1 model: 2.231013736607540e-7. */
168 double GRIM5C1_EARTH_C50 = 2.231013736607540e-7;
169
170 /** Earth un-normalized sixth zonal coefficient from GRIM5C1 model: -5.402895357302363e-7. */
171 double GRIM5C1_EARTH_C60 = -5.402895357302363e-7;
172
173
174 /** Earth equatorial radius from EIGEN5C model: 6378136.46 m. */
175 double EIGEN5C_EARTH_EQUATORIAL_RADIUS = 6378136.46;
176
177 /** Earth gravitational constant from EIGEN5C model: 3.986004415e14 m³/s². */
178 double EIGEN5C_EARTH_MU = 3.986004415e14;
179
180 /** Earth un-normalized second zonal coefficient from EIGEN5C model: -1.082626457231767e-3. */
181 double EIGEN5C_EARTH_C20 = -1.082626457231767e-3;
182
183 /** Earth un-normalized third zonal coefficient from EIGEN5C model: 2.532547231862799e-6. */
184 double EIGEN5C_EARTH_C30 = 2.532547231862799e-6;
185
186 /** Earth un-normalized fourth zonal coefficient from EIGEN5C model: 1.619964434136e-6. */
187 double EIGEN5C_EARTH_C40 = 1.619964434136e-6;
188
189 /** Earth un-normalized fifth zonal coefficient from EIGEN5C model: 2.277928487005437e-7. */
190 double EIGEN5C_EARTH_C50 = 2.277928487005437e-7;
191
192 /** Earth un-normalized sixth zonal coefficient from EIGEN5C model: -5.406653715879098e-7. */
193 double EIGEN5C_EARTH_C60 = -5.406653715879098e-7;
194
195 /** Earth equatorial radius from IERS96 model: 6378136.49 m. */
196 double IERS96_EARTH_EQUATORIAL_RADIUS = 6378136.49;
197
198 /** Earth flattening from IERS96 model: 1.0 / 298.25642. */
199 double IERS96_EARTH_FLATTENING = 1.0 / 298.25642;
200
201 /** Earth angular velocity from IERS96 model: 7.292115e-5 rad/s. */
202 double IERS96_EARTH_ANGULAR_VELOCITY = 7.292115e-5;
203
204 /** Earth gravitational constant from IERS96 model: 3.986004418e14 m³/s². */
205 double IERS96_EARTH_MU = 3.986004418e14;
206
207 /** Earth un-normalized second zonal coefficient from IERS96 model: -1.0826359e-3. */
208 double IERS96_EARTH_C20 = -1.0826359e-3;
209
210 /** Earth equatorial radius from IERS2003 model: 6378136.6 m. */
211 double IERS2003_EARTH_EQUATORIAL_RADIUS = 6378136.6;
212
213 /** Earth flattening from IERS2003 model: 1.0 / 298.25642. */
214 double IERS2003_EARTH_FLATTENING = 1.0 / 298.25642;
215
216 /** Earth angular velocity from IERS2003 model: 7.292115e-5 rad/s. */
217 double IERS2003_EARTH_ANGULAR_VELOCITY = 7.292115e-5;
218
219 /** Earth gravitational constant from IERS2003 model: 3.986004418e14 m³/s². */
220 double IERS2003_EARTH_MU = 3.986004418e14;
221
222 /** Earth un-normalized second zonal coefficient from IERS2003 model: -1.0826359e-3. */
223 double IERS2003_EARTH_C20 = -1.0826359e-3;
224
225 /** Earth equatorial radius from IERS2010 model: 6378136.6 m. */
226 double IERS2010_EARTH_EQUATORIAL_RADIUS = 6378136.6;
227
228 /** Earth flattening from IERS2010 model: 1.0 / 298.25642. */
229 double IERS2010_EARTH_FLATTENING = 1.0 / 298.25642;
230
231 /** Earth angular velocity from IERS2010 model: 7.292115e-5 rad/s. */
232 double IERS2010_EARTH_ANGULAR_VELOCITY = 7.292115e-5;
233
234 /** Earth gravitational constant from IERS2010 model: 3.986004418e14 m³/s². */
235 double IERS2010_EARTH_MU = 3.986004418e14;
236
237 /** Earth un-normalized second zonal coefficient from IERS2010 model: -1.0826359e-3. */
238 double IERS2010_EARTH_C20 = -1.0826359e-3;
239
240 /** Gaussian gravitational constant: 0.01720209895 √(AU³/d²). */
241 double JPL_SSD_GAUSSIAN_GRAVITATIONAL_CONSTANT = 0.01720209895;
242
243 /** Astronomical Unit: 149597870691 m. */
244 double JPL_SSD_ASTRONOMICAL_UNIT = 149597870691.0;
245
246 /** Sun attraction coefficient (m³/s²). */
247 double JPL_SSD_SUN_GM = JPL_SSD_GAUSSIAN_GRAVITATIONAL_CONSTANT * JPL_SSD_GAUSSIAN_GRAVITATIONAL_CONSTANT *
248 JPL_SSD_ASTRONOMICAL_UNIT * JPL_SSD_ASTRONOMICAL_UNIT * JPL_SSD_ASTRONOMICAL_UNIT /
249 (JULIAN_DAY * JULIAN_DAY);
250
251 /** Sun/Mercury mass ratio: 6023600. */
252 double JPL_SSD_SUN_MERCURY_MASS_RATIO = 6023600;
253
254 /** Sun/Mercury attraction coefficient (m³/s²). */
255 double JPL_SSD_MERCURY_GM = JPL_SSD_SUN_GM / JPL_SSD_SUN_MERCURY_MASS_RATIO;
256
257 /** Sun/Venus mass ratio: 408523.71. */
258 double JPL_SSD_SUN_VENUS_MASS_RATIO = 408523.71;
259
260 /** Sun/Venus attraction coefficient (m³/s²). */
261 double JPL_SSD_VENUS_GM = JPL_SSD_SUN_GM / JPL_SSD_SUN_VENUS_MASS_RATIO;
262
263 /** Sun/(Earth + Moon) mass ratio: 328900.56. */
264 double JPL_SSD_SUN_EARTH_PLUS_MOON_MASS_RATIO = 328900.56;
265
266 /** Sun/(Earth + Moon) attraction coefficient (m³/s²). */
267 double JPL_SSD_EARTH_PLUS_MOON_GM = JPL_SSD_SUN_GM / JPL_SSD_SUN_EARTH_PLUS_MOON_MASS_RATIO;
268
269 /** Earth/Moon mass ratio: 81.30059. */
270 double JPL_SSD_EARTH_MOON_MASS_RATIO = 81.300596;
271
272 /** Moon attraction coefficient (m³/s²). */
273 double JPL_SSD_MOON_GM = JPL_SSD_EARTH_PLUS_MOON_GM / (1.0 + JPL_SSD_EARTH_MOON_MASS_RATIO);
274
275 /** Earth attraction coefficient (m³/s²). */
276 double JPL_SSD_EARTH_GM = JPL_SSD_MOON_GM * JPL_SSD_EARTH_MOON_MASS_RATIO;
277
278 /** Sun/(Mars system) mass ratio: 3098708.0. */
279 double JPL_SSD_SUN_MARS_SYSTEM_MASS_RATIO = 3098708.0;
280
281 /** Sun/(Mars system) attraction coefficient (m³/s²). */
282 double JPL_SSD_MARS_SYSTEM_GM = JPL_SSD_SUN_GM / JPL_SSD_SUN_MARS_SYSTEM_MASS_RATIO;
283
284 /** Sun/(Jupiter system) mass ratio: 1047.3486. */
285 double JPL_SSD_SUN_JUPITER_SYSTEM_MASS_RATIO = 1047.3486;
286
287 /** Sun/(Jupiter system) ttraction coefficient (m³/s²). */
288 double JPL_SSD_JUPITER_SYSTEM_GM = JPL_SSD_SUN_GM / JPL_SSD_SUN_JUPITER_SYSTEM_MASS_RATIO;
289
290 /** Sun/(Saturn system) mass ratio: 3497.898. */
291 double JPL_SSD_SUN_SATURN_SYSTEM_MASS_RATIO = 3497.898;
292
293 /** Sun/(Saturn system) attraction coefficient (m³/s²). */
294 double JPL_SSD_SATURN_SYSTEM_GM = JPL_SSD_SUN_GM / JPL_SSD_SUN_SATURN_SYSTEM_MASS_RATIO;
295
296 /** Sun/(Uranus system) mass ratio: 22902.98. */
297 double JPL_SSD_SUN_URANUS_SYSTEM_MASS_RATIO = 22902.98;
298
299 /** Sun/(Uranus system) attraction coefficient (m³/s²). */
300 double JPL_SSD_URANUS_SYSTEM_GM = JPL_SSD_SUN_GM / JPL_SSD_SUN_URANUS_SYSTEM_MASS_RATIO;
301
302 /** Sun/(Neptune system) mass ratio: 19412.24. */
303 double JPL_SSD_SUN_NEPTUNE_SYSTEM_MASS_RATIO = 19412.24;
304
305 /** Sun/(Neptune system) attraction coefficient (m³/s²). */
306 double JPL_SSD_NEPTUNE_SYSTEM_GM = JPL_SSD_SUN_GM / JPL_SSD_SUN_NEPTUNE_SYSTEM_MASS_RATIO;
307
308 /** Sun/(Pluto system) mass ratio: 1.35e8. */
309 double JPL_SSD_SUN_PLUTO_SYSTEM_MASS_RATIO = 1.35e8;
310
311 /** Sun/(Pluto system) ttraction coefficient (m³/s²). */
312 double JPL_SSD_PLUTO_SYSTEM_GM = JPL_SSD_SUN_GM / JPL_SSD_SUN_PLUTO_SYSTEM_MASS_RATIO;
313
314 }