Wolfram Language

Geo Computation

The Martian

Compute, represent, and measure an estimation of the path followed by Mark Watney in the book The Martian, when traveling from the Ares 3 HAB to the Ares 4 MAV.

All positions in this example refer to positions on Mars. That can be specified explicitly in GeoPosition, or later through the GeoModel option.

These are estimations of the positions of the Ares 3 and 4 landings.

In[1]:=
Click for copyable input
ares3 = GeoPosition[{31.2, -28.5}, "Mars"]; ares4 = GeoPosition[{-4.32, 15.28}, "Mars"];

Therefore, this is the first approximation to Mark's trip across Mars.

In[2]:=
Click for copyable input
GeoGraphics[{Orange, Thick, Arrow@GeoPath[{ares3, ares4}]}, GeoRange -> All, GeoProjection -> "Orthographic", Background -> Black]
Out[2]=

From the Ares 3 HAB, Mark follows a water-carved valley called Mawrth Vallis.

In[3]:=
Click for copyable input
mawrthVallis = GeoPosition[CompressedData[" 1:eJxTTMoPSmViYGCQAGIQLd/6OnCHnJXDN42Y/kOlxgdsua4vLvhr6QAkbbnE jQ8wgMABS4d17g+rRNYZHZg1EwgiLaHqjQ5wgRVaOhz+ChRwMoKqt3BYAhS9 rmx0AKTLPdHCoRBksIHRgf5DQIX8Fg4iIANDjA5oAo35usLcAaLO6EDQDjmg ixD8s2eAgMccrj4NBJ6Zwc0DK99h5vAmEMQyPACmV5s5gN3RYAixf6GZA8Re wwNgdzbB5A0OGINAsZkDxB8GEPf5m0H8H64P9Z8ZxH+H9CDqN5tC/at3AOIu U0h4fNWF2Kdo6uABYhzXhaj/bAL1jy5E/RUTB3A4ztQ5AAD2PaQO "]];
In[4]:=
Click for copyable input
GeoGraphics[{Thick, Orange, Arrow@GeoPath[mawrthVallis]}, GeoModel -> "Mars", GeoRangePadding -> Quantity[100, "Miles"]]
Out[4]=

Then Mark passes between the Trouvelot and Rutherford craters.

In[5]:=
Click for copyable input
GeoPosition /@ {Entity["SolarSystemFeature", "TrouvelotMars"], Entity["SolarSystemFeature", "RutherfordMars"]}
Out[5]=
In[6]:=
Click for copyable input
rtCraters = GeoPosition[{17.52, -11.91}, "Mars"];

And then he travels to the Marth Crater.

In[7]:=
Click for copyable input
marthCrater = GeoPosition[Entity["SolarSystemFeature", "MarthMars"]]
Out[7]=

From there he travels 540 kilometers south.

In[8]:=
Click for copyable input
pos540S = GeoDestination[marthCrater, GeoDisplacement[{Quantity[540, "Kilometers"], "South"}]]
Out[8]=

And finally, he gets close to the Schiaparelli Crater.

In[9]:=
Click for copyable input
schiaparelliCrater = GeoPosition[{-0.16, 14.38}, "Mars"]
Out[9]=
In[10]:=
Click for copyable input
geopath = GeoPath[{{ares3, mawrthVallis[[1, 1]]}, mawrthVallis, {mawrthVallis[[1, -1]], rtCraters, marthCrater, pos540S, schiaparelliCrater, ares4}}];

This geo path has the following length on the surface of Mars.

In[11]:=
Click for copyable input
GeoLength[geopath, GeoModel -> "Mars"]
Out[11]=

Finally, add a number of places mentioned in the book, with respective labels.

In[12]:=
Click for copyable input
labeled[pos_, label_, offset_: {Left, Bottom}] := {Point[pos], Text[Style[label, Directive[12, Italic, White]], pos, offset]}
In[13]:=
Click for copyable input
points = labeled @@@ Join[EntityValue[{Entity["SolarSystemFeature", "ArabiaTerraMars"], Entity["DeepSpaceProbe", "MarsPathfinder"], Entity["DeepSpaceProbe", "MERDashBOpportunityRover"], Entity["SolarSystemFeature", "TerraMeridianiMars"], Entity["SolarSystemFeature", "RutherfordMars"], Entity["SolarSystemFeature", "BecquerelMars"], Entity["SolarSystemFeature", "TrouvelotMars"], Entity["SolarSystemFeature", "MarthMars"]}, {"Position", "Name"}], { {ares3, "Ares 3 HAB"}, {ares4, "Ares 4 MAV", {Right, Bottom}}}];

This is the final map of the trip.

In[14]:=
Click for copyable input
GeoGraphics[{Orange, Thick, geopath, PointSize[Large], points}, GeoModel -> "Mars"]
Out[14]=

Related Examples

de es fr ja ko pt-br ru zh