-
Notifications
You must be signed in to change notification settings - Fork 70
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
Changing how task_types
are determined
#964
Comments
@matthewkuner I'm pretty this would be okay, however I would want to double check under what conditions the transformations file is written out by atomate/atomate2. |
@matthewkuner in addition to @munrojm's comment, we'd have to take into account what happens when the transformations file should be present but isn't. This can happen when the user forgets to add it to the upload, or internally, when we forget to restore it from HPSS. Is there any way we could deduce from the INCAR or other standard VASP input files that a transformations file should be present? I would also want to hear @esoteric-ephemera's opinion on the allowing other ISIF values. |
For atomate2, the transformations.json file is written for the elastic and EOS workflows. Not sure about atomate flows Allowing certain other ISIF values is OK. ISIF = 2 or 4 keep the cell volume fixed but let other degrees of freedom relax, which is why both are commonly used for EOS fitting, and why ISIF = 2 is marked as a deformation run I've personally never had a need to use 5 <= ISIF <= 8; they are just other combinations of which degrees of freedom relax Which values we allow depends on which kinds of runs we want to accept generally. For a structure to be fully relaxed wrt all possible degrees of freedom (the true lowest energy / ground state structure), ISIF = 3 is necessary. But there are good reasons to use the other values |
@computron @utf Does Atomate 1's VASP elastic constant workflow always output a Moreover, are there any cases where the VASP elastic constant workflow in Atomate 1 would create multiple |
emmet/emmet-core/emmet/core/vasp/calc_types/utils.py
Line 106 in c4580e2
Can we change the identification of deformation calculations to be dependent on a transformations.json file instead of on ISIF=2? And along the same vein, can we have
Structure Optimization
tasks be for any ISIF >= 2? This is especially necessary if we want to crowd-source external calculations which may relax their structures using ISIFs other than 3.My envisioned replacement (pseudo-)code would look like:
Note that this order of calc_type assignment is opposite of the current logic (i.e. the current logic has the elif statement for Structure Optimization first, and then Deformation)
This may impact downstream builders / require data patching--I'm ignorant to the implications. @munrojm @tschaume @yang-ruoxi @tsmathis please let me know if you have any comments/concerns about this
The text was updated successfully, but these errors were encountered: