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

AseAtomsAdaptor: Support arbitrary selective dynamics constraints #4229

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

yantar92
Copy link
Contributor

Summary

Major changes:

  • Implement full selective_dynamics support when converting to/from ASE atoms.

Todos

If this is work in progress, what else needs to be done?

  • I need directions to add tests.

Checklist

  • Google format doc strings added. Check with ruff.
  • Type annotations included. Check with mypy.
  • Tests added for new features/fixes.
  • If applicable, new classes/functions/modules have duecredit @due.dcite decorators to reference relevant papers by DOI (example)

Tip: Install pre-commit hooks to auto-check types and linting before every commit:

pip install -U pre-commit
pre-commit install

* src/pymatgen/io/ase.py (AseAtomsAdaptor.get_atoms): Use FixCartesian
constraint instead of FixAtoms.  FixCartesian can constrain individual
coordinates and directly map selective dynamics settings.
(AseAtomsAdaptor.get_structure): Add mapping from FixCartesian
constraint to selective dynamics.
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.

1 participant