The Museum of HP Calculators


The Satellites of Jupiter for the HP-41

This program is by Jean-Marc Baillard and is used here by permission.

This program is supplied without representation or warranty of any kind. Jean-Marc Baillard and The Museum of HP Calculators therefore assume no responsibility and shall have no liability, consequential or otherwise, of any kind arising from the use of this program material or any part thereof.

Overview

-This program calculates the coordinates x and y of the 4 greatest satellites of Jupiter ( Io , Europe , Ganymede , Callisto ), as seen from the Earth.
-The x-axis coincides with the equator of the planet, the y-axis is the planet's rotation axis.
-Jupiter is the origin and x , y are measured in units of Jupiter's equatorial radius. ( the polar radius of Jupiter is 0.933 )

                                     y ( North )
                                      |
                                      |
                                      |
( East ) ----------------JUP------------------ x   ( West )
                                      |
                                      |
                                ( South )
 

Data Registers:    R00 = the number of days since 01/01/2000  0h ET
                                        R01 = x1 ;   R03 = x2 ; R05 = x3 ;  R07 = x4
                                        R02 = y1 ;   R04 = y2 ; R06 = y3 ;  R08 = y4   and  R09 =  - sin DE  where DE is the planetocentric declination of the Earth.
              Satellite 1 = Io  ;   Satellite 2 = Europe  ;  Satellite 3 =  Ganymede  ;  Satellite 4 = Callisto.

Flags:  F01  F02  F03  F04    -Flag nn  is set when the distance Earth-Satellite n  is shorter than the distance Earth-Jupiter:
                                                   -This is useful to distinguish inferior conjunctions from superior conjunctions.

Subroutine:  -none if you have a Time-module
                             - "J0"  otherwise.( cf  for instance "Phases of the Moon for the HP-41" )
 
 

001  LBL "IEGC"
002  DEG
003  HR
004  24
005  /
006  X<>Y
007  1.012               if you don't have a Time-module, replace lines  07 to 09  by  XEQ "J0"   +
008  DDAYS
009  -
010  STO 00
011  .9856
012  *
013  3
014  -
015  STO 01
016  SIN
017  1.92
018  *
019  RCL 01
020  ST+ X
021  SIN
022  50
023  /
024  +
025  RCL 00
026  12.036
027  /
028  RCL 00
029  896
030  /
031  7
032  -
033  SIN
034  3
035  /
036  STO 02
037  ST+ Z
038  -
039  20
040  +
041  STO 03
042  SIN
043  5.56
044  *
045  RCL 03
046  ST+ X
047  SIN
048  6
049  /
050  +
051  STO 09
052  -
053  RCL 00
054  .902518
055  *
056  +
057  65.66
058  +
059  STO 04
060  CLX               if you don't have an X-Functions module, replace lines 60-61 by
061  X<> F            CF 01  CF 02  CF 03  CF 04
062  1
063  RCL 01
064  COS
065  60
066  /
067  -
068  5209
069  RCL 03
070  COS
071  252
072  *
073  -
074  RCL 03
075  ST+ X
076  COS
077  6
078  *
079  -
080   E3
081  /
082  STO 05
083  X^2
084  LASTX
085  R^
086  *
087  ST+ X
088  RCL 04
089  COS
090  *
091  -
092  X<>Y
093  X^2
094  +
095  SQRT
096  STO 07
097  /
098  RCL 04
099  SIN
100  *
101  ASIN
102  STO 08
103  LASTX
104  RCL 00
105  12.035
106  /
107  56.3
108  +
109  RCL 02
110  -
111  RCL 09
112  ST- 08
113  +
114  STO 06
115  COS
116  *
117  2.22
118  *
119  RCL 06
120  20.8
121  +
122  SIN
123  3.12
124  *
125  -
126  RCL 06
127  32.5
128  -
129  COS
130  RCL 05
131  RCL 07
132  ST- Y
133  /
134  *
135  1.3
136  *
137  -
138  SIN
139  STO 09
140  368
141  LN
142  RCL 00
143  RCL 07
144  173
145  /
146  -
147  STO 07
148  101.291633
149  *
150  52.24
151  -
152  RCL 08
153  +
154  STO 03
155  3
156  *
157  RCL 07
158  50.234518
159  *
160  19.4
161  -
162  RCL 08
163  +
164  STO 05
165  ST+ X
166  -
167  180
168  +
169  STO 01
170  RCL 03
171  -
172  ST+ X
173  STO 06
174  COS
175  41
176  /
177  -
178  STO 02
179  RCL 06
180  SIN
181  .47
182  *
183  ST+ 01
184  9.4
185  RCL 03
186  RCL 05
187  -
188  ST+ X
189  STO 06
190  COS
191  5
192  D-R
193  *
194  -
195  STO 04
196  RCL 06
197  SIN
198  2.9
199  LN
200  *
201  ST+ 03
202  859
203  D-R
204  RCL 07
205  50.31048
206  *
207  54
208  -
209  STO 06
210  COS
211  46
212  /
213  -
214  X<> 06
215  SIN
216  6
217  /
218  ST+ 05
219  26.37
220  RCL 07
221  21.48798
222  *
223  214.07
224  +
225  RCL 08
226  +
227  X<> 07
228  21.56923
229  *
230  76.6
231  +
232  STO 08
233  COS
234  11
235  D-R
236  *
237  -
238  RCL 08
239  SIN
240  .84
241  *
242  RCL 07
243  +
244  X<>Y
245  P-R
246  X>0?
247  SF 04
248  RCL 09
249  *
250  STO 08
251  X<>Y
252  STO 07
253  RCL 05
254  RCL 06
255  P-R
256  X>0?
257  SF 03
258  RCL 09
259  *
260  STO 06
261  X<>Y
262  STO 05
263  RCL 03
264  RCL 04
265  P-R
266  X>0?
267  SF 02
268  RCL 09
269  *
270  STO 04
271  X<>Y
272  STO 03
273  RCL 01
274  RCL 02
275  P-R
276  X>0?
277  SF 01
278  RCL 09
279  *
280  STO 02
281  X<>Y
282  STO 01
283  END

( 453 bytes / SIZE 010 )
 
 
 
         STACK         INPUTS        OUTPUTS
              Y           Date              y1
              X        hh.mnss ( ET )              x1

 

Example1:    Find the configuration of the 4 Galilean satellites of Jupiter on 1992 December 16 at 0h UT = 0h00m59s  ET
 

     12.161992  ENTER^         ( if your HP-41 is in MDY format )
       0.0059      XEQ "IEGC"

and 31 seconds later    x1 = -3.45
                     X<>Y    y1 =   0.21       RCL 03  >>>>   x2 = 7.45     RCL 05  >>>>  x3 = 1.24    RCL 07  >>>>  x4 = 7.09
                                                           RCL 04 >>>>   y2 =  0.25    RCL 06  >>>>  y3 = 0.65     RCL 08 >>>>  y4 = 1.10

-Flags F01 F02 F03 F04 are set but it's not particularly useful here!
 

Example2:    Find the configuration of the Galilean satellites of Jupiter on 1984 September 20 at 6h34m  ET
 

     20.091984  ENTER^
       6.34            R/S                 yields    x1 =  0.00
                         X<>Y                          y1 =  0.20        RCL 03  >>>>   x2 = -8.08     RCL 05  >>>>  x3 = 14.97    RCL 07  >>>>  x4 = -4.95
                                                                                     RCL 04 >>>>   y2 =  -0.16    RCL 06  >>>>  y3 =  -0.01    RCL 08  >>>>  y4 = -0.86
 

-Since F01 is set , Io is in transit over Jupiter's disk because its distance to the planet's center is significantly inferior to 1.
 

Notes:

 -If you use "J0" , dates must be keyed in  1992.1216  and  1984.0920
 -The accuracy is of the order of  0.1 ( but x-values are more accurate than y-values )
 -The reference below also provides a high-accuracy method.

Reference:   Jean Meeus  "Astronomical Algorithms"  Willmann-Bell    ISBN 0-943396-35-2

Go back to the HP-41 software library
Go back to the general software library
Go back to the main exhibit hall