How to calculate horizon distance variation?

In the column Are the north and south horizons not equally distant?, Cecil states:

I can’t seem to be able to come up with this number. Distance to the horizon is x = sqrt(2 R h), where R is the radius of curvature and h is the observer’s height. So for someone 1.5m tall, the horizon is 4.3km away. The variation in this value with respect to curvature variation is dx/dR=h/sqrt(2 R)=3.4x10[sup]-4[/sup].

If I’m reading this page correctly, the radius of curvature of earth varies from 6399.5 km at the equator to 6335.4 km at the poles. I don’t feel like doing the proper calculation for an ellipse so I’ll just assume that the radius of curvature varies linearly from equator to pole. Your north/south views are 4.3 km apart on average, so that gives dR=0.026km. Multiply that by dx/dr and I get dx=8.9mm. That’s one order of magnitude off from Cecil’s answer. Can anyone figure out what I did wrong? I did try plotting the radius of curvature and it’s not very far from a linear function, off by no more than 10%.

I don’t know, but I’ve been working on it since yesterday to no avail. I’ve been using a somewhat different and less elegant method, specifically looking at the equation of an ellipse in polar and seeing where the tangent line intersects it. I didn’t think the curvature assumption would work, because I was unable to show that horizon distance was directly related to average curvature over the viewing path. But I’ll give it a shot, if you think that’s a good assumption.

Achernar, I don’t know if my assumptions are valid. Maybe you should do it your way and compare answers.

Intiutively Cecil’s answer seems way too large, which is why I bothered to do the calculation in the first place. But intuition isn’t very useful for a question like this.

Okay, I just came up with a way to make this problem a zillion times simpler than the way I was doing it, with no difficult assumptions. It will take me a little while to work it out, though:

Start by drawing the diagram assuming the cross-section of the Earth is a circle, and compute the slope of the lines of sight that tell you the distances to the horizons. Then scale the whole thing down by a factor of (b/a) in the vertical dimension. The lines of sight will scale by a factor which depends only on their slope. Thus you can figure out the exact lengths of the new lines of sight.

I do have one question, though. Is 45°N located at a point such that the Center-You line makes a 45° angle with the plane of the equator? Or is it defined some other way?

I think 45°N is where the normal to the surface is 45° away from the axis of rotation. Not that it makes much difference, of course.

The new method you proposed should work. I look forward to your result. I’ll try to work it out too in the meantime.

I get… 2.88 mm = 0.114 in. Here’s how I did it.

I treated the Earth as an ellipse with major axis on the x-axis and minor axis on the y-axis. This will probably be reflected in my language, but I’ll try to make it understandable.

Givens: equatorial (or major) Earth radius a. eccentricity of Earth e. height of observer h. Latitude angle L.

  1. I’ll start by assuming that the Earth is a circle with radius a. Call the distance to the horizon x, as you did, and to first order in h/a, x = sqrt(2 a h).

  2. Call the angle between the observer and the tangent to the horizon B. It’s exactly true that tan(B) = x/a, so using my assumption from (1) and assuming B is small, I get B = sqrt(2 h / a).

  3. Drawing the lines from the observer’s head to the tangent points to the horizon, I get that they have slopes exactly m = cot(L ± B). I’m using ± to denote + for North and - for South. I’ll use -+ to denote the opposite.

  4. So imagine we have a line segment of slope m = dy / dx and length A. If we transfrom dy -> p dy then we will transform the length A -> k A, where k depends only on m and p. I get k[sup]2[/sup] = (1 + p[sup]2[/sup] m[sup]2[/sup]) / (1 + m[sup]2[/sup]). In the case that we want, p[sup]2[/sup] = (b/a)[sup]2[/sup] = 1 - e[sup]2[/sup]. We can then reduce the previous formula to k[sup]2[/sup] = 1 - e[sup]2[/sup]m[sup]2[/sup] / (1 + m[sup]2[/sup]). This whole step involved no approximations.

  5. Using the value for m from part (3) gives k[sup]2[/sup] = 1 - e[sup]2[/sup] cos[sup]2[/sup](L ± B). Using binomial expansion for small e gives k = 1 - 1/2 e[sup]2[/sup] cos[sup]2[/sup](L ± B).

  6. Call the difference in ks Dk. Exactly, Dk = 1/2 e[sup]2[/sup] (cos[sup]2[/sup](L + B) - cos[sup]2[/sup](L + B)). Now, I’m going to make a couple assumptions to simplify the trig. Assume B is really small and use the binomial expansion again to get cos[sup]2[/sup](L ± B) = cos(L) -+ 2 B sin(L). This gives an approximated value of Dk = 2e[sup]2[/sup] B sin(L).

  7. The difference in horizon distances is x Dk. Combining results from (1), (2), and (6) gives a value for x Dk of:

4 h e[sup]2[/sup] sin(L)

Your link gives a value for e[sup]2[/sup] of 0.000694, so, there you go. I do think it’s strange that it does not depend on a, but it’s not inconceivable. Now, I think it’s important I outline the assumptions:

(1) h << a. Ridiculously good.
(2) x << a. Good to better than a percent.
(5) e[sup]2[/sup] << 1. Good to one part in a few hundred.
(6) B << 1. Actually the same as in (2). I think this also assumes that B << L, but I’m not sure. It shouldn’t make a big difference, though.

There are also three implicit assumptions. First, the one I brought up in my last post, about just what we call 45°N. Second, that h is actually the height of the observer before the squashing. Both of these assumptions introduce error on the order of e[sup]2[/sup]. Third, that the person is standing such that their feet are are pointing toward the center of the earth, as opposed to standing either perpendicular to the ground, or pointing toward the center of gravity. I don’t know about this assumption, but I can’t imagine it carrying error on an order greater than e[sup]2[/sup].

With the exception of the very last one I mentioned, all of the assumptions were just to make the math simpler rather than possible. I think I may go through the calculations again without making them, to see how different the answer is. But anyway, we now have at least three answers. :slight_smile:

Well, I already see one mistake I made, so let me point that out immediately. The value of e[sup]2[/sup] should be 0.006694. That gives a final value of 28.9 mm = 1.14 in, greater than my previous post by a factor of 10. More errors to come, I’m sure… :stuck_out_tongue:

I haven’t gone through all your math yet, but this result looks strange. The sin(L) dependency indicates that the variation is greatest at the poles. sin(2 L) dependency would make more sense. :dubious:

Okay, I went through it again, doing everything numerically to about 12 digits, and I got a somewhat, though not significantly, different result - 2.0507 cm = 0.80737 in. Here’s how.

Based on scr4’s last post, I knew that my L value was slightly off. After the squashing, along the Earth, dy/dx = -1 at 45°N, so since dy is scaled by a factor of p = b/a, I knew that before the squashing, dy/dx = -a/b. For a circle, dy/dx = -x/y, so x/y = a/b. Thus tan(L) = y/x = b/a. This gives a value of L = 44.9037878494°, and m = tan(L) = 0.996647189335.

Now, if the person is standing pointing toward the center of the Earth (the assumption I don’t know how to get rid of) then their body is a line segment with slope m (given by last paragraph). Using the formula from (4) before gives k[sub]person[/sub] = 0.9966664051313, and so their heigh before the squashing is h = 1.52910100248 m.

The unassuming formula for x is: x = sqrt(h(h+2a)), so x = 4416.51827795 m.

tan(B) = x/a exactly, so B = 0.039674252376°. Values for k are then k[sub]+[/sub] = 0.998321693734 and k[sub]-[/sub] = 0.998317050459. Dk = 4.64327486×10[sup]-6[/sup]. Using the value for x from the last paragraph gives a value of x Dk of 0.020507 m.

Good call. I see now that the reason for this is that in (6) I actually assume that B << cot(L), which clearly won’t work when L = 90°. This assumption comes in when I used the binomial expansion as follows:

cos(L + B) = cos(L) - B sin(L)
cos(L + B)[sup]2[/sup] = cos(L) - 2 B sin(L)

I think 2cm is the right answer, unless Cecil wants to jump in and correct us. I took the ** k2 = 1 - e2 cos2(L ± B)** from your previous post and solved it by brute force (aka MathCad) to get the same result. My first post is only off by a factor of 2, which is not too bad considering the crude approximations I used.

cos[sup]2[/sup](L + B) - cos[sup]2[/sup](L - B) = sin(2L) sin(2B). How about that. Using that instead of my stupid ol’ binomial expansion gives:

Dk = e[sup]2[/sup] B sin(2L)

and:

x Dk = 2 h e[sup]2[/sup] sin(2L) = 2.040 cm

Okay, now that my uber-elegant solution agrees with brute force, I’m willing to go with it. :smiley:

Aha, I see my error now. The binomial expansion would have given me the correct result, but I didn’t do it right. I left out a factor of cos(L). However, using the expansion is silly, because the only term it would leave out, the B[sup]2[/sup] term, would have cancelled in the next step anyway. That’s what I get for blindly applying approximations instead of playing around with the trig. :smack:

I tried doing the problem again, this time from a radius of curvature approach, but I get a slightly different answer. Maybe you can find where I erred? Using parametric forms for x(L) and y(L) of:

x = a cos(L)
y = b sin(L)

and formula 4 gives:

R = 1 / ab × (a[sup]2[/sup] sin[sup]2[/sup]L + b[sup]2[/sup] cos[sup]2[/sup]L)[sup]3/2[/sup]
= a[sup]2[/sup] / b × (1 + b[sup]2[/sup] / a[sup]2[/sup] × cos[sup]2[/sup]L)[sup]3/2[/sup]
= a[sup]2[/sup] / b × (1 - e[sup]2[/sup] cos[sup]2[/sup]L)[sup]3/2[/sup]

For small e[sup]2[/sup]:

R = a[sup]2[/sup] / b × (1 - 3/2 × e[sup]2[/sup] cos[sup]2[/sup]L)
dR = a[sup]2[/sup] / b × 3/2 × e[sup]2[/sup] sin(2L) dL

dR/R = 3/2 e[sup]2[/sup] sin(2L) dL

Since x (not to be confused with x(L) that I used earlier in this post) is proportional to R[sup]1/2[/sup] we can say that dx/x = (1/2) dR/R. Also, dL = B. So:

dx = 3/4 × x B e[sup]2[/sup] sin(2L) = 3/2 × h e[sup]2[/sup] sin(2L)

This of course differs from the previous answer by a factor of 3/4. Hmmmm…

That, at least, I know how to fix. You’ve got the elliptical Earth, and a person standing with their feet pointing to the center. So from a surface=horizontal reference frame, that’s just a person who’s leaning slightly. Increase the person’s height slightly, and you’ll bring his eyes back to the height where they should be. But this will, in fact, be an O(e[sup]2[/sup]) correction.

So you’re saying have them stand perpendicular to the surface? That makes a certain amount of sense. But I think what happens is that the angle by which the person is tilted is O(e[sup]2[/sup]), and since the difference in height is related to 1 - the cosine of this angle, it’s actually O(e[sup]4[/sup]). Eh, I could be wrong, though. I’m bad with orders.

Hm, I was thinking that the angle would be order e, so the cosine would be e[sup]2[/sup]. But I can never remember eccentricity formulae, so you may be right. Either way, it’s probably too small to worry about, and it’d have approximately the same effect on both horizons.

And I’m not saying to make the person stand perpendicularly, I’m saying that a tall, leaning person is equivalent to a shorter, non-leaning person.

You also have to take into account the fact that they’re now at a different latitude when they’re leaning, though. This effect, I believe, will be order e[sup]2[/sup] (h / a)[sup]2[/sup].

I think that it is right that in real life a person would be standing perpendicular to the horizon. The gravity vector is the gradient of the potential, so it’s normal to any equipotential surface, like the water.

Using this assumption, I got that they will be leaning by an angle W (wrt the line to the center of the Earth) given exactly by

tan(W) = e[sup]2[/sup] tan(L) / (1 + (1 - e[sup]2[/sup])tan[sup]2/sup)

which is of course order e[sup]2[/sup].

Achenar, I’m not sure what you mean by perpendicular to the horizon. A person standing up is perpendicular to the surface they’re standing on–if it’s level, which is what we’re assuming. If you were to extend the perpendicular down through the Earth, at mid-latitudes, it would miss the center of the Earth by a factor of tens of kilometers. That makes it of order e[sup]2[/sup].

Chronos, if the person is leaning, they’ll be leaning towards the southern horizon, which means their eyes will be closer to it–throwing the answer off.

scr4, you got your radius of curvature values backwards, in your first post.

I meant perpendicular to the surface. Sorry about that. :smack: The tens of kilometers you mention I get as being equal to e[sup]2[/sup] a cos(L), which is order e[sup]2[/sup]. However, the effect this has on the value of x Dk (or whatever you want to call the final answer) is related to the square of this value, I believe, so the final answer would have a change of order e[sup]4[/sup].