# NavList:

## A Community Devoted to the Preservation and Practice of Celestial Navigation and Other Methods of Traditional Wayfinding

**Re: Astronomical Refraction: Computational Method for All Zenith Angles**

**From:**Frank Reed CT

**Date:**2005 Aug 21, 01:32 EDT

Marcel, you wrote (regarding splitting the integration into two parts): "Does this not apply for the transition from troposphere to stratosphere?" No, if you use the analytical atmosphere model in the Auer-Standish article (or any other physically resonable model), the integration is not split up. Instead, the "getmu" function (for getting the index of refraction at any altitude) will have a condition in it: if height<11 km, do troposphere calculation, else do stratosphere calculation. This gets called at each step in the integration. Today, I coded up a much better way of dealing with all of this atmospheric structure. I generate a density table directly from the temperature profile of the atmosphere (this is the principal independent variable) and the condition of hydrostatic equilibrium and the ideal gas law which is how atmosphere models are derived usually. While these equations can be integrated analytically in important special cases you then have to do a lot of work patching together the pieces. But if you do the integration numerically from the ground up, it's trivial to modify the temperature profile, generate new atmosphere data, and then re-run the refraction tables. Here's the key code for this: >>>>> 'some constans and initialization follows. Should be 'mostly self-explanatory. ht = 0 REarth = 6378000 dh = 5 Rgas = 287.053 g0 = 9.80655 press = 101325 Temp0 = 273.15 Temp = Temp0 'Build the atmosphere from the ground up... DO 'LRate is the "lapse rate" -the rate of change in temperature with altitude. 'in this instance I have a temperature inversion up to 200m and then 'the usual decline rate of 6.5 deg C up to the tropopause at the standard '11km altitude. The inversion should be deleted for comparison with 'normal refraction tables: IF ht < 200 THEN LRate = 10 ELSE LRate = -6.5 IF ht > 11000 THEN LRate = 0 'At each step update the temperature in accordance with the current 'lapse rate: Temp = Temp + (LRate / 1000) * dh 'ideal gas law gives density (rho) from pressure and temperature: rho = press / (Rgas * Temp) 'do something with the calculated atmosphere: SaveResults 'use hydrostatic equilibrium to get to the next step: dp = -rho * g0 * dh / (1 + ht / REarth) ^ 2 'increment the pressure and the height: press = press + dp ht = ht + dh LOOP UNTIL ht > 80000 'nothing much left above 80km altitude <<<< And that's it. This model can then be used as input to the refraction integration. Using a lapse rate of 5.70 deg C per kilometer below 11km altitude and a rate of zero above that altitude, I was able to replicate almost exactly the refraction tables in the Auer-Standish article. The differences were mostly less than one-tenth of a second of arc. This specific lapse rate, 5.70, is apparently connected with the choice of an integral polytropic index. It's "non-physical". There seems to be general agreement among the atmosphere experts that 6.5 is a better average lapse rate in the lower atmosphere. That's what I used in most of my runs. Switching to the standard conditions of the Nautical Almanac, I find that I can reproduce the (pre-2004) refraction table exactly down to 3 degrees altitude using a 6.5 lapse rate. Below three degrees there were small increasing differences. The N.A. tables give 18.3, 24.3, and 34.5 minutes refraction at altitudes of 2, 1, and 0 degrees, while the model I am using gives 18.4, 24.5, and 34.8 minutes of refraction. I don't know whether these are important or not. The real fun starts when we try out changes in the temperature profile. It is interesting to note that the location of the tropopause makes little difference in the refraction. Dropping the tropopause from 11km (typical of mid-latitude) to 8km (typical of high latitudes) changes the refraction at the horizon by only 3 arcseconds and less than a tenth of an arcsecond at altitudes above ten degrees. Similar results follow even if the observer is up at 2000m. If we leave the tropopause height alone and vary the lapse rate in the troposphere, the changes are much larger but still limited to the lowest angular altitudes. Temperature inversions have a fairly dramatic effect on the refraction, but, again, only very close to the horizon. I tried out a temperature increase of 2 deg C in the first kilometer of the atmosphere and then the usual 6.5 decline per kilometer after that (up to the tropopause) and the results were impressive. Above 10 degrees altitude, there was no difference larger than an arcsecond from the refraction in the standard atmosphere. At 3 degrees altitude, the difference was only 2 arcseconds. But at altitudes of one and zero degrees, the differences were 36 and 195 arcseconds respectively. Plenty big enough to distort the setting Sun... By the way, Marcel, thanks for raising this issue. It's led me to all sorts of interesting things. -FER 42.0N 87.7W, or 41.4N 72.1W. www.HistoricalAtlas.com/lunars