pymatgen icon indicating copy to clipboard operation
pymatgen copied to clipboard

[WIP] Input/output for CASTEP

Open mkhorton opened this issue 4 years ago • 0 comments

Summary

Uses some code from the MIT-licensed sumo implementation by @ajjackson, used with permission (thank you!).

I've re-worked the .cell implementation to make it more consistent with other parts of pymatgen (write_file instead of to_file, adding a __str__ method), added type hints. I also added a CellKeyword and ParamKeyword Enum nominally for avoiding bugs, though in practice likely just to make things more awkward. This interface also adds magnetic moment writing and parsing.

Opening the PR now in case there are any comments that might affect the implementation before I finish working on it.

Additional dependencies introduced (if any)

  • None

TODO (if any)

  • [x] .cell I/O
  • [x] .param I/O
  • [ ] A more general KPoints class, perhaps a unified interface for both VASP and CASTEP
  • [x] Basic input set for static energy calculation and relaxation

Later, not in this PR, will be band structure parsing.

mkhorton avatar Feb 02 '21 06:02 mkhorton