A study of how to compute electronic stopping power quickly using a combination of machine learning and Time-Dependent Density Functional Theory (TD-DFT).
See our paper for more details.
A version of this project with the datasets and outputs used when writing our paper is on the Materials Data Facility
The environment for this project is defined in requirements_cpu.txt, and you can install it through pip.
This project is broken in to several subfolders.
datasets contains all of the TD-DFT data associated with this project.
It is not tracked by git, so get the data from our two
datasets on the Materials Data Facility.
stopping_power_ml is a Python module that contains utility operations for this project.
Generally, these are methods that are used in more than one notebook.
single-velocity contains notebooks related to predicting the stopping power using only data
relating to a single projectile velocity. We explore whether these models can be used
to determine whether ML can be used to halt a stopping power calculation early, and
whether our model can predict stopping power in different directions than
what was included in the training set.
multiple-velocities contains notebooks for testing whether our models
can predict stopping powers in different directions and velocities.
You will notice that the name for each notebook starts with a number. To run the notebooks, execute them in the order indicated by this number because the output of some notebooks are used as inputs into the following notebooks.
A word of warning: the two notebooks in the root directory 0_parse_qbox and
1_generate_representation take a significant amount of computing time to complete.