Chapter 6 – The Planets (Solar System Trek)Posted: March 29, 2013
Solar System Trek, view the solar system from the skies of any planet on any date
Planetary Ephemeris, trace the planets in the sky for any date
The Moons of Mars, animated presentation of Mars and its moons
Jupiter’s Satellites, identify and name the positions of Jupiter’s four moons on any date
The Rings of Saturn, simulation of Saturn and its rings
Saturn’s Rings, brief outline only
Saturn Draw, a Computer Aided Design
Planets through a Telescope, relative sizes of the planets
Globe-pixel, plots a globe divided at 10° intervals of latitude and longitude
Globe Projection, as before, using lines.
From antiquity, man recognised five planets or wanderers in the sky — Mercury, Venus, Mars, Jupiter and Saturn. Each was endowed with some feature in human nature which was admired or feared — such as naming the red planet, Mars, after the god of war. On a more practical level, men probably suspected that these were also worlds like their own, but too far away to see clearly. In 1609 Galileo, using his telescope (the first time this instrument had been used in astronomy), confirmed that this was so. Today colour TV cameras sit on the surface of Mars directly controlled by a computer joystick held 100 million miles away on planet Earth. Such is the pace of science.
Although we now know that the planetary environments are more hostile to the human frame than our forebears could have ever imagined, the planets continue to be fascinating objects in the Sun’s family.
The programs that follow combine a variety of interests from simulating a scene on the Martian surface to computing the precise positions in our sky where the planets can be found; from using the Spectrum in Computer Aided Design (CAD) to judging the planetary images seen through a small telescope.
Solar System Trek
Fancy a trip to other worlds via your computer? This program lets you do just that and enables you to ‘view’ the solar system as seen from the skies of any planet (including Earth), on any date. You can even beat the mythical Icarus by viewing the planets from the surface of the Sun or perhaps from Jupiter during a spacecraft’s fly-by.
The program contains all the necessary data to compute the various planetary positions (‘ecliptic longitude’), the constellation in which each planet appears and the angular separation from the Sun (‘solar elongation’). This is displayed in both table and graphic form — the latter as a 360° panoramic strip of sky centred on the Sun.
The computation and display take only a few seconds and are deliberately slowed down to make the information easier to assimilate. Good use is made of the Spectrum’s colour and graphics and an option to COPY the screen via the ZX printer is included.
The display — Mercury to Neptune
The initial display lists the planets and DRAWs the orbits to two scales — one for the Earth-like ‘rock planets’, Mercury to Mars, and one for the remote ‘giant gas planets’, Jupiter to Neptune. Despite the program’s simplicity, it is sufficiently accurate for you to identify the planets as seen from your back garden, assuming your ‘viewpoint’ is Earth and you have chosen a day with a clear evening. A star-atlas like Norton will be useful in finding the constellations.
The exceptions to this are the remote planets Uranus, Neptune and Pluto which are all too faint to be seen without a telescope and, even then, are indistinguishable from stars. Pluto is excluded from the program because its orbit is highly elliptical and inclined 17° to the general plane of the planets called the ecliptic. Circular orbits of zero inclination are therefore assumed — Mercury and Mars prove to be the least accurate but are only so over long periods of time.
The result from a program of this type is called an ‘ephemeris’ and it may be of interest to discuss the principles behind such work.
A plan of the solar system could be likened to a giant clock with eight hands of varying length — the outer tip of each hand representing a major planet. Each hand will sweep-out approximately the same area (shown shaded in Figures 5.4 and 5.5 in the previous chapter) in the same time interval. Thus the further a planet is from the Sun, the slower it moves and the longer it takes to complete an orbit.
If you know the position of the planets on an epoch or reference date, you only need to wind the hands backwards or forwards to locate the planets on any other date — past, present or future. If your viewpoint is the Sun, each planet will appear projected on to the background constellations, ie signs of the Zodiac, equal to the planet’s heliocentric (suncentred) longitude. If your viewpoint is a planet, then the computer performs the necessary triangulation to deduce the revised positions. Use the sample screen displays in Figure 6.1 to check your results.
The REM statements show the general structure of the program with the DATA held from Line 1000. This program was originally designed for a ZX81 and I still have a liking for slicing string arrays for data! Be sure to double-check that these arrays are correctly entered — the smallest error will produce wrong results.
In the graphic displays, a ‘*’ symbolises the Sun and ‘h’ (for Hermes — the classical Greek name) stands for Mercury, to avoid confusion with ‘m’ for Mars. The ecliptic longitude (eel. long) gives the planet’s angular distance from the First Point of Aries, ie 0° (measured eastwards from 0° to 360°) and the solar elongation (elong) gives the angular distance from the Sun, ie 0°. A minus figure indicates that the planet is to the right of the Sun.
Check your program against these results.
Lines 420 and 440 separate the planets into two groups — those nearer to the Sun (inner planets) and those further from the Sun (outer planets) from the chosen viewpoint — and computes their positions accordingly. Under test it will be noted that, as seen from Earth, the inner planets Mercury and Venus never stray far from the Sun whilst all the outer planets can be found anywhere along the ecliptic. Conversely, from Neptune all the planets become inner planets with Mercury to Mars never more than a fraction of a degree from the Sun — virtually undetectable to a Neptunian!
10 REM Solar System Trek
20 BRIGHT 1: GO SUB 1000
40 LET l=1: CLS : BORDER RND*3
50 PRINT PAPER 5;”Solar System Trek “;CHR$ 127;” ”
60 PRINT AT 14,10;”mve m j su n”;AT 15,9;”*”;AT 15,21;”*”
70 PRINT AT 19,0; PAPER 4;” rock planets “; PAPER 5;” giant gas planets”
80 LET a=0: LET ax=23
90 FOR n=1 TO 9: BEEP .1,9: IF n=6 THEN PAUSE 50: GO SUB 800: PAUSE 50: LET a=96: LET ax=20/17
100 CIRCLE 75+a,51,a(n)*ax
110 PRINT AT n,0; PAPER 6-(2 AND n>1)+(1 AND n>5);y$(n): NEXT n
120 GO SUB 790
140 INPUT “Enter planet no”,k: IF k9 THEN GO TO 140
150 BORDER k/2: LET j=k
160 PRINT PAPER 1;AT 10,0;b$
170 PRINT AT 11,0; PAPER 0; INK 7;” zodiac constellations ”
180 PLOT 0,40: DRAW INK 4;255,0
200 INPUT “Date (yyyy,mm,dd)”;TAB 6;y;TAB 11;m;TAB 14;d: IF y12 OR d>31 THEN GO TO 200
210 LET k$=o$(m*3-2 TO m*3)
220 PRINT AT k,9; FLASH 1;””; FLASH 0; PAPER 6-(2 AND k>1)+(1 AND k>5); INK 9;y;” “+k$;” “;d;” “+(” ” AND d2 THEN LET b=(m+1)*30.6-62-l: GO TO 280
270 LET b=(m-1)*(63-l)/2
280 LET dy=INT (b+d)
290 LET ed=INT ((y-ep)*u+dy+.5)
310 LET pp=c*(ed/t(j))+l(j)
320 LET qe=(pp/e-INT (pp/e))*e
340 FOR n=1 TO 9: IF n=9 AND n=j THEN GO TO 710
350 IF n=j THEN NEXT n
360 LET p=c*(ed/t(n))+l(n)
370 LET q=(p/e-INT (p/e))*e
380 IF j=1 THEN GO TO 440
400 IF a(n)<a> a(j) THEN LET el=q+r*ATN (SIN ((q-qe)/r))/(a(n)-COS ((q-qe)/r))
430 GO TO 450
440 LET el=q
450 IF ele THEN LET el=el-e
470 IF el>e OR el180 THEN LET b=b-e
540 IF b=e THEN LET el=el-e
560 LET v=1+INT (el/30)
570 PRINT AT n,0;y$(n);
580 PRINT TAB 10;(” ” AND el<9);(” ” AND el-100);(” ” AND b>=0 AND b=10 AND b<100);b
610 GO TO (n=1)*620+(n1)*650
620 LET w=30-sun/12: IF w>=0 THEN LET w=w+1
630 LET r$=m$(w TO )+m$( TO w)
640 PRINT INK 7; PAPER 2;AT 13,0;r$;AT 20,0;r$
650 LET z=0: LET nn=n/2
660 IF nn=INT nn THEN LET z=3
670 PRINT INK 7; PAPER 1;AT 15+z,b/12-16;z$(n)
690 INK 9: PLOT INT (132-b/1.5),44-n: DRAW 1,1: DRAW 0,-1
700 BEEP .02,n*3: NEXT n
720 IF j=1 THEN PLOT 130,38: DRAW INK 6;4,4: GO TO 740
730 PLOT 132,32: DRAW INK 6;0,15
740 GO SUB 790
750 PRINT #0;”Press z to copy, c to continue”: PAUSE 0
760 IF INKEY$=”z” THEN COPY : INPUT “”: GO TO 750
770 GO TO 40
790 FOR n=175 TO 90 STEP -8: PLOT 0,n: DRAW 255,0: NEXT n: RETURN
800 CIRCLE 171,51,2: PLOT 171,53: DRAW -90,33: PLOT 171,49: DRAW -90,-33: RETURN
1010 DIM a(9): DIM l(9): DIM t(9): DIM y$(9,9): DIM b$(32*10)
1020 LET u=365.2654
1030 LET ep=1975: LET e=360
1040 LET r=180/PI: LET rr=e/PI
1050 LET c=e/u
1060 LET f=1e3: LET g=1e4
1070 LET o$=”JanFebMarAprMayJunJulAugSepOctNovDec”
1080 LET z$=”*hvemjsun”
1090 LET m$=” Le CnGe TaAr PiAq CpSa ScLi Vr”
1100 LET l$=”000000320663310975099534249629355214104173205783249915″
1110 LET t$=”.00001.24085.615211.00001.880911.86229.45884.012164.79″
1120 LET a$=”000001003871007233010000015237052028095388191818300579″
1130 LET p$=”1-Sun * 2-Mercury2-Venus 4-Earth 5-Mars 6-Jupiter7-Saturn 8-Uranus 9-Neptune”
1140 LET c$=”Psc Ari Tau Gem Cnc Leo Vir Lib Sco Sgr Cap Aqr ”
1150 FOR n=1 TO 9: LET x=n*6
1160 LET a(n)=VAL a$(x-5 TO x)/g
1170 LET l(n)=VAL l$(x-5 TO x)/f
1180 LET t(n)=VAL t$(x-5 TO x)
1190 LET y$(n)=p$(n*9-8 TO n*9)
1200 NEXT n: RETURN