← mickdarling.com Solar-Wind Turbine GitHub Orbital Lifeboats

Solar-Wind Turbine — what it actually produces

Every number is computed by turbine.py on one consistent physical model. ✓ 20 physics tests pass

The solar-wind turbine is a magnetic sail rigged as a windmill. Long counter-rotating cables carry switchable magnetic "bottles" at their tips; the bottles deflect the solar wind, and by firing them as a force couple the wind spins the whole rig around a central generator — turning the wind's momentum into electricity without pushing the craft out of its orbit.

TL;DR — what sets the size, mass, and power. Three choices drive everything below:

Net of all that: with a superconducting coil and carbon-fiber cables a useful unit is tens to a few hundred kW, and a several-hundred-km bubble reaches the MW range. It's a sail first, with power as the bonus. And power isn't one number — it's a grid over bubble size × tip speed, below.

Two field technologies — only one is net-positive. The magnetic bottle can be a resistive / plasma-injected coil (M2P2-style) or a superconducting coil (or wind-inflated plasma magnet). Only the superconducting one nets out positive — a resistive coil spends more power holding the field than the spin makes (its field bill grows as R⁶, see further down). Everything below is the superconducting case, and the metric is NET power (extracted minus the bottle).

NET power — bubble size × tip speed (superconducting)

The columns are bubble radius (the size of the magnetic bubble) at 1 AU; the rows are tip speed, set by the cable material. Cells are net power (extracted minus the ~2 kW superconducting bottle). This is the whole "what does it make" answer — sub-kW to multi-MW.

tip speed (material) \ bubble radiusR = 25 kmR = 50 kmR = 100 kmR = 200 kmR = 400 km
Steel (HS) (0.51 km/s)-1.3 kW+0.7 kW+8.6 kW+40.5 kW+167.9 kW
Kevlar (1.58 km/s)+0.1 kW+6.2 kW+31.0 kW+129.9 kW+525.5 kW
Carbon fiber (1.89 km/s)+0.5 kW+7.8 kW+37.3 kW+155.0 kW+626.2 kW
Zylon (PBO) (1.93 km/s)+0.5 kW+8.0 kW+38.1 kW+158.6 kW+640.2 kW
CNT (theoretical) (6.69 km/s)+6.5 kW+32.0 kW+134.0 kW+541.9 kW+2.17 MW
-1 1 9 41 169 0 6 31 130 525 0 8 37 155 628 1 8 38 159 641 6 32 134 542 2173 25 50 100 200 400 0.51 1.6 1.9 1.9 6.7 -1.3 1,086 2,173 net kW NET power (kW): bubble size x tip speed [plasma magnet, 1 AU] bubble radius at 1 AU (km) tip speed (km/s) — by material
Net power (kW): x-axis = bubble radius, y-axis = tip speed (material).

With distance — two sail models (and the bubble is NOT fixed-size)

50 km bubble at 1 AU, carbon-fiber tips. Plasma-magnet bubble inflates with distance (force flat, power flat); rigid dipole's force falls as r^−4/3.

distanceplasma magnet: R / F / Prigid dipole: R / F / P
1 AU50 km / 10.5 N / 9.8 kW50 km / 10.51 N / 9.8 kW
5 AU250 km / 10.5 N / 9.8 kW85 km / 1.23 N / 1.1 kW
10 AU500 km / 10.5 N / 9.8 kW108 km / 0.49 N / 0.5 kW
30 AU1500 km / 10.5 N / 9.8 kW155 km / 0.11 N / 0.1 kW
5.0 10 15 20 25 30 0.10 1.0 10 100 Power vs distance (50 km bubble @1 AU, carbon-fiber tips) distance from Sun (AU) power (kW) plasma magnet (bubble inflates → flat) rigid dipole (force ∝ r^-4/3) solar PV (1000 m²)
Plasma magnet flat (bubble inflates) vs dipole falling vs PV cratering.

Can it power its own bottles?

Not free energy (wind pays); ideal magnetic deflection does no work, so a perfect bottle costs ~0 to maintain. Whether it self-powers depends on the tech:

bottle technologybottle powerharvestableverdict
M2P2 (inject plasma; cost ∝ bubble)17.0 µW/m²1.26 µW/m²NET NEGATIVE (~13× short)
Plasma magnet (superconducting; fixed)~2 kWgrows with bubble areaNET POSITIVE above ~22 km bubble

Buying a bigger bubble with field power

You can inflate the bubble by dumping power into the coil — even close to the Sun against the denser wind. But radius grows only as the 6th root of power (R ∝ P^1/6), so a resistive coil's field bill explodes as R⁶ and net power craters. A big bubble only pays if the field is held ~free — a superconducting coil (no ongoing power) or the wind-inflated plasma magnet. Then bubble size is a coil-design/mass choice, not a power drain.

25 50 75 100 125 150 -50 0 50 100 150 break-even Net power vs bubble size: how you pay to inflate it bubble radius at 1 AU (km) net power (kW) resistive coil (field bill ∝ R⁶) superconducting (field held ~free)
Resistive coil craters as you scale the bubble (field bill ∝ R⁶); superconducting scales as R². Big bubbles need a free-field coil.

How big? (no sweet spot — bigger is better, up to structure)

For the superconducting case there is no interior optimum: net power grows with bubble area (∝ R²) from break-even (~22 km at 1 AU for a 2 kW coil) upward, bounded only by how big a structure you can build (cable strength, coil mass). So the design levers are the break-even floor (minimum useful size) and the structural ceiling — not a peak in between.

50 100 150 200 250 300 0 100 200 300 400 break-even ~22 km Net power vs bubble size (superconducting): bigger is better bubble radius at 1 AU (km) net power (kW)
Superconducting net power vs bubble size: crosses break-even ~22 km, then climbs ∝ R². No interior optimum — size is bounded by structure, not a sweet spot.

Riding outbound — efficiency up, absolute power down

0 0.20 0.40 0.60 0.80 0 0.20 0.40 0.60 0.80 1.0 Riding outbound: efficiency climbs, absolute power collapses craft speed as fraction of wind speed fraction of maximum efficiency (Cp / Cp_max) extracted power (P / P_max)
Sailing out: efficiency climbs toward λ=1/3, absolute power collapses as v_rel³.

Tip-speed ceiling by material

0 2.0 4.0 6.0 Steel (HS) 0.51 km/s Kevlar 1.58 km/s Carbon fiber 1.89 km/s Zylon (PBO) 1.93 km/s CNT (theoretical) 6.69 km/s Tip-speed limit by cable material (spinning-tether, SF=2) max tip speed (km/s)
The cable sets the tip-speed limit, hence one axis of the power grid.

Physics tests (run on every build)

  PASS  density_falls_as_inverse_r2
  PASS  plasma_magnet_force_is_constant_with_distance
  PASS  plasma_magnet_radius_grows_linearly
  PASS  dipole_force_falls_as_r_minus_4_3
  PASS  dipole_radius_grows_as_cube_root
  PASS  extracted_power_scales_with_bubble_area
  PASS  extracted_power_scales_with_tip_speed_when_slow
  PASS  extracted_never_exceeds_available_flux
  PASS  small_tip_limit_is_half_F_vtip
  PASS  drag_cp_peaks_at_one_third
  PASS  drag_cp_zero_when_tip_matches_wind
  PASS  tip_speed_limit_matches_formula
  PASS  field_power_buys_radius_as_sixth_root
  PASS  resistive_field_bill_explodes_as_r6
  PASS  m2p2_injection_cannot_self_power
  PASS  resistive_coil_has_an_optimal_radius
  PASS  resistive_optimal_radius_is_distance_independent
  PASS  superconducting_net_grows_monotonically_with_bubble
  PASS  superconducting_net_goes_positive_above_breakeven
  PASS  net_power_flat_with_distance_for_plasma_magnet

20 passed, 0 failed

Full model run (raw turbine.py output)

Solar-Wind Turbine — coherent physical model.

A magnetic-sail "windmill": magnetic-bottle tips on counter-rotating cables,
fired as a couple so the rig spins (drives a generator) without leaving orbit.

ONE consistent chain (this is the rebuild — the earlier version mixed a fixed
bubble with a self-inflating one, which was incoherent):

  knobs:   bubble radius AT 1 AU (R1)  +  cable material (-> max tip speed)  +
           operating tip speed v_tip  +  sail scaling model  +  bottle type
  derived: at distance r, the bubble radius R(r) and force F(r) follow from the
           chosen scaling model; extracted power = drag turbine on that force;
           net power = extracted - bottle power.

Two sail scaling models (they scale DIFFERENTLY with distance — that was the
source of the confusion):
  * 'plasma_magnet' : wind-inflated, R grows ∝ r, so F = ram·area is CONSTANT
                      with distance (the celebrated Slough/Wind-Rider property).
  * 'dipole'        : rigid coil, pressure balance gives R ∝ r^(1/3), so
                      F ∝ r^(-4/3) (force FALLS as you go out).

Run the model:  python3 turbine.py      Validate the physics:  python3 test_turbine.py


==========================================================================
1.  ENVIRONMENT vs DISTANCE
==========================================================================
   r (AU)  n (/cm^3)  ram P (nPa)  E-flux (W/m^2)
        1      5.000       1.3381        2.68e-04
        5      0.200       0.0535        1.07e-05
       10      0.050       0.0134        2.68e-06
       30      0.006       0.0015        2.97e-07

==========================================================================
2.  TIP-SPEED CEILING BY MATERIAL  (v=sqrt(2*strength/SF), SF=2)
==========================================================================
  Steel (HS)               0.51 km/s
  Kevlar                   1.58 km/s
  Carbon fiber             1.89 km/s
  Zylon (PBO)              1.93 km/s
  CNT (theoretical)        6.69 km/s

==========================================================================
3.  EXTRACTED POWER vs (cable material x bubble size)  [plasma magnet, 1 AU]
==========================================================================
  This is the real 'what does it make' grid. Columns = bubble radius at
  1 AU; rows = tip speed at each material's limit. Power = 1/2 F v_tip.

  material / bubble            25km       50km      100km      200km      400km
  Steel (HS)                 0.7 kW     2.7 kW    10.6 kW    42.5 kW   169.9 kW
  Kevlar                     2.1 kW     8.2 kW    33.0 kW   131.9 kW   527.5 kW
  Carbon fiber               2.5 kW     9.8 kW    39.3 kW   157.0 kW   628.2 kW
  Zylon (PBO)                2.5 kW    10.0 kW    40.1 kW   160.6 kW   642.2 kW
  CNT (theoretical)          8.5 kW    34.0 kW   136.0 kW   543.9 kW    2.18 MW

==========================================================================
4.  NET POWER = extracted - bottle  [superconducting bottle ~2 kW]
==========================================================================
  Negative = the field costs more than the spin makes. Net positive needs
  enough bubble (force) and tip speed (material). THIS is the real metric.

  material / bubble            25km       50km      100km      200km      400km
  Steel (HS)                -1.3 kW    +0.7 kW    +8.6 kW   +40.5 kW  +167.9 kW
  Kevlar                    +0.1 kW    +6.2 kW   +31.0 kW  +129.9 kW  +525.5 kW
  Carbon fiber              +0.5 kW    +7.8 kW   +37.3 kW  +155.0 kW  +626.2 kW
  Zylon (PBO)               +0.5 kW    +8.0 kW   +38.1 kW  +158.6 kW  +640.2 kW
  CNT (theoretical)         +6.5 kW   +32.0 kW  +134.0 kW  +541.9 kW   +2.17 MW

==========================================================================
5.  WHY THE OLD 'FLAT 5.3 kW EVERYWHERE' WAS WRONG vs RIGHT
==========================================================================
  It depends on the SAIL MODEL, and the bubble is NOT the same size at
  every distance. Carbon-fiber tips (1.89 km/s), 50 km bubble AT 1 AU:

   r(AU) |        PLASMA MAGNET         |         RIGID DIPOLE        
         |   R(km)     F(N)       P_ext |   R(km)     F(N)       P_ext
       1 |      50     10.5      9.8 kW |      50     10.5      9.8 kW
       5 |     250     10.5      9.8 kW |      85      1.2      1.1 kW
      10 |     500     10.5      9.8 kW |     108      0.5      0.5 kW
      30 |    1500     10.5      9.8 kW |     155      0.1      0.1 kW

  Plasma magnet: bubble GROWS (50->1500 km), force constant, power flat.
  Rigid dipole:  bubble grows slowly, force falls ~r^-4/3, power drops.
  The flat case is real (Wind Rider), but only because the bubble inflates;
  quoting '50 km' at every distance was the bug.

==========================================================================
6.  CAN IT POWER ITS OWN BOTTLES?
==========================================================================
  harvest density (CF tips): 1.26 uW/m^2
  M2P2 injection cost:       16.98 uW/m^2  -> ~13x short, NET NEGATIVE (can't self-power).
  Superconducting (fixed 2 kW): break-even at ~22 km bubble; bigger = net positive.

==========================================================================
7.  BUYING A BIGGER BUBBLE WITH FIELD POWER (and why it must be ~free)
==========================================================================
  You CAN inflate the bubble by dumping power into the coil -- even close
  to the Sun against the denser wind. But bubble radius grows only as the
  6th ROOT of power (R ∝ P^1/6), so a RESISTIVE coil's field bill explodes
  (∝ R^6) and net power craters. Anchored to M2P2 (~3 kW -> ~15 km @1 AU):

   field power  bubble R    force     P_ext  net (resistive)
        1.0 kW      12km     0.7N    0.6 kW          -0.4 kW
       10.0 kW      18km     1.4N    1.3 kW          -8.7 kW
      100.0 kW      27km     3.0N    2.8 kW         -97.2 kW
       1.00 MW      39km     6.6N    6.1 kW        -993.9 kW
      10.00 MW      58km    14.1N   13.2 kW         -9.99 MW

  64x the power for 2x the bubble -- a resistive coil is a sucker's game.
  The field must be held ~FREE: a SUPERCONDUCTING coil (sustained with no
  ongoing power) or the PLASMA MAGNET (the wind inflates it). Then bubble
  size is a coil-design/MASS choice (the grid in §3-4), not a power drain --
  and you CAN build a big bubble close in; the denser wind just wants a
  stronger (heavier) coil, not more watts.

==========================================================================
8.  HOW BIG?  (superconducting has no sweet spot -- bigger is better)
==========================================================================
  For the only net-positive technology (superconducting), there is NO
  interior optimum: net power grows with bubble area (∝ R^2) from break-
  even upward. The levers are the break-even FLOOR and the structural
  CEILING, not a peak between. Carbon-fiber tips, 1 AU, ~2 kW bottle:

    R =    22 km -> net -0.0 kW  <- break-even
    R =    50 km -> net 7.8 kW
    R =   100 km -> net 37.3 kW
    R =   200 km -> net 155.0 kW
    R =   400 km -> net 626.2 kW

  (The only case WITH an interior optimum is a resistive coil -- a tiny,
  net-LOSING ~8 km peak -- which is exactly why we don't use it.)

==========================================================================
BOTTOM LINE
==========================================================================

  * Power is NOT one number -- it's a grid over (bubble size x tip speed). It runs
    from sub-kW (small bubble, steel) to multi-MW (big bubble, strong material).
  * With distance: plasma-magnet force is constant (power flat) ONLY because the
    bubble inflates; a rigid dipole's power falls ~r^-4/3. Pick a model and stick
    to it -- mixing them was the earlier garbage.
  * NET power (extracted - bottle) is the number that matters; M2P2 can't self-
    power, the superconducting plasma magnet can above a break-even bubble size.
  * Run test_turbine.py -- the scaling laws and energy limits are asserted there.
    

Narrative write-up

Solar-Wind Turbine

A mechanical windmill that rides — and harvests — the solar wind. Separate from the Orbital Lifeboats project, but in the same repo because it could power a deep-system cache.

Origin: Mick's idea, from an email he sent Robert Winglee right after the M2P2 press release (~2000) — magnetic sails on the ends of long counter-rotating cables, toggled on/off so the rig spins in place, driving a generator from the wind without being blown out of orbit.

This model was rebuilt after the first pass mixed two incompatible assumptions (a fixed bubble for the size sweep, a self-inflating one for the "flat with distance" claim). The physics is now on one consistent chain and pinned down by tests — run python3 test_turbine.py.

TL;DR — what sets size, mass, and power

Three choices drive the whole design (and inform everything below):

A useful unit (superconducting coil + carbon-fiber cables) is tens to a few hundred kW; a several-hundred-km bubble reaches the MW range. It's a sail first, power as the bonus.

The machine

Vertical-axis turbine in solar orbit: spin axis north–south, generator at the hub, long counter-rotating cable-arms tipped with switchable magnetic-sail "bottles." Fire the tips as a force couple (pure torque, ~zero net translation) so it spins up and generates without leaving orbit; toggle through each rotation to keep the couple driving the spin. Same rig also = a sail, an ion-power source, and a 1-g habitat at the radius where ω²r = g.

The one consistent chain

knobs:   bubble radius at 1 AU (R1)  +  cable material (→ max tip speed)
         +  operating tip speed v_tip  +  sail model  +  bottle type
derived: at distance r → bubble radius R(r) and force F(r) (per sail model)
         → extracted power (drag turbine) → net = extracted − bottle power

Power is a grid, not a number

This is the thing that caused the earlier confusion. Output isn't "5 kW" or "5 MW" — it's a surface over bubble size × tip speed:

Net power (kW) at 1 AU, plasma magnet, ~2 kW superconducting bottle:

tip speed (material)25 km50 km100 km200 km400 km
0.5 km/s (steel)−1+1+9+41+169
1.6 km/s (Kevlar)+0+6+31+130+525
1.9 km/s (carbon fiber)+1+8+37+155+628
6.7 km/s (CNT)+6+32+134+542+2173

So it spans sub-kW to multi-MW. Both numbers I'd quoted were real — they were just different cells of this table. Small bubble + weak cable = kW; big bubble + strong cable = MW.

With distance: it depends on the sail model (and the bubble is not fixed-size)

For a 50 km bubble at 1 AU, carbon-fiber tips:

r (AU)plasma magnet: R, F, Prigid dipole: R, F, P
150 km, 10.5 N, 9.9 kW50 km, 10.5 N, 9.9 kW
10500 km, 10.5 N, 9.9 kW108 km, 0.49 N, 0.46 kW
301500 km, 10.5 N, 9.9 kW155 km, 0.11 N, 0.10 kW

Either way it never makes more power far out; the flat plasma-magnet case just holds while solar PV craters as 1/r² — so it only wins where PV has died.

Net, and can it power its own bottles?

Net = extracted − bottle. The make-or-break question (not free energy — the wind pays; and ideal magnetic deflection does no work, so a perfect bottle costs ~0 to maintain):

Buying a bigger bubble with field power

You can inflate the bubble by dumping power into the coil — even close to the Sun against the denser wind. But bubble radius grows only as the 6th root of power (R ∝ P^1/6), so a resistive coil's field bill explodes as R⁶ and net power craters (64× the power for 2× the bubble). A big bubble only pays if the field is held ~free — a superconducting coil (no ongoing power) or the wind-inflated plasma magnet. Then bubble size is a coil-design / mass choice, not a power drain, and you can build a big bubble at any distance — the denser inner-system wind just wants a stronger (heavier) coil, not more watts.

How big? (no sweet spot — bigger is better)

Two field technologies exist, but only the superconducting one is net-positive (a resistive coil's field bill grows as R⁶ and loses) — so this is the superconducting case. There is no interior optimum: net power grows with bubble area (∝ R²) from break-even (~22 km at 1 AU for a ~2 kW coil) upward, bounded only by how big a structure you can build (cable strength, coil mass). The design levers are the break-even floor and the structural ceiling, not a peak between them.

Riding outbound, and on a cycler

If it sails outbound, the relative wind drops toward the tip speed, so drag- turbine efficiency climbs toward its λ=1/3 optimum — but absolute power falls as v_rel³. A power station wants max relative wind → stay put. On an Earth–Mars cycler the ~30 km/s orbital motion barely dents the 400 km/s wind (±1.4%), so power is essentially the at-rest value across the leg. And extracting it acts as drag — momentum theory requires a downwind (anti-sunward) reaction force; that force is the magsail thrust, present whether or not you spin the rotor.

Honest value (the reality check)

For a few kW this is wildly over-engineered — a few kg of solar panels beat it near the Sun, a ~1-tonne Kilopower reactor beats it anywhere. Its real value is propellantless thrust (it's a sail), with power as a bonus — or MW-scale power in the deep outer system where panels are dead and reactors are heavy. The power case only opens at MW, far out, not at kW anywhere.

Tip-speed ceiling by material

Files

FileWhat
turbine.pyThe model + printed tables (python3 turbine.py)
test_turbine.pyPhysics tests — scaling laws, energy limits, drag curve
figures.pySVG figures (reuses the sibling package's plotter)
build_page.pyBuilds index.html (data straight from the model)
figures/SVGs (+ png/)