@@ -83,17 +83,19 @@ def use_custodian(original_wf, fw_name_constraint=None, custodian_params=None):
83
83
Returns:
84
84
Workflow
85
85
"""
86
- custodian_params = custodian_params if custodian_params else {}
86
+ custodian_params = custodian_params or {}
87
87
vasp_fws_and_tasks = get_fws_and_tasks (
88
88
original_wf ,
89
89
fw_name_constraint = fw_name_constraint ,
90
90
task_name_constraint = "RunVasp" ,
91
91
)
92
92
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
97
99
original_wf .fws [idx_fw ].tasks [idx_t ] = RunVaspCustodian (** custodian_params )
98
100
return original_wf
99
101
@@ -723,12 +725,14 @@ def use_gamma_vasp(original_wf, gamma_vasp_cmd):
723
725
724
726
def modify_gzip_vasp (original_wf , gzip_output ):
725
727
"""
726
- For all RunVaspCustodian tasks, modify gzip_output boolean
728
+ For all RunVaspCustodian tasks, modify gzip_output boolean.
729
+
727
730
Args:
728
731
original_wf (Workflow)
729
732
gzip_output (bool): Value to set gzip_output to for RunVaspCustodian
733
+
730
734
Returns:
731
- Workflow
735
+ Workflow: Same workflow as passed in with in-place modified gzip_output.
732
736
"""
733
737
idx_list = get_fws_and_tasks (original_wf , task_name_constraint = "RunVaspCustodian" )
734
738
for idx_fw , idx_t in idx_list :
0 commit comments