These applets simulate a particular Dyson swarm (which is a type of Dyson sphere): a set of orbits that capture most or all of the light from a star. The surface formed by all the orbits resembles doughnuts, with the star in the center.
A donut (my definition) is constructed by placing a satellite in an elliptical orbit around a sun and spinning that orbit around some line that intersects the sun and is not in the plane of the ellipse. The structure looks like a glazed doughnut, with flat or concave inner walls. The whole surface of a donut can be covered with satellites with the same period, which do not collide, and where neighbors stay next to neighbors. A continuum of nested nonintersecting donuts can be constructed with these same properties, filling the whole 3d volume of the donut with noncolliding orbits.
Here's my old page on donuts. A simulation of a donut, as seen from an object on the donut, is shown below.
In 1959, the imaginative Freeman Dyson proposed capturing all the light coming out of a star with a swarm of satellites. This became known as a Dyson sphere. Science fiction writers later replaced the swarm of satellites with a solid shell. The swarm of satellites is a Type I Dyson sphere and the shell is a Type II Dyson sphere. Type II is probably impossible: the gravity of the sun would cause the poles of the sphere to collapse. Type I is quite feasible, though. It is also sometimes called a Dyson swarm. Some orbits have been proposed .
Several donuts of different sizes and orientations can be used to construct a very different looking Dyson swarm. Some single donuts are nearly a Dyson swarm all by themselves. Donuts have the disadvantage compared to the original proposal of having direct sunlight for only a fraction of the orbit. They have the advantage of having less stretching between neighbors, no high velocity near misses, and they allow a large 3d volume to be occupied.
Below is a series of nested donuts with tilt=eccentricity. Donuts .0 through .7 do not intersect. Donuts .8 and .9 do intersect each other and the previous donuts. I speculate that the largest nonintersecting donut would have a tilt of sqrt(1/2), about .7071.
Let's look at those near Dyson-swarms again, but with some thickness to the shells this time. We see that if shells intersect earlier shells, any thickness at all means that there will be satellites colliding. As shells approach the limit (tilt .7), satellites get closer and closer together. It's probably best not to exceed tilt of .6. These leave only a 90-degree cone of light coming from the star, so it would only take two donuts to capture all light.
Other concerns: How do you get rid of heat once you've captured all sunlight? The same mechanism catching all light from the sun blocks the entire sky. How important is line-of-sight between satellites in a swarm? How thick should the shell be? Is there any point in populating the interior of donuts?
I think tilt = .5 and .6, tilt=2*eccentricity looks the most promising for an actual Dyson swarm. Thickness of the donut does not cause collisions. The nearest and furthest point from the sun in a given donut aren't too different. Two nested donuts could capture all light, and the outer donut isn't terribly bigger than the inner one. The outer surface of the inner donut and inner surface of the outer donut could have roughly aligned velocities, making it easier to jump between the two.
These donuts are passively stable in the short term (a few orbits), but not in the long term (thousands or orbits). They can be made long-term stable by active maintenance (tossing masses back and forth, and pulling on tethers). Active maintenance can also keep them stable in the face of small unpredictable perturbations, which you'd get a lot of in a populated Dyson swarm.
Position/velocity maintenance has to be done without throwing away mass. No rocket fuel. Not only can't you get mass back after you've thrown it away, the spread-out exhaust will be a nuisance for other satellites. All satellites want to avoid unexpected collisions, and that's easier when you know where everything is and what it's doing. Gas and dust interfere with that.
Because these are orbits, a velocity pushing a satellite out of the ideal surface will be replaced by a velocity pushing it in towards the center sometime later in the orbit. Since maintenance is done over years not minutes, it's fine to defer maintenance until the velocity to be corrected is a convenient one.
Take a cross section of the donut. Put a big satellite in the central orbit in the interior of the donut. There's some ideal position and velocity of satellites along the cross section. If satellites have a wrong velocity pointed towards the center, they can throw rocks to the center and the center can throw rocks back. If this causes a net force imbalance to the center, that can be fixed by moving the central satellite away from the center. That can make the orbit of the central satellite unbalanced in a way that cancels out the imbalance from maintaining the donut. Since satellites speed up and slow down during their orbit, the cross section per central satellite would be sort of warped, so donut satellites don't have to change which central satellite they throw rocks to.
Or, without a central satellite: measure what the drift is per orbit without any correction, from the point where the orbit crosses the central plane. If all orbits get rotated by a fixed amount around the central axis, that is fine, they stay in the same positions relative to each other. But the remaining four dimensions (distance from sun, and the three velocity components) out to be the same at the start and end of an orbit (velocity adjusted to account for rotation about the central axis). Measure what the drift is if you do four arbitrary small mass exchanges (assume all satellites are doing the same thing so this satellite receives/sends a mass and elsewhere in the orbit receives/sends an equivalent mass). Apply Gauassian elimination to those drifts to find a combination that makes the four remaining dimensions equal at the start and end of an orbit. Drifts do not combine quite linearly, so this has to be repeated until you converge on a stable answer. The solution may call for exchanging negative mass, which can be done by pulling on tethers.
Moving along the surface of the donut can be done by pulling on tethers attached to neighbors and throwing rocks to neighbors. As long as you catch as many rocks as you throw on average, mass is conserved. Such adjustments spread out local troubles across the whole donut. If the goal is for everyone to be going the same speed, averaging out always works because there will always be some average.
Open question: what to do if the donut's period consistently grows.
OK, actual construction of the continuum of donuts with tilt=eccentricity. Ready? Here goes.
Start with a circular orbit. If the gravitational constant G is 1, and the star has mass 1 at position (0,0,0), and a satellite at position (1,0,0) is travelling at velocity (0,1,0), then that satellite is in a circular orbit of period 2*pi.
Note that the period of a satellite depends on its distance from its star and its absolute velocity, but NOT on its full position or the direction of its velocity. All donuts with period 2*pi are going to be at distance 1 from the star at some point. If I make that the high point of the orbit, the z coordinate of the velocity is conveniently zero. To have tilt=eccentricity, for some tilt d, one spot on that donut is position (sqrt(1-d*d), 0, d), velocity (-d, sqrt(1-d*d),0).
A little trigonometry rotates these starting points about the z axis, for example this program generates these positions and velocities and rotates them about the z axis.
Finally plug all these starting points into an orbit simulator and periodically dump out positions along the resulting orbit to get all the points on the donut that are not exactly distance 1 from the star. (There is a trigonometric way to get those points, but I forget what it is.) If you watch my simulations for awhile, you'll see that the rings quickly diverge. That's because my simulator didn't report the velocity very well. I haven't got around to fixing it.
Now, this construction puts the points with zero z velocity on the sphere of radius 1. The simulator seems to say that that implies that the minimum and maximum distance from the sun will happen at position (?, ?, 0). Why? Also, eyeballing it, it looks like the minimum and maximum distance from the sun are equal distances from the central orbit. Why?
An ellipse can be defined by taking a plane, two points (focii, f1, f2) in the plane, and a length d that is greater than the distance between the two points. A point p in the plane is on the ellipse iff the sum of the lengths of (f1,p) and (p,f2) is d. Orbits are ellipses, with the sun as one of the focii. For the circular orbit, both focii are in the same place and d=2. If you assume all orbits with d=2 have the same period, I can show the rest.
(Ross Millikan pointed out why all orbits with the same d have the same period. d is also the length of the major axis of the ellipse. The "semi-major axis" of an ellipse is half the major axis. Kepler's third law states that the period of an orbit is proportional to the 3/2 power of the length of the semi-major axis. So all orbits with the same d have the same period.)
A point on the minor axis of the ellipse is equidistant from the two focii, and d=2, so it must be distance 1 from both focii. The tangent to that point is horizontal, which explains why the point with zero z velocity is the high point of the donut.
A point on the major axis of an orbit is either the minimum or maximum distance from the sun. The distance to the nearest focus is 1-q (for some q), the sum of the distances to the focii is 2, so the distance to the furthest focus is 1+q. That explains why the minimum and maximum distances from the sun are equidistant from the circular orbit.
An open cluster of 200 suns, from the
perspective of one of the suns
Klemperer rosettes, the solar system, figure-eight orbits, and all other n-body simulations
Ye Olde Catalogue of Boy Scout Skits
Table of Contents