Learning Scientific Programming with Python (2nd edition)
P2.6.3: Earth Similarity Index
Question P2.6.3
The Earth Similarity Index (ESI) attempts to quantify the physical similarity between an astronomical body (usually a planet or moon) and Earth. It is defined by $$ \mathrm{ESI}_j = \prod_{i=1}^n \left( 1 - \left| \frac{x_{i,j} - x_{i, \oplus}}{x_{i,j} + x_{i,\oplus}} \right| \right)^{w_i / n} $$
where the parameters $x_{i,j}$ are described, and their terrestrial values, $x_{i,\oplus}$ and weights, $w_i$ given in the table below. The radius, density and escape velocities are taken relative to the terrestrial values. The ESI lies between 0 and 1, with the values closer to 1 indicating closer similarity to Earth (which has an ESI of exactly 1: Earth is identical to itself!)
$i$ | Parameter | Earth Value, $x_{i,\oplus}$ | Weight, $w_i$ |
---|---|---|---|
1 | Radius | 1.0 | 0.57 |
2 | Density | 1.0 | 1.07 |
3 | Escape velocity, $v_\mathrm{esc}$ | 1.0 | 0.7 |
4 | Surface temperature | 288 K | 5.58 |
The file ex2-6-g-esi-data.txt contains the above parameters for a range of astronomical bodies. Use these data to calculate the ESI for each of the bodies. Which has properties "closest" to those of the Earth?