The data in this directory generates all of the plots in the paper "Memory formation in jammed hard spheres" by P. Charbonneau and P.K. Morse. While self contained, if there are any questions about access, the corresponding author can be reached at peter.k.morse@gmail.com Versions of programs used for Data Generation: Python 3.6.4 GCC 7.4.0 pybind11 c++17 Versions of programs used for Data Analysis: MATLAB R2019a The directory structure itself is used to parse data. The structure conforms to UNIX standards using the backslash "/". Attempts have been made in the analysis scripts to be agnostic to the file separation key by using the MATLAB keyword "filesep", however, if any issues arise, this will be the likely culprit. The data generation has been optimized and tested on UNIX systems. While it has been tested on Windows operating systems, modifications to the make file may be necessary, in particular to the linking of pybind11. See documentation of pybind11 for support. The directory is organized as follows: 1) Data 2) Graphing 3) Sample Script 4) monteCarloPCP 1) Data The data here is read by each of the graphing programs. The abbreviations here correspond to their use in the paper. Where numbers exist (specifically 2), they are indicative of artifacts which do not change between runs. Otherwise, the following key will be useful: dimension (d) - The physical dimension of space number_of_particles (N) - The number of particles in this simulation phi_eq - The packing fraction of the equilibrated liquid before the crunch seed_number - For reproducability, the seed_number is used as a random seed. In this analysis it differentiates between runs for which all other parameters are equal tau - Related to the cutoff number in the minimization steps. In this case, this is actually listed as tau * d, due to an artifact in the generation of the code. Thus, a value of 6 in 3d indicates that the tau from the paper is 2. theta - The inflation value used during the crunch. Note also that we require 0 < theta < 1. phi_J - The inherent state of the liquid, and the ending packing fraction of the crunching process phi_G - The Gardner-like transition density mentioned in the text of the paper phi_break - The density at which a replica is made in the state following process contact_overlap - The overlap between contact sets described in the paper [eqn involving (c_i ^ c_j)/(c_i U c_j)] gardner - file holder, under which the phi_G folder is located The general directory structure for phi_J is as follows dimension/number_of_particles/phi_eq/seed_number/2/tau/theta/phi_J/ The general directory structure for phi_G is as follows dimension/number_of_particles/phi_eq/seed_number/2/tau/theta/gardner/phi_G The directory structure for gardnerCopies gives a series of data files listed with the system size given by *, indicating the file for system sizes N=256, N=512, N=1024, and N=2048. The tokens used here are the same as those above. a) contactComp1N*.dat for which the data is structured as seed_number/2/tau/theta/phi_break/0/phi_G/contact_overlap b) gCopiesFile1N*.dat for which the data is structured as seed_number/2/tau/theta/phi_break/0/phi_G c) gPhiFileN*.dat for which the data is structured as seed_number/2/tau/theta/gardner/phi_G d) phiJFileN*.dat for which the data is structured as seed_number/2/tau/theta/phi_break Within the phiJ folder, there exist files which give the positions and the following for each step of the algorithm: phi, FIREIterations, min_gap, mean_gap. They are listed below. phi.dat - packing fraction FIREIterations.dat - Number of steps of the minimization minGapList.dat - minimum normalized gap (normalization described in the manuscript) meanGap.dat - average normalized gap (normalization described in the manuscript) 2) Graphing Each MATLAB function creates a set of the graphs in the paper and the supplement. Data is read automatically if the directory structure is unchanged. The correspondence is as follows: gardnerCopiesPaper.m: 3c, S7 gardnerDistanceGraphsPaper.m: 3a, 3b gardnerPlotsLogLSQPaper.m: 4, S5d-f onsetParameterSweep4dPaper.m: S1e-h onsetParameterSweepPaper.m: S1a-d onsetPlotsLogLSQPaper.m: 1b, 1c, 2, S5a-c phiCompareOnsetPaper.m: 2(inset) phiJCompareSSHSPaper: S3 timeForLogMinGraphPaper: S2 Additionally, several accessory functions are included nlinmultifit.m onsetReluWithLinear.m plotSpecs.m saveascii.m 3) Sample Script A sample script is included which jams a hard sphere system from a thermalized packing (which is also created). To run, simply execute the following command: python3 logCrunch seed_number dimension number_of_particles phi_eq theta tau bidisperse[boolean] save_middle_steps[boolean, should be 0] save_directory 4) monteCarloPCP monteCarloPCP is the code which generates the packings. It must be made by typing "make clean; make" in the folder monteCarloPCP/Release monteCarloPCP requires pybind11 (https://github.com/pybind/pybind11) to be included in this base folder, or else the make file must be altered to link directly to the pybind folder. It may also be necessary to locate the python folder and alter the address of it accordingly. As this code is continually developed, an updated version of monteCarloPCP can be obtained from P.K. Morse at peter.k.morse@gmail.com. Public distribution will be provided via github at a later date.