Skip to content

Commit 36a4072

Browse files
committed
ensure use_custodian() does not overwrite modify_gzip_vasp(wf, False) (closes #719)
1 parent 43a347a commit 36a4072

File tree

1 file changed

+11
-7
lines changed

1 file changed

+11
-7
lines changed

atomate/vasp/powerups.py

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -83,17 +83,19 @@ def use_custodian(original_wf, fw_name_constraint=None, custodian_params=None):
8383
Returns:
8484
Workflow
8585
"""
86-
custodian_params = custodian_params if custodian_params else {}
86+
custodian_params = custodian_params or {}
8787
vasp_fws_and_tasks = get_fws_and_tasks(
8888
original_wf,
8989
fw_name_constraint=fw_name_constraint,
9090
task_name_constraint="RunVasp",
9191
)
9292
for idx_fw, idx_t in vasp_fws_and_tasks:
93-
if "vasp_cmd" not in custodian_params:
94-
custodian_params["vasp_cmd"] = original_wf.fws[idx_fw].tasks[idx_t][
95-
"vasp_cmd"
96-
]
93+
for param in (
94+
RunVaspCustodian.optional_params + RunVaspCustodian.required_params
95+
):
96+
value = original_wf.fws[idx_fw].tasks[idx_t].get(param, None)
97+
if value is not None and param not in custodian_params:
98+
custodian_params[param] = value
9799
original_wf.fws[idx_fw].tasks[idx_t] = RunVaspCustodian(**custodian_params)
98100
return original_wf
99101

@@ -723,12 +725,14 @@ def use_gamma_vasp(original_wf, gamma_vasp_cmd):
723725

724726
def modify_gzip_vasp(original_wf, gzip_output):
725727
"""
726-
For all RunVaspCustodian tasks, modify gzip_output boolean
728+
For all RunVaspCustodian tasks, modify gzip_output boolean.
729+
727730
Args:
728731
original_wf (Workflow)
729732
gzip_output (bool): Value to set gzip_output to for RunVaspCustodian
733+
730734
Returns:
731-
Workflow
735+
Workflow: Same workflow as passed in with in-place modified gzip_output.
732736
"""
733737
idx_list = get_fws_and_tasks(original_wf, task_name_constraint="RunVaspCustodian")
734738
for idx_fw, idx_t in idx_list:

0 commit comments

Comments
 (0)