Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CREST Basic I/O #2020

Merged
merged 69 commits into from Jun 17, 2021
Merged

CREST Basic I/O #2020

merged 69 commits into from Jun 17, 2021

Conversation

arepstein
Copy link

@arepstein arepstein commented Dec 24, 2020

Summary

  • Added CRESTOutput to parse CREST output directories in pymatgen.io.xtb.outputs
  • Added CRESTInput to write CREST input files in pymatgen.io.xtb.inputs
  • Added tests and test files for CRESTOutput and CRESTInput

Additional dependencies introduced (if any)

  • None

TODO (if any)

  • XTB i/o still missing
  • CRESTOutput supports the default conformer searching method, but needs tests for non-default methods.
  • CRESTInput supports writing a coordinate file and a .constrains file, but other files might be valuable to add
  • Add parsing of .xcontrol
  • Add improved error handling methods

Checklist

Work-in-progress pull requests are encouraged, but please put [WIP]
in the pull request title.

Before a pull request can be merged, the following items must be checked:

Note that the CI system will run all the above checks. But it will be much more
efficient if you already fix most errors prior to submitting the PR. It is
highly recommended that you use the pre-commit hook provided in the pymatgen
repository. Simply cp pre-commit .git/hooks and a check will be run prior to
allowing commits.

espottesmith and others added 30 commits March 16, 2020 16:57
Added CREST output parse to xtb/outputs
build failed, trying to fix
still trying to fix build bug
Try to parse crest_best even if failure
adding try except maybe incorrectly
trying to fix ascii decode bug
Parsing final rotamers file instead of conformers file
If only one rotamer output, there's no numeric label
QuasiRRHO for Gaussian, manual input
Decorated output pmg mol with charge
QuasiRRHO with QC and Gau funcitonality
Created test classes, deleted Evan's XTB contributions that aren't CREST
Changed use of openbabel to conditional
added docstring
Prepping quasirrho for PR, added tests for GaussianOutput, QChemOutput, and manual output
@arepstein arepstein changed the title [WIP] CREST Output parsing CREST Output parsing Jun 3, 2021
Alex Epstein added 3 commits June 3, 2021 16:30
Should be separate commit
reran pycodestyle and flake8
added new line at end of file
@coveralls
Copy link

coveralls commented Jun 3, 2021

Coverage Status

Coverage decreased (-0.6%) to 83.093% when pulling ba54f14 on arepstein:ae_Crest into 14150a9 on materialsproject:master.

Added conditional to have babel for check_for_Structure_Changes
@arepstein arepstein changed the title CREST Output parsing [WIP] CREST Basic I/O Jun 7, 2021
Adds inputs.py, which has the CRESTInput class. Primary function is writing the .constrains file if constraints are desired
@arepstein arepstein changed the title [WIP] CREST Basic I/O CREST Basic I/O Jun 7, 2021
Alex Epstein added 10 commits June 7, 2021 13:41
Added working_dir parameter to allow for writing files outside of current directory. Also improved docstrings
Updated with constraints as static method
Confused amount black vs black -l 79 based on flake8 sometimes disagreeing with black line lengths
Trying Matt Horton's recommendation to resolve pylint error in last commit
@mkhorton
Copy link
Member

I'm going to merge this since the only issue is the same listing issue affecting the main branch and otherwise this PR looks excellent -- thank you @arepstein !

@mkhorton mkhorton merged commit 9052bd5 into materialsproject:master Jun 17, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants