Skip to content

Method that utilizes variety-based matrix completion to recover projected Hessian eigenvalues constituting the minimum energy path of a reaction

License

Notifications You must be signed in to change notification settings

RateTheory/HVMC

Repository files navigation

Method that utilizes variety-based matrix completion (VMC) to recover projected Hessian eigenvalues constituting the minimum energy path of a reaction. 
Reference: https://aip.scitation.org/doi/abs/10.1063/5.0018326


File Descriptions: 

VMCoptions.py - master file to run VMC calculations 
vmc.py - VMC algorithm (adapted from the MATLAB version: https://github.com/gregongie/vmc) described in G. Ongie, R. Willett, R. Nowak, L. Balzano. "Algebraic Variety Models for High-Rank Matrix Completion", in ICML 2017. Available online: https://arxiv.org/abs/1703.09631 
AnalyzeResults.py - postprocessing VMC output 
calcFreeEnergy.py - supporting file to compute zero-point energy and vibrational free energy contributions
ZCT.py - supporting file to compute transmission coefficient based on zero-curvature tunneling
spline.py - supporting file for transmission coefficient calculation
Systems/ - folder that contains .pkl input files for VMC calculations
Examples/ - folder that contains sample output .pkl files 
ResultsPKL/ and ResultsZCT/ and Figures/ - folders where the output files are saved, these will be created automatically when VMCoptions.py is run for the first time.



VMC Procedure:

1. In 'VMCoptions.py', change the filename to the path of any of the pkl files listed in Systems/. Can select from Lines 136-151
2. Set density as a value between 0 and 1: This sets the number of elements of the C matrix that are available to the VMC algorithm. 1-density: data that must be completed. Line 225
3. Set ntrials to desired value. Since elements in C are masked at random, you need >1 trial (paper uses 100 trials/reaction). Line 226
4. Adjust parameters in the VMCoptions() class call
   Do not change 'd=2' as this corresponds to the power of the polynomial
5. Run the file
6. The file generates an output .pkl file, which can be analyzed with 'AnalyzeResults.py' 
7. Set this output filename as the filename in AnalyzeResults.py 
8. Set the filename_true to the original .pkl file from step 1. Can select fom Lines 22-37
8. Run AnalyzeResults.py to plot model performance
   Set temperature for transmission coefficient calculations. Line 44
   Set calc_ZCT = True, for activating transmission coefficient calculations based on zero-curvature tunneling. Line 45
   Set mirror = True, if half of the MEP is used in C matrix (i.e.,SN2 type reactions). Line 46
   Set use_trueVAGandE0 = False, to use integral limits EO and VAG of each trial instead of the DFT-calculated (true) values in ZCT calculations. Line 47


Package Requirements:
- Numpy
- Scipy
- Matplotlib
- Pandas
- Seaborn
- Math
- Imageio

About

Method that utilizes variety-based matrix completion to recover projected Hessian eigenvalues constituting the minimum energy path of a reaction

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages