I'm working on a program that calculates the habitable zones for stars.
It isn't finished (I need more data on some of the rarer types of planet) but it's in a good enough state that I can make it available without shame.
Version 0.25 (new, multiple-star systems) (Compiled Windows 64bit .exe and source.)
I've added a slightly modified version which works on Linux - install easygui for Python 3, pillow for Python 3 and then run the source from IDLE.
Keep the font file in the same folder as the source code.
Version 0.26 (Linux source only.)
Version 0.17 (older, gfx)
Version 0.14 (older, no gfx) (Windows executable.)
The Python script original is included in the archive if you're curious; if you want to compile it yourself it relies on easygui so you'll need that.
Extract the archive and run JSHZC17.exe;

Enter the parameters of the star you're looking at - its radius and temperature. (Defaults are for Sol.)

If you're curious about finding the expected temperature of a planet at a particular distance, enter that distance into one of the boxes here, otherwise accept the defaults.

You'll get an information list which shows you where the main habitable zone is (inside which you will find terraforming candidates and earthlike worlds); it also shows rough boundaries for where you can find non-terraformable water worlds, ammonia worlds and metal-rich worlds (I need more data to narrow down these zones, but they're broadly accurate.) The values for gas giants represent the closest a gas giant of that class can be, although again I'm not 100% certain they should be fairly close; it's not particularly useful information in any case. At the bottom, the values given show the blackbody, general (albedo 0.35, most planet types) and iceball (albedo 0.6, ice and rocky ice worlds) temperatures for given distances. If you find an ordinary planet without an atmosphere, it should have the "general" temperature, or if you find an iceball the "iceball" temperature. Gas giants are higher because they contribute heat of their own, and planets with an atmosphere will also be hotter, especially if the atmosphere is CO2.
The calculations are only accurate for single-star systems, although you may get decent results on multiple stars if they are a long way apart or if the primary is much brighter than the other stars.
There are some (very rare) handcoded systems (generally of type plain V) where the star's luminosity as evinced by the temperatures of planets does not match the parameters given in the system view. It's a funny old galaxy.
All feedback appreciated, happy scanning!
Updated link to v. 0.14; no major changes, narrowed down the bands for Ammonia and Metal-Rich Worlds a little.
Updated link to v. 0.15; added a logarithmic graphical display for the major zone boundaries, other minor tweaks.
Updated link to v. 0.16; entering a value of 0 for star radius will default to using the radius of a Neutron star, other minor tweaks including changed output to png.
Updated link to v. 0.17; modified the graphical display, added indicator for Class II Gas Giants ("the valuable ones, innit"), other minor tweaks.
Updated link to v. 0.25; added support for multiple-star systems, added indicator for Class I Gas Giants, greatly improved ranges for WW and AMW, added support for WD, other tweaks.

It isn't finished (I need more data on some of the rarer types of planet) but it's in a good enough state that I can make it available without shame.
Version 0.25 (new, multiple-star systems) (Compiled Windows 64bit .exe and source.)
I've added a slightly modified version which works on Linux - install easygui for Python 3, pillow for Python 3 and then run the source from IDLE.
Keep the font file in the same folder as the source code.
Version 0.26 (Linux source only.)
Version 0.17 (older, gfx)
Version 0.14 (older, no gfx) (Windows executable.)
The Python script original is included in the archive if you're curious; if you want to compile it yourself it relies on easygui so you'll need that.
Extract the archive and run JSHZC17.exe;

Enter the parameters of the star you're looking at - its radius and temperature. (Defaults are for Sol.)

If you're curious about finding the expected temperature of a planet at a particular distance, enter that distance into one of the boxes here, otherwise accept the defaults.

You'll get an information list which shows you where the main habitable zone is (inside which you will find terraforming candidates and earthlike worlds); it also shows rough boundaries for where you can find non-terraformable water worlds, ammonia worlds and metal-rich worlds (I need more data to narrow down these zones, but they're broadly accurate.) The values for gas giants represent the closest a gas giant of that class can be, although again I'm not 100% certain they should be fairly close; it's not particularly useful information in any case. At the bottom, the values given show the blackbody, general (albedo 0.35, most planet types) and iceball (albedo 0.6, ice and rocky ice worlds) temperatures for given distances. If you find an ordinary planet without an atmosphere, it should have the "general" temperature, or if you find an iceball the "iceball" temperature. Gas giants are higher because they contribute heat of their own, and planets with an atmosphere will also be hotter, especially if the atmosphere is CO2.
The calculations are only accurate for single-star systems, although you may get decent results on multiple stars if they are a long way apart or if the primary is much brighter than the other stars.
There are some (very rare) handcoded systems (generally of type plain V) where the star's luminosity as evinced by the temperatures of planets does not match the parameters given in the system view. It's a funny old galaxy.
All feedback appreciated, happy scanning!
Updated link to v. 0.14; no major changes, narrowed down the bands for Ammonia and Metal-Rich Worlds a little.
Updated link to v. 0.15; added a logarithmic graphical display for the major zone boundaries, other minor tweaks.
Updated link to v. 0.16; entering a value of 0 for star radius will default to using the radius of a Neutron star, other minor tweaks including changed output to png.
Updated link to v. 0.17; modified the graphical display, added indicator for Class II Gas Giants ("the valuable ones, innit"), other minor tweaks.
Updated link to v. 0.25; added support for multiple-star systems, added indicator for Class I Gas Giants, greatly improved ranges for WW and AMW, added support for WD, other tweaks.

Last edited: