Skip to content

Commit 94aa290

Browse files
committed
Edited code to have run_neb_kwargs. mace neb ts no hess.
1 parent 3ddb068 commit 94aa290

File tree

1 file changed

+34
-6
lines changed

1 file changed

+34
-6
lines changed

src/ts_workflow_examples/neb_ts_without_hessian/using_mace.py

Lines changed: 34 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
def neb_ts_no_hess_irc_mace(
1515
reactant: Atoms,
1616
product: Atoms,
17+
run_neb_kwargs: Dict[str, Any],
1718
calc_kwargs1: Dict[str, Any],
1819
logger: logging.Logger,
1920
clean_up: bool = True
@@ -28,6 +29,8 @@ def neb_ts_no_hess_irc_mace(
2829
The reactant structure.
2930
product : Atoms
3031
The product structure.
32+
run_neb_kwargs : dict
33+
Keyword arguments for the ASE's nudged elastic band function.
3134
calc_kwargs1 : dict
3235
Keyword arguments for the ASE calculator for NEB, TS, and IRC jobs.
3336
logger : logging.Logger
@@ -41,19 +44,36 @@ def neb_ts_no_hess_irc_mace(
4144
List containing results from NEB, TS, and IRC jobs.
4245
"""
4346
# Create NEB job
44-
job1 = strip_decorator(neb_job)(reactant, product, calc_kwargs=calc_kwargs1)
47+
job1 = strip_decorator(neb_job)(
48+
reactant,
49+
product,
50+
run_neb_kwargs=run_neb_kwargs,
51+
**calc_kwargs1,
52+
)
4553
logger.info("Created NEB job.")
4654

4755
# Create TS job with custom Hessian
48-
job2 = strip_decorator(ts_job)(job1['neb_results']['highest_e_atoms'], use_custom_hessian=False, **calc_kwargs1)
56+
job2 = strip_decorator(ts_job)(
57+
job1['neb_results']['highest_e_atoms'],
58+
use_custom_hessian=False,
59+
**calc_kwargs1,
60+
)
4961
logger.info("Created TS job with custom Hessian.")
5062

5163
# Create IRC job in forward direction
52-
job3 = strip_decorator(irc_job)(job2['atoms'], direction='forward', **calc_kwargs1)
64+
job3 = strip_decorator(irc_job)(
65+
job2['atoms'],
66+
direction='forward',
67+
**calc_kwargs1,
68+
)
5369
logger.info("Created IRC job in forward direction.")
5470

5571
# Create IRC job in reverse direction
56-
job4 = strip_decorator(irc_job)(job2['atoms'], direction='reverse', **calc_kwargs1)
72+
job4 = strip_decorator(irc_job)(
73+
job2['atoms'],
74+
direction='reverse',
75+
**calc_kwargs1,
76+
)
5777
logger.info("Created IRC job in reverse direction.")
5878

5979
logger.info("All jobs executed successfully.")
@@ -94,8 +114,16 @@ def neb_ts_no_hess_irc_mace(
94114
# Calculation and optimization keyword arguments
95115
calc_kwargs1 = {
96116
}
97-
98-
job1, job2, job3, job4 = neb_ts_no_hess_irc_mace(reactant, product, calc_kwargs1, logger)
117+
run_neb_kwargs = {
118+
'max_steps': 2,
119+
}
120+
job1, job2, job3, job4 = neb_ts_no_hess_irc_mace(
121+
reactant,
122+
product,
123+
run_neb_kwargs,
124+
calc_kwargs1,
125+
logger,
126+
)
99127
print('\n\n', job1)
100128
print('\n\n', job2)
101129
print('\n\n', job3)

0 commit comments

Comments
 (0)