Skip to content

Commit 7fddaa8

Browse files
committed
added input arg for disabling rms yaml write
1 parent c6e2c19 commit 7fddaa8

2 files changed

Lines changed: 25 additions & 3 deletions

File tree

rmgpy/rmg/input.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1337,8 +1337,8 @@ def pressure_dependence(
13371337

13381338
def options(name='Seed', generateSeedEachIteration=True, saveSeedToDatabase=False, units='si', saveRestartPeriod=None,
13391339
generateOutputHTML=False, generatePlots=False, saveSimulationProfiles=False, verboseComments=False,
1340-
saveEdgeSpecies=False, keepIrreversible=False, trimolecularProductReversible=True, wallTime='00:00:00:00',
1341-
saveSeedModulus=-1):
1340+
saveEdgeSpecies=False, keepIrreversible=False, trimolecularProductReversible=True, generateRMSEachIter=True,
1341+
wallTime='00:00:00:00', saveSeedModulus=-1):
13421342
if saveRestartPeriod:
13431343
logging.warning("`saveRestartPeriod` flag was set in the input file, but this feature has been removed. Please "
13441344
"remove this line from the input file. This will throw an error after RMG-Py 3.1. For "
@@ -1352,6 +1352,7 @@ def options(name='Seed', generateSeedEachIteration=True, saveSeedToDatabase=Fals
13521352
if generateOutputHTML:
13531353
logging.warning('Generate Output HTML option was turned on. Note that this will slow down model generation.')
13541354
rmg.generate_output_html = generateOutputHTML
1355+
rmg.generate_rms_each_iter = generateRMSEachIter
13551356
rmg.generate_plots = generatePlots
13561357
rmg.save_simulation_profiles = saveSimulationProfiles
13571358
rmg.verbose_comments = verboseComments
@@ -1800,6 +1801,7 @@ def save_input_file(path, rmg):
18001801
f.write('options(\n')
18011802
f.write(' units = "{0}",\n'.format(rmg.units))
18021803
f.write(' generateOutputHTML = {0},\n'.format(rmg.generate_output_html))
1804+
f.write(' generateRMSEachIter = {0},\n'.format(rmg.generate_rms_each_iter))
18031805
f.write(' generatePlots = {0},\n'.format(rmg.generate_plots))
18041806
f.write(' saveSimulationProfiles = {0},\n'.format(rmg.save_simulation_profiles))
18051807
f.write(' saveEdgeSpecies = {0},\n'.format(rmg.save_edge_species))

rmgpy/rmg/main.py

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -722,8 +722,10 @@ def register_listeners(self):
722722
"""
723723

724724
self.attach(ChemkinWriter(self.output_directory))
725-
self.attach(RMSWriter(self.output_directory))
726725

726+
if self.generate_rms_each_iter:
727+
self.attach(RMSWriter(self.output_directory))
728+
727729
if self.generate_output_html:
728730
self.attach(OutputHTMLWriter(self.output_directory))
729731

@@ -1186,6 +1188,24 @@ def execute(self, initialize=True, **kwargs):
11861188
except Exception:
11871189
logging.exception("Could not generate Cantera files for some reason.")
11881190

1191+
# if we're not writing rms files each iteration, only write one at the end.
1192+
if not self.generate_rms_each_iter:
1193+
from rmgpy.yml import write_yml
1194+
1195+
# make rms dir
1196+
dirname = os.path.join(self.output_directory, "rms")
1197+
if os.path.exists(dirname):
1198+
# The directory already exists, so delete it (and all its content!)
1199+
shutil.rmtree(dirname)
1200+
os.mkdir(dirname)
1201+
1202+
# save final rms file
1203+
solvent_data = None
1204+
if self.solvent:
1205+
solvent_data = self.database.solvation.get_solvent_data(self.solvent)
1206+
write_yml(self.reaction_model.core.species, self.reaction_model.core.reactions, solvent=self.solvent, solvent_data=solvent_data,
1207+
path=os.path.join(dirname, 'chem.rms'))
1208+
11891209
self.check_model()
11901210
# Write output file
11911211
logging.info("")

0 commit comments

Comments
 (0)