diff --git a/src/pymatgen/io/xtb/inputs.py b/src/pymatgen/io/xtb/inputs.py index b9dc3352717..cbc6a413dbe 100644 --- a/src/pymatgen/io/xtb/inputs.py +++ b/src/pymatgen/io/xtb/inputs.py @@ -83,7 +83,7 @@ def constrains_template(molecule, reference_fnm, constraints) -> str: for idx, val in enumerate(atoms_for_mtd): if val + 1 not in atoms_for_mtd: interval_list.append(val) - if idx != len(atoms_for_mtd): + if idx != len(atoms_for_mtd) - 1: interval_list.append(atoms_for_mtd[idx + 1]) allowed_mtd_string = ",".join( [f"{interval_list[i]}-{interval_list[i + 1]}" for i in range(len(interval_list)) if i % 2 == 0] diff --git a/src/pymatgen/io/xtb/outputs.py b/src/pymatgen/io/xtb/outputs.py index 3b9deb11a9d..60ca8c52834 100644 --- a/src/pymatgen/io/xtb/outputs.py +++ b/src/pymatgen/io/xtb/outputs.py @@ -70,12 +70,12 @@ def _parse_crest_output(self): print(f"Input file {split_cmd[0]} not found") # Get CREST input flags - for i, entry in enumerate(split_cmd, start=1): + for i, entry in enumerate(split_cmd): value = None if entry and "-" in entry: option = entry[1:] - if i < len(split_cmd) and "-" not in entry: - value = entry + if i < len(split_cmd) and "-" not in split_cmd[i + 1]: + value = split_cmd[i + 1] self.cmd_options[option] = value # Get input charge for decorating parsed molecules chg = 0