Semi-supervised learning code + CAVD + BVSE + QE-NEB for identifying prospective ion conductors.
Overview: Semi-supervised Learning. The semi-supervised learning pipeline is split into six sub steps which are documented sequentially in the following notebooks:
- (Step1_Data_Pull_and_Clean.inyb): Pulls data from Materials Project and the ICSD folder. Merges structures that are contained in both databases. Charge decoration is applied to structures for enhanced compbatility with the descriptor transformations. Structure simplifications are applied.
- (Step2_Labeling_Data.inyb): Pulls in the labels csv and merges them with the structures from step 1.
- (Step3_Generating_Descriptors.inyb): Applies the descriptor transformations to the structures (or simplified structures).
- (Step4_Screening_Descriptors.inyb): Not all structures are compatible with all descriptor transformations. The descriptor space is screened to identify a subset of structures that is compatible with all descriptors.
- (Step5_Agglomerative_Clustering.inyb): Agglomerative clustering is applied to the descriptor space. The resulting sets of 2-300 clusters are labeled with the room temperature ionic conductivity data. The Ward variance is calculated for the conductivity labels.
- (Step6_Comparing_Models.inyb): Code to visualize and compare each agglomerative clustering model.
Overview: CAVD+BVSE+NEB. To expedite Nudged Elastic Band (NEB) calculations in Quantum Espresso, initials pathways were guessed by using Crystal Analysis by Voronoi Decomposition (CAVD) and Bond Valence Site Energy (BVSE) calculations. The notebook working_cavd_bvse_neb.inyb documents the entire process, all the way through performing an NEB calculation in Quantum Espresso. Qualitatively, the following steps are performed:
- Check that an input structure is ordered. Otherwise order it.
- Determine suitable hyperparamters by running self-consistent field (SCF) calculations on the input structure.
- kmesh - the k-space mesh.
- Ecutwfc - the wavefunction kinetic energy cutoff.
- Ecutrho - the charge density and potential kinetic energy cutoff.
- With suitable hyperparameters determined, relax the input structure to ~zero pressure.
- Run the voronoi decomposition algorithm (CAVD) to find void pathways through the structure.
- Run the bond valence site energy (BVSE) calculation to estimate the electrostatic force field.
- Merge the CAVD and BVSE results to identify low-activation energy pathways.
- Select a pathway to examine.
- Generate an initial and final image from the pathway, by removing the relevant mobile ion.
- Relax the initial and final image to ~zero pressure.
- Create intermediate images by combining the CAVD+BVSE results with interpolation:
- Framework ions are interpolated between the initial and final images.
- Mobile ions are placed along the CAVD+BVSE pathway.
- Run & interperet Nudged Elastic Band on the images.
The CAVD and BVSE libraries were originally generated by the Siqi Shi group. The code herein is altered for compability with Quantum Espresso. For VASP compatibility, their repo can be found here: https://gitee.com/shuhebing/cavd/tree/release
Jupyter-lab Notes: This jupyter notebook makes use of multiple jupyterlab extensions:
- @jupyterlab/toc - for table of contents management
- @aquirdturtle/collapsible_headings - for collapsing sections
Two additional extensions are used for git management:
- @jupyterlab/git - for github integration
- @jupyterlab/nbdime-jupyterlab - for viewing revision history