Hacker News new | past | comments | ask | show | jobs | submit login
The hairy ball theorem (wikipedia.org)
63 points by acangiano on June 12, 2009 | hide | past | favorite | 36 comments



Thus the popularity of unit quaternions in 3D simulation and graphics. They cover the sphere twice, so each rotation can be represented by two possible values.

My hack minds eye view of this is that you take two combed layers with nulls at the poles. The rotation then jumps between layers as it crosses the poles.


Could you explain in more detail? Why do people in 3d simulations and graphics care about the existence of a point where the function value is 0?


They want a rotation representation that:

1) can be accumulated (quaternion multiplication) and interpolated (slerp) 'smoothly',

2) and in a way that does not depend on the absolute orientation.

- Smooth:

If you dive in and start using 3 angles (yaw,pitch,roll) to represent 3d rotation, then the rotations are like the hairy ball - however you order them, there will be values where you can't easily step to another physically very close rotation without a huge change in values - the discontinuities in the hairy ball.

This is classically called 'gimbal lock', where a gimbal mount is a physical manifestation of angle representation. In simulations, it might show itself as strange behaviour when pitched up/down close to 90deg, or an interpolation between apparently close rotations going wild.

By using unit quaternions (4 values), and avoiding the discontinuties (but now having two representations for each physical rotation) it becomes easy to acuumulate the rotations that come from a flight model, animation, user etc. without out ever getting stuck in a corner.

- Independant of absolute rotation:

A related point is that an incremental rotation by multiplying quaternions will always produce the same relative rotation irrespective of absolute attitude. You can see angle based represetnations going wrong when, for example, a camera control system offers buttons that are suposed to be left/right/up/down relative to the camera, but produce varying results as the camera rotates.

It's possible to do the same things with 3x3 matrices - but it is a bit more tricky to keep them normalised over time, and obviously takes more storage. A typical solution to all the above angle problems in a simulation would be to convert (yaw, pitch, roll) to a matrix, accumulate, then convert back. My brief experience of aerodynamics texts is that all the equations are obfuscated with unpicking and rebuilding angles. It's a bit like doing arithmentic with Roman numerals - possible, but painful.


Thanks for taking the time to explain this!


I just added this to the comment about the weather:

"This is not strictly true as the air above the earth has multiple layers, but for each layer their must be a point with zero horizontal windspeed."

Feel free to edit it.


Considering multiple layers doesn’t provide more insight here. The atmosphere form one "thick" layer around the Earth and the air moves within this layer. Assuming that this layer is closed (does not gradually comes to nothing), what we have is a "thick" sphere. Its Euler characteristic is still 2, thick or not. Now you can think of the wind as a continuous transformation of this solid. This map is homotopic to the identity map and, therefore, has Lefschetz number equal to the Euler characteristic, i.e., 2. Hence there is a fixed point. With some extra work you can show that this implies that the vector field has a stationary point. At that point the wind speed is 0, and not just the horizontal component. That point, certainly, does not have to be a cyclone. However, there is nothing wrong with the conclusion about the weather presented in the article; it’s just more idealized than this.


The point about layers is for each vertical cm around the earth you need to have that point with zero air speed. Same deal for any width you feel like talking about. You also need to have a line that connects all those points from earth to space. However, that line's path need not be strictly vertical it could wrap around the earth 3 times before reaching space.

However, "In meteorology, a cyclone refers to an area of closed, circular fluid motion rotating in the same direction as the Earth[1][2]." which is not nessisarily true.


As I understand your point, the existence of a cyclone is proven only if the thickness of the atmosphere is ignored. I agree with that.

On the second point, the hairy ball theorem does not guarantee circular motion. True.


I think it would be better to delete the eintire paragraph above your addition, as the notion that this theorem guarantees at least one cyclone somewhere on earth is ridiculous.


Is it wrong because the earth is not a perfect sphere, or for some other reason?


Some other reason. It's not the geometry ("perfect sphereness") of the earth that's the issue, it's the topology (that it's a ball).

The other reason is something like "wind velocity is not a continuous vector field". When you get down to the microscopic level, what does wind velocity mean?

"There's a cyclone somewhere on earth" is a pretty good approximation though.


Topologically speaking, the Earth is a 2-sphere. It's irregularities don't change that. On the other hand, a hairy coffee mug must be combable (since it's a doughnut).


I suspect it's more to do with the fact that (as Retric alludes to) the atmosphere is not a monolayer.


I'm having trouble visualizing how a weather system with multiple layers would allow some points to have a horizontal speed of zero without creating cyclones. Is the implication here that there could be some permanent vertical flow of air, iff the atmosphere is layered?


"Creating Cyclones" is a mis-leading phrase.

Consider air flowing from North Pole to South Pole at the surface, rising from the South Pole to an upper layer, returning to the North Pole, descending, and repeating. There are no cyclones, the flow is constant, and there are places with zero horizontal velocity.

In reality the Earth rotates and the Coriolis force would create cyclonic circulations, but that's another matter.

Down that path lies chaos.


How do the particles of air immediately adjacent to the zero-horizontal particles move?


Well, first problem is to define "immediately adjacent". In analysis, there is no point "next to" the point 0. I assume you mean a small neighborhood.

There are several ways to define these things. For example, in a small neighborhood, the particles could move at a speed proportional (ish) to the distance from the point. When you take 3D into account, some move tangentially, some move radially (ish) and it can all be smoothed out. It's easiest to imagine the entirety, then try to extend the macro movement smoothly into the corners. By using tricks such as asymptotic slowing it can all be done.

Are you having trouble visualising? Or are you worrying about the precise details. This is not a good medium for discussing either. A good text or tutorial on fluid mechanics will cover the various techniques for mapping an obvious flow into a less obvious flow.


It's wrong because this theorem only applies to continuous vectors. However wind can simply fade (i.e. become slower), and is thus non-continuous.

Edit: I'm getting beaten up in the downmods, but no one has shown me that wind is continuous.


It doesn't apply to continuous vectors, it applies to continuous vector fields. There is a difference, and it does matter.

And I would be interested to see how you can construct a non-continuous vector field from an incompressible (which air at these speeds effectively is) fluid. Your graphic and description do not make sense - they do not allow that, macroscopically, air is a fluid. If it travels, it has to go somewhere. It can't simply stop at a boundary, it has to change direction, and such changes of direction cannot be instantaneous. This is why in electronics we need to deal with signal reflection, over-voltages, and similar phenomena.

Additionally, continuous technically does not mean "no large jumps", although that's how the technical definition was inspired, and how most people visualise it. In particular, it's possible to create a function that's continuous at every irrational, and discontinuous at every rational.

It's certainly true that the theorem is dealing with a theoretical approximation to a messy, physical situation, but broadly speaking it's applicable. It says that at the Earth's surface there is always at least one place where the horizontal component of the air movement (wind velocity) is zero. Errors are often made when trying to make folksey explanations, and it's the interpretations that often have errors. The theorem is true, applicable and in some cases, useful.


I thank you for an explanation and not just more downmods.

To explain the wind graph - imagine very low air pressure at the points where it stops. You wrote incompressible, but that's not actually the case for wind (although yes the wind doesn't cause compression, but rather the reverse).

"one place where the horizontal component of the air movement (wind velocity) is zero"

If that's what it says, then yes, I agree that is true for wind. It didn't seem to be what it was saying though, but I guess I misunderstood it.

It said cyclone, i.e. wind moving in a circle, and that is just not correct. Wind can simply move out radially in all directions in straight lines from that point, without making a circle.

That point of course is where the velocity is 0.

To quote "(Like the swirled hairs on the tennis ball, the wind will spiral around this zero-wind point - under our assumptions it cannot flow into or out of the point.)". This is not true. Air can flow out of a zero point - just heat it up, and air will flow out of it.


> This is not true. Air can flow out of a zero point - just heat it up, and air will flow out of it.

I'm having a lot of trouble visualising this. There is no air at a point. A point, by definition, has no volume. Are you manufacturing air?

I think you are using some definitions that are completely at odds with what everyone else, including me, are using. No doubt if we stood in front of a whiteboard you could make yourself clear quickly, but almost everything you have said is, according to my model of how the world works, wrong.

I'd like to understand you, but I suspect that's never going to happen.

I know the theorem - I proved a generalised version of it as a base case for a much bigger result. I haven't bothered to read most of the comments because usually the whole thing is mis-quoted or mis-interpreted, but I just had to say something to try to understand you.

It's true that the theorem does not require a cyclone. The theorem can imply a zero point with the vector field radiating from it, but in a conservative 2D fluid flow that can't happen. In a 3D flow you can get that effect on the surface as the fluid descends to that point and then spreads, but that's different.

Perhaps you're responding to incorrect "interpretations", perhaps you're right and I just don't understand you, but you're really not making yourself clear. Either that, or you're wrong.


"There is no air at a point. A point, by definition, has no volume. Are you manufacturing air?"

Sorry. Assume an area, heat it up and wind flows out of it. However the air in the area itself is moving, so conceptually all the air is moving out of the point in the center of it. (It's not really, it's moving out of the area, but all the vectors point away from the point, so that's what it looks like.)

"It's true that the theorem does not require a cyclone."

Thanks. That's really all I was arguing about.

The thing with continuous and cyclone: I was assuming, that people were saying, that the wind _always_ has to move - even if in a circle. And I was saying, no, it doesn't have to move, you can have a still area, and wind radiating out of it (or into it).

If I am correct about that, then please edit the wikipedia article to remove mention of cyclones.

Why do you say that can't happen in a 2d fluid flow? Why does it have to be a cyclone? My understanding of weather is you have a large area, you heat it up, and wind flows out of it - but there is no cyclone. (I guess with fluid flow you are assuming there is no way to manufacture fluid, but with wind you can since heat will "create" more of it.)

Tell me if I'm wrong here:

The hairy ball theorem assumes there is hair everywhere, so you have to have a cyclone at the poles. But with wind there are spots without hair, so the theorem just doesn't apply to wind.


An idealized 2d fluid flow is non-compressible, so heating it up at a point does nothing.


But air is compressible. And I am talking about air.

(Unless this post was answering my question, in which case thanks.)


Wind can not move out radially in all direction from a point, unless air is manufactured at that point. If you thind of the wind as a divergenceless vector field, that situation is not possible.

If you heat it up, the air around the point will move outward. It will still not move out of the point, because there's no volume of air in the point that can be heated up, and (b) that's not a time-independent field either. It only works for an instant.


I know. It was just a way to visualize it.


Do you know what continuous means?


Yes, a function which has no large jumps.

Wind has no such constraint.

On top of that this only applies to "nonvanishing vectors", and again wind has no such constraint.

  -------| | | | | |------
  -------| | | | | |------
  -------| | | | | |------
  -------| | | | | |------
  -------| | | | | |------
Assume the lines wrap left/right and up/down.

Wind can do this, and you have no pole.

(This graph is really bad, the lines are actually curved where the points meet the lines. Imagine drawing circles around the earth for 2/3 of it. Then perpendicular half circles on the rest.)

Applying a pure function like this to real life wind which is not so constrained is about as right as applying the http://en.wikipedia.org/wiki/Banach-Tarski_paradox to a real life object, even if mathematically it's correct.


> Note that the eye can be arbitrarily large or small and the magnitude of the wind surrounding it is irrelevant.

Given that the eye can be arbitrarily small, I would accept the statement that the earth would always have at least one circular wind pattern. The paragraph is not talking about just hurricane size.


>the earth would always have at least one circular wind pattern

Not necessarily. There may be two stationary points and all winds blowing from the first point to the second. Nothing circular...


Hopefully that won't last too long, or all the air on the planet will end up at point two! (A constant amount of non-compressible air was assumed in the example.)


Any other interesting applications of topology to physical phenomenon? I can only seem to find applications to other areas of math.


The theorem lacks a certain aesthetic beauty. Apply Occam's Razor to create a smoother, more palatable package.


neat, this is very important in classical mechanics. Orbits of your system trace out tori in the phase space, the cool thing is how the tori break up as you perturb your system from integrable to non-integrable. Chaos, without dissipation.


more/links?


Hahahah...

Hairy balls.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: