Skip to content

Commit 6c07edc

Browse files
authored
Merge pull request #745 from fraricci/fix_gz_contcar_issue
Fix gzip contcar issue
2 parents 2c91190 + 63e9914 commit 6c07edc

File tree

2 files changed

+12
-5
lines changed

2 files changed

+12
-5
lines changed

atomate/common/firetasks/glue_tasks.py

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -95,10 +95,13 @@ class CopyFilesFromCalcLoc(FiretaskBase):
9595
name_append (str): string to append to destination filenames.
9696
exclude_files (list): list of file names to be excluded. Accepts glob
9797
patterns.
98+
decompress (bool): if True, files are decompressed after copy.
9899
"""
99100

100101
required_params = ["calc_loc"]
101-
optional_params = ["filenames", "name_prepend", "name_append", "exclude_files"]
102+
optional_params = ["filenames", "name_prepend",
103+
"name_append", "exclude_files",
104+
"decompress"]
102105

103106
def run_task(self, fw_spec=None):
104107
calc_loc = get_calc_loc(self["calc_loc"], fw_spec["calc_locs"])
@@ -142,11 +145,13 @@ def run_task(self, fw_spec=None):
142145

143146
for f in files_to_copy:
144147
prev_path_full = os.path.join(calc_dir, f)
145-
dest_fname = self.get("name_prepend", "") + f + self.get("name_append", "")
148+
f, ext = os.path.splitext(f)
149+
dest_fname = self.get("name_prepend", "") + f + self.get("name_append", "") + ext
146150
dest_path = os.path.join(os.getcwd(), dest_fname)
147151

148152
fileclient.copy(prev_path_full, dest_path)
149-
153+
if self.get("decompress",False):
154+
monty.shutil.decompress_file(dest_path)
150155

151156
@explicit_serialize
152157
class DeleteFiles(FiretaskBase):

atomate/vasp/firetasks/glue_tasks.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -290,15 +290,17 @@ def interpolate_poscar(self, fw_spec):
290290
# use CopyFilesFromCalcLoc to get files from previous locations.
291291
CopyFilesFromCalcLoc(
292292
calc_loc=self["start"],
293-
filenames=["CONTCAR"],
293+
filenames=["CONTCAR","CONTCAR.gz"],
294294
name_prepend=interpolate_folder + os.sep,
295295
name_append="_0",
296+
decompress=True,
296297
).run_task(fw_spec=fw_spec)
297298
CopyFilesFromCalcLoc(
298299
calc_loc=self["end"],
299-
filenames=["CONTCAR"],
300+
filenames=["CONTCAR","CONTCAR.gz"],
300301
name_prepend=interpolate_folder + os.sep,
301302
name_append="_1",
303+
decompress=True,
302304
).run_task(fw_spec=fw_spec)
303305

304306
# assuming first calc_dir is polar structure for ferroelectric search

0 commit comments

Comments
 (0)