Skip to content

Commit 8b954da

Browse files
committed
fix close routine
1 parent 4f42f0d commit 8b954da

File tree

4 files changed

+20
-56
lines changed

4 files changed

+20
-56
lines changed

calphy/alchemy.py

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -127,10 +127,7 @@ def run_averaging(self):
127127

128128
# close object and process traj
129129
lmp = ph.write_data(lmp, "conf.equilibration.data")
130-
if self._lmp is None:
131-
lmp.close()
132-
else:
133-
lmp.clear()
130+
self.lammps_close(lmp=lmp)
134131
# Preserve log file
135132
logfile = os.path.join(self.simfolder, "log.lammps")
136133
try:
@@ -506,10 +503,7 @@ def run_integration(self, iteration=1):
506503
for idx in range(len(swap_combos)):
507504
lmp.command(f"unfix swap{idx}")
508505
# lmp.command("unfix swap_print")
509-
if self._lmp is None:
510-
lmp.close()
511-
else:
512-
lmp.clear()
506+
self.lammps_close(lmp=lmp)
513507
# Preserve log file
514508
logfile = os.path.join(self.simfolder, "log.lammps")
515509
try:

calphy/liquid.py

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -131,10 +131,7 @@ def melt_structure(self, lmp):
131131

132132
# if melting cycle is over and still not melted, raise error
133133
if not melted:
134-
if self._lmp is None:
135-
lmp.close()
136-
else:
137-
lmp.clear()
134+
self.lammps_close(lmp=lmp)
138135
# Preserve log file
139136
logfile = os.path.join(self.simfolder, "log.lammps")
140137
try:
@@ -218,10 +215,7 @@ def run_averaging(self):
218215
self.check_if_solidfied(lmp, "traj.equilibration_stage1.dat")
219216
self.dump_current_snapshot(lmp, "traj.equilibration_stage2.dat")
220217
lmp = ph.write_data(lmp, "conf.equilibration.data")
221-
if self._lmp is None:
222-
lmp.close()
223-
else:
224-
lmp.clear()
218+
self.lammps_close(lmp=lmp)
225219
# Preserve log file
226220
logfile = os.path.join(self.simfolder, "log.lammps")
227221
try:
@@ -443,10 +437,7 @@ def run_integration(self, iteration=1):
443437
lmp.command("uncompute c2")
444438

445439
# close object
446-
if self._lmp is None:
447-
lmp.close()
448-
else:
449-
lmp.clear()
440+
self.lammps_close(lmp=lmp)
450441
# Preserve log file
451442
logfile = os.path.join(self.simfolder, "log.lammps")
452443
try:

calphy/phase.py

Lines changed: 13 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -279,10 +279,7 @@ def check_if_melted(self, lmp, filename):
279279
""" """
280280
solids = ph.find_solid_fraction(os.path.join(self.simfolder, filename))
281281
if solids / lmp.natoms < self.calc.tolerance.solid_fraction:
282-
if self._lmp is None:
283-
lmp.close()
284-
else:
285-
lmp.clear()
282+
self.lammps_close(lmp=lmp)
286283
# Preserve log file on error
287284
logfile = os.path.join(self.simfolder, "log.lammps")
288285
try:
@@ -299,10 +296,7 @@ def check_if_solidfied(self, lmp, filename):
299296
""" """
300297
solids = ph.find_solid_fraction(os.path.join(self.simfolder, filename))
301298
if solids / lmp.natoms > self.calc.tolerance.liquid_fraction:
302-
if self._lmp is None:
303-
lmp.close()
304-
else:
305-
lmp.clear()
299+
self.lammps_close(lmp=lmp)
306300
# Preserve log file on error
307301
logfile = os.path.join(self.simfolder, "log.lammps")
308302
try:
@@ -617,10 +611,7 @@ def run_iterative_pressure_convergence(self, lmp):
617611
laststd = std
618612

619613
if not converged:
620-
if self._lmp is None:
621-
lmp.close()
622-
else:
623-
lmp.clear()
614+
self.lammps_close(lmp=lmp)
624615
# Preserve log file on error
625616
logfile = os.path.join(self.simfolder, "log.lammps")
626617
try:
@@ -745,10 +736,7 @@ def run_iterative_constrained_pressure_convergence(self, lmp):
745736
lmp.command("unfix 2")
746737

747738
if not converged:
748-
if self._lmp is None:
749-
lmp.close()
750-
else:
751-
lmp.clear()
739+
self.lammps_close(lmp=lmp)
752740
# Preserve log file on error
753741
logfile = os.path.join(self.simfolder, "log.lammps")
754742
try:
@@ -1261,10 +1249,7 @@ def reversible_scaling(self, iteration=1):
12611249
lmp.command("undump d1")
12621250

12631251
# close the object
1264-
if self._lmp is None:
1265-
lmp.close()
1266-
else:
1267-
lmp.clear()
1252+
self.lammps_close(lmp=lmp)
12681253
# Preserve log file
12691254
logfile = os.path.join(self.simfolder, "log.lammps")
12701255
if os.path.exists(logfile):
@@ -1464,10 +1449,7 @@ def temperature_scaling(self, iteration=1):
14641449
)
14651450
lmp.command("run %d" % self.calc._n_sweep_steps)
14661451

1467-
if self._lmp is None:
1468-
lmp.close()
1469-
else:
1470-
lmp.clear()
1452+
self.lammps_close(lmp=lmp)
14711453
# Preserve log file
14721454
logfile = os.path.join(self.simfolder, "log.lammps")
14731455
if os.path.exists(logfile):
@@ -1605,10 +1587,7 @@ def pressure_scaling(self, iteration=1):
16051587
)
16061588
lmp.command("run %d" % self.calc._n_sweep_steps)
16071589

1608-
if self._lmp is None:
1609-
lmp.close()
1610-
else:
1611-
lmp.clear()
1590+
16121591
# Preserve log file
16131592
logfile = os.path.join(self.simfolder, "log.lammps")
16141593
if os.path.exists(logfile):
@@ -1664,3 +1643,9 @@ def clean_up(self):
16641643

16651644
with open(os.path.join(self.simfolder, "metadata.yaml"), "w") as fout:
16661645
yaml.safe_dump(metadata, fout)
1646+
1647+
def lammps_close(self, lmp):
1648+
if self._lmp is None:
1649+
lmp.close()
1650+
else:
1651+
lmp.clear()

calphy/solid.py

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -293,10 +293,7 @@ def run_interactive_averaging(self):
293293
self.check_if_melted(lmp, "traj.equilibration_stage2.dat")
294294
lmp = ph.write_data(lmp, "conf.equilibration.data")
295295
# close object and process traj
296-
if self._lmp is None:
297-
lmp.close()
298-
else:
299-
lmp.clear()
296+
self.lammps_close(lmp=lmp)
300297
# Preserve log file
301298
logfile = os.path.join(self.simfolder, "log.lammps")
302299
try:
@@ -596,10 +593,7 @@ def run_integration(self, iteration=1):
596593

597594
# close object
598595
if not self.calc.script_mode:
599-
if self._lmp is None:
600-
lmp.close()
601-
else:
602-
lmp.clear()
596+
self.lammps_close(lmp=lmp)
603597
# Preserve log file
604598
logfile = os.path.join(self.simfolder, "log.lammps")
605599
try:

0 commit comments

Comments
 (0)