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

VASP/Phonopy Phonon Workflow #137

Merged
merged 77 commits into from
Sep 6, 2022
Merged
Show file tree
Hide file tree
Changes from 76 commits
Commits
Show all changes
77 commits
Select commit Hold shift + click to select a range
4c898a5
first rough implemenation phonon workflow
JaGeo May 16, 2022
28f8b43
Further additions to free energy part
JaGeo May 18, 2022
56b0643
add more flexibility
JaGeo May 20, 2022
c707bd3
further fixes along the workflow
JaGeo May 23, 2022
63f338d
make born optional and precommit
JaGeo May 30, 2022
ce74c41
switch to transfer via output
JaGeo May 31, 2022
b113c70
pass precommit
JaGeo Jun 9, 2022
762c86c
fixes
JaGeo Jun 9, 2022
4aac6c1
more bug fixing and typo removal
JaGeo Jun 10, 2022
02e3a8d
Fix born charge bug
JaGeo Jun 10, 2022
39aa228
new PhononBSDoc and inclusion of thermal matrices
JaGeo Jun 17, 2022
26fe95b
Fix parameters
JaGeo Jul 7, 2022
3af674b
Fix kwargs
JaGeo Jul 7, 2022
393d287
Fix failures
JaGeo Jul 7, 2022
92e1bf8
precommit
JaGeo Aug 3, 2022
b9a8eae
clean up document
JaGeo Aug 3, 2022
2bbe493
Fix thermal displacement computation
JaGeo Aug 5, 2022
23ac9c4
Merge branch 'main' of github.com:materialsproject/atomate2
JaGeo Aug 5, 2022
56076a4
Add different supercell algorithm
JaGeo Aug 6, 2022
acf2732
Clean up documentation
JaGeo Aug 10, 2022
c55ce30
Merge branch 'main' of github.com:materialsproject/atomate2
JaGeo Aug 27, 2022
64952df
review comments
JaGeo Aug 27, 2022
e019110
Fix symmetrized structure
JaGeo Aug 28, 2022
3eca76a
Fix further side effects
JaGeo Aug 29, 2022
5bc1ece
Fixing some logic
JaGeo Aug 29, 2022
0c60d63
resolve pyproject toml
JaGeo Aug 30, 2022
33a01e5
Update documentation according to review suggestions
JaGeo Aug 30, 2022
bc42d03
commit renaming as suggestion by review
JaGeo Aug 30, 2022
b8ff4db
move to kwargs
JaGeo Aug 30, 2022
faf4b4c
move more to kwargs
JaGeo Aug 30, 2022
7cd525f
Fix formatting of comment
JaGeo Aug 30, 2022
55a4ec7
Update documentation
JaGeo Aug 30, 2022
2833caf
fix parameter
JaGeo Aug 30, 2022
ee40f85
Fix missing parameter
JaGeo Aug 30, 2022
abbcca4
Fix kwarg implementation
JaGeo Aug 30, 2022
aef6006
correct kwargs passing again
JaGeo Aug 30, 2022
091e366
Fix total_dft_energy
JaGeo Aug 30, 2022
7f38751
Fix total_dft_energy
JaGeo Aug 30, 2022
3086982
Fix further side effect kwargs
JaGeo Aug 30, 2022
c506b03
hopefully last side effects kwargs
JaGeo Aug 30, 2022
0b31cdf
fix type error
JaGeo Aug 30, 2022
0549052
fix type error2
JaGeo Aug 30, 2022
3b55be2
Fix pydantic error
JaGeo Aug 30, 2022
b4b685a
Add first two tests and remove inconsistencies
JaGeo Aug 31, 2022
2806b3b
fix kpath schemes
JaGeo Aug 31, 2022
f13ffce
change total_dft_energy to energy per formula unit
JaGeo Aug 31, 2022
c5375a5
add test of supply born, epsilon
JaGeo Aug 31, 2022
98bcc48
add more outputs phonopy
JaGeo Aug 31, 2022
b345293
Add more cell definitions
JaGeo Aug 31, 2022
925f4c8
Change default number of free energies
JaGeo Aug 31, 2022
68c64aa
add complete run
JaGeo Aug 31, 2022
4426a82
test commit
JaGeo Sep 1, 2022
67d120f
add last test
JaGeo Sep 2, 2022
c2841d8
Fix test names
JaGeo Sep 2, 2022
05f4ea5
fix documentation
JaGeo Sep 2, 2022
6b47048
Update structures
JaGeo Sep 2, 2022
cfb7255
Fix docstring
JaGeo Sep 2, 2022
a5d570c
Fix docstring
JaGeo Sep 2, 2022
67d7c9a
More docstring fixes
JaGeo Sep 2, 2022
98fd063
Fix doc
JaGeo Sep 2, 2022
0cf7937
change test workflow
JaGeo Sep 2, 2022
8708677
add it to correct workflow
JaGeo Sep 2, 2022
dbdad2c
Add seekpath
JaGeo Sep 2, 2022
70b05fe
Update src/atomate2/vasp/flows/phonons.py
JaGeo Sep 5, 2022
0d67c62
Remove useless lines from test
JaGeo Sep 5, 2022
94b341c
Merge branch 'main' of github.com:JaGeo/atomate2
JaGeo Sep 5, 2022
1e01005
Update installation and test config
JaGeo Sep 5, 2022
52ad56c
Fix first documentation issues
JaGeo Sep 5, 2022
10aa4a0
Move functions to common
JaGeo Sep 5, 2022
724a471
Move functions to common
JaGeo Sep 5, 2022
4a44736
extend documentation
JaGeo Sep 5, 2022
7fc36d4
Add further metadata
JaGeo Sep 5, 2022
50793f9
add further data
JaGeo Sep 5, 2022
131a1ae
One last tiny change on the documentation
JaGeo Sep 5, 2022
514eb16
add blank line
JaGeo Sep 5, 2022
9a4e98c
Add a t to hat
JaGeo Sep 5, 2022
faf9515
Fix identation issue
JaGeo Sep 5, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 6 additions & 4 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,9 @@ classifiers = [
"Topic :: Scientific/Engineering",
]
requires-python = '>="3.8"'
dependencies = [
"pymatgen>=2022.7.8",
"custodian>=2019.8.24",
dependencies =[
"pymatgen>=2022.8.23",
"custodian>=2022.5.26",
"pydantic",
"monty",
"jobflow>=0.1.5",
Expand All @@ -38,7 +38,7 @@ dependencies = [
[project.optional-dependencies]
amset = ["amset>=0.4.15", "pydash"]
cclib = ["cclib"]
phonons = ["phonopy>=1.10.8"]
phonons = ["phonopy>=1.10.8", "seekpath"]
utf marked this conversation as resolved.
Show resolved Hide resolved
docs = [
"numpydoc==1.3.1",
"mistune==0.8.4",
Expand All @@ -62,6 +62,8 @@ strict = [
"click==8.1.3",
"PyYAML==6.0",
"cclib==1.7.1",
"phonopy==2.15.1",
"seekpath==2.0.1",
"numpy",
]

Expand Down
39 changes: 30 additions & 9 deletions src/atomate2/common/jobs.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,25 +6,46 @@

from atomate2 import SETTINGS

__all__ = ["structure_to_primitive", "structure_to_conventional"]


@job
def symmetrize_structure(
structure: Structure, symprec: float = SETTINGS.SYMPREC
) -> Structure:
def structure_to_primitive(structure: Structure, symprec: float = SETTINGS.SYMPREC):
"""
Symmetrize a structure.
Job that creates a standard primitive structure.

Parameters
----------
structure : .Structure
A structure.
symprec : float
The symmetry precision.
structure: Structure object
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think these should be indented an extra level.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrected.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

And, tests have to be restarted, of course. Sorry.

input structure that will be transformed
symprec: float
precision to determine symmetry

Returns
-------
.Structure
A symmetrized structure

"""
sga = SpacegroupAnalyzer(structure, symprec=symprec)
return sga.get_primitive_standard_structure()


@job
def structure_to_conventional(structure: Structure, symprec: float = SETTINGS.SYMPREC):
"""
Job hat creates a standard conventional structure.

Parameters
----------
structure: Structure object
input structure that will be transformed
symprec: float
precision to determine symmetry

Returns
-------
.Structure

"""
sga = SpacegroupAnalyzer(structure, symprec=symprec)
return sga.get_conventional_standard_structure()
Loading