diff --git a/arc/job/adapters/gaussian.py b/arc/job/adapters/gaussian.py index 23ed6a1ced..cdc844fe2c 100644 --- a/arc/job/adapters/gaussian.py +++ b/arc/job/adapters/gaussian.py @@ -364,8 +364,14 @@ def write_input_file(self) -> None: input_dict['job_type_1'] += f' SCRF=({self.level.solvation_method}, Solvent={self.level.solvent})' if self.species[0].number_of_atoms > 1: - input_dict['job_type_1'] += ' guess=read' if self.checkfile is not None and os.path.isfile(self.checkfile) \ - else ' guess=mix' + if input_dict['job_type_1']: + input_dict['job_type_1'] += ' ' + if 'guess=INDO' in input_dict['trsh']: + input_dict['job_type_1'] += 'guess=INDO' + input_dict['trsh'] = input_dict['trsh'].replace('guess=INDO', '') + else: + input_dict['job_type_1'] += ' guess=read' if self.checkfile is not None and os.path.isfile(self.checkfile) \ + else ' guess=mix' # Fix OPT terms_opt = [r'opt=\((.*?)\)', r'opt=(\w+)'] diff --git a/arc/job/adapters/gaussian_test.py b/arc/job/adapters/gaussian_test.py index b80365ed9f..07ec7d57e6 100644 --- a/arc/job/adapters/gaussian_test.py +++ b/arc/job/adapters/gaussian_test.py @@ -208,7 +208,7 @@ def setUpClass(cls): ) # Gaussian: Additional SCF error - # Second SCF error - Includes previous SCF error and NDump=30 + # Second SCF error - Includes previous SCF error and NDamp=30 job_status = {'keywords': ['SCF']} output_errors, ess_trsh_methods, remove_checkfile, level_of_theory, software, job_type, fine, trsh_keyword, \ memory, shift, cpu_cores, couldnt_trsh = trsh.trsh_ess_job(label, level_of_theory, server, job_status, @@ -518,7 +518,7 @@ def test_trsh_write_input_file(self): %mem=14336mb %NProcShared=8 -#P opt=(calcfc,maxstep=5,tight) guess=mix wb97xd integral=(grid=ultrafine, Acc2E=14) IOp(2/9=2000) scf=(direct,tight) +#P opt=(calcfc,maxstep=5,tight) guess=mix wb97xd integral=(grid=ultrafine, Acc2E=14) IOp(2/9=2000) scf=(direct,tight) ethanol @@ -544,7 +544,7 @@ def test_trsh_write_input_file(self): %mem=14336mb %NProcShared=8 -#P opt=(calcfc,maxstep=5,tight) guess=mix wb97xd integral=(grid=ultrafine, Acc2E=14) IOp(2/9=2000) nosymm scf=(direct,tight,xqc) +#P opt=(calcfc,maxstep=5,tight) guess=mix wb97xd integral=(grid=ultrafine, Acc2E=14) IOp(2/9=2000) nosymm scf=(direct,tight,xqc) ethanol @@ -570,7 +570,7 @@ def test_trsh_write_input_file(self): %mem=14336mb %NProcShared=8 -#P opt=(calcfc,maxstep=5,tight) guess=mix wb97xd integral=(grid=ultrafine, Acc2E=14) IOp(2/9=2000) nosymm scf=(NDump=30,direct,tight,xqc) +#P opt=(calcfc,maxstep=5,tight) guess=mix wb97xd integral=(grid=ultrafine, Acc2E=14) IOp(2/9=2000) nosymm scf=(NDamp=30,direct,tight,xqc) ethanol @@ -596,7 +596,7 @@ def test_trsh_write_input_file(self): %mem=14336mb %NProcShared=8 -#P opt=(calcfc,maxstep=5,tight) guess=mix wb97xd integral=(grid=ultrafine, Acc2E=14) IOp(2/9=2000) nosymm scf=(NDump=30,NoDIIS,direct,tight,xqc) +#P opt=(calcfc,maxstep=5,tight) guess=mix wb97xd integral=(grid=ultrafine, Acc2E=14) IOp(2/9=2000) nosymm scf=(NDamp=30,NoDIIS,direct,tight,xqc) ethanol @@ -622,7 +622,7 @@ def test_trsh_write_input_file(self): %mem=14336mb %NProcShared=8 -#P opt=(calcfc,cartesian,maxstep=5,tight) guess=mix wb97xd integral=(grid=ultrafine, Acc2E=14) IOp(2/9=2000) nosymm scf=(NDump=30,NoDIIS,direct,tight,xqc) +#P opt=(calcfc,cartesian,maxstep=5,tight) guess=mix wb97xd integral=(grid=ultrafine, Acc2E=14) IOp(2/9=2000) nosymm scf=(NDamp=30,NoDIIS,direct,tight,xqc) ethanol @@ -649,7 +649,7 @@ def test_trsh_write_input_file(self): %mem=14336mb %NProcShared=8 -#P opt=(cartesian) integral=(grid=ultrafine, Acc2E=14) guess=mix wb97xd IOp(2/9=2000) nosymm scf=(NDump=30,NoDIIS,direct,tight,xqc) +#P opt=(cartesian) integral=(grid=ultrafine, Acc2E=14) guess=INDO wb97xd IOp(2/9=2000) nosymm scf=(NDamp=30,NoDIIS,direct,tight,xqc) ethanol diff --git a/arc/main_test.py b/arc/main_test.py index 9576f8a895..b0bd5926a6 100644 --- a/arc/main_test.py +++ b/arc/main_test.py @@ -73,7 +73,7 @@ def test_as_dict(self): three_params=False, ts_adapters=['heuristics', 'AutoTST', 'GCN', 'xtb_gsm'], ) - arc0.freq_level.args['keyword']['general'] = 'scf=(NDump=30)' + arc0.freq_level.args['keyword']['general'] = 'scf=(NDamp=30)' restart_dict = arc0.as_dict() long_thermo_description = restart_dict['species'][0]['long_thermo_description'] self.assertIn('Bond corrections:', long_thermo_description)