The scripts in this folder (and the git history) contain the entirety of the analysis performed for this publication. In the event that some crazy individual wants to trace this analysis exactly, it is possible--with relatively little effort--to do so by following the steps below.
In order to keep the size of this source repository down, I've separated the source data from the repository itself. All of the source data files are publicly available, and I've created the setup_data.py
script for downloading and processing the source files into the data files that are used for analysis. If you do decide to re-run this analysis, the total collection of source files is about 4 gigabytes (or more if you start pulling additional files that are available).
In order to reproduce the figures exactly, I recommend installing the exact same libraries that were used to generate them in the first place:
- Python 2.7.13
- dolfyn 0.8.0
- MatPlotLib 1.5.1
- NumPy 1.12.1
- scipy 0.19.0
- h5py 2.7.0,
- mpl_basemap 1.0.7, for the map (Figure 1).
- LaTeX, for generating figure math text
Once you have Python installed, you can get most of these packages--excluding basemap and LaTeX--by doing:
$ pip install -r requirements.txt
If you want to be able to reproduce Figure 1 (the map without the annotations, which were added in inkscape), follow the instruction for installing basemap.
Next, you need to do a bit more git
magic and install the submodules that this library depends on:
$ git submodule update --init
Once those steps are complete, the source data can be downloaded and processed by:
$ python setup_data.py
This will download source data from MHK Data Repository datasets 49, 50, 51, and 223. This will take some time and disk space (approximately 4GB). Once that step is complete, all of the figures in the final publication can be re-generated by doing:
$ python make_figs.py
Note that this script executes several other scripts. These scripts include many other analyses intermediate analyses/figures that were not documented in the report. The scripts make heavy use of flags (in the form of a flag
variable) to determine which pieces of the analysis are done. Thus, if you want to look at those additional analyses, simply set the relavent flag to True
.