Sun position
Sun position algorithm
|
The interpolation process obtains an estimate of the apparent position (or alternatively, the celestial intermediate position) of a celestial object by interpolating between previously calculated position vectors. The amount of error introduced by this process depends of course on how much the position changed between the two previously calculated times. Here is a table of the errors when this process is used to obtain the position of the Sun, Moon, planets and a star. The errors are calculated from sqrt((azimuth_error * cos(elevation))^2 + elevation_error^2)
The interpolation interval (in hours) is the time between the two previously fully calculated vectors. This value (multiplied by 60) is supplied to parameter fullRecalcInterval_mins of function skyfast_init().
hours | 1 | 2 | 3 | 6 | 9 | 12 | 15 | 18 | 24 |
---|---|---|---|---|---|---|---|---|---|
Sun | 0.0005 | 0.0020 | 0.0046 | 0.0184 | 0.0413 | 0.0736 | 0.1151 | 0.1658 | 0.2957 |
- | |||||||||
Moon | 0.3381 | 1.3536 | 3.0455 | 12.07 | 27.62 | 49.55 | 77.74 | 112.1 | 185.4 |
- | |||||||||
Mercury | 0.1533 | 0.6132 | 1.3797 | 5.5177 | 12.42 | 22.07 | 34.44 | 49.64 | 88.17 |
Venus | 0.0324 | 0.1295 | 0.2914 | 1.1656 | 3.2375 | 4.6621 | 7.2847 | 10.49 | 18.64 |
Mars | 0.0115 | 0.0459 | 0.1032 | 0.4127 | 0.9287 | 1.6510 | 2.5796 | 3.7146 | 6.6035 |
Jupiter | 0.0025 | 0.0101 | 0.0227 | 0.0907 | 0.2040 | 0.3627 | 0.5667 | 0.8161 | 1.4508 |
Saturn | 0.0013 | 0.0052 | 0.0117 | 0.0468 | 0.1054 | 0.1874 | 0.2927 | 0.4216 | 0.7494 |
Uranus | 0.0007 | 0.0027 | 0.0062 | 0.0247 | 0.0556 | 0.0988 | 0.1544 | 0.2223 | 0.3951 |
Neptune | 0.0005 | 0.0018 | 0.0041 | 0.0163 | 0.0366 | 0.0651 | 0.1017 | 0.1465 | 0.2604 |
- | |||||||||
Antares | <0.0001 | <0.0001 | <0.0001 | 0.0001 | 0.0003 | 0.0005 | 0.0007 | 0.0010 | 0.0019 |
As can be seen, the errors are very small for the Sun even with 24 hours between full calculations (i.e. a value of 1440 minutes supplied to parameter fullRecalcInterval_mins of function skyfast_init()). Actually a full twenty-four hours of tracking of the Sun can be obtained by supplying 720 minutes to this parameter, without ever having to call the function skyfast_backgroundUpdate(). This is because skyfast_init() calculates three apparent positions, not just two.
Errors for the Moon are larger. The position algorithm itself is accurate to about 5 arcseconds, it seems, so this suggests that an interpolation interval of no more than about 2 hours should be used for the Moon.
The maximum errors tracking planets are larger than for the Sun. These maximum errors seem to occur around the time the planet enters or leaves apparent retrograde motion.
The errors when tracking a star are almost negligible.
In all cases, the error appears to approximately quadruple for every doubling of the interpolation interval.