Skip to content

Commit c7d18b9

Browse files
authored
Add files via upload
1 parent 870de42 commit c7d18b9

1 file changed

Lines changed: 7 additions & 4 deletions

File tree

multioptpy/Utils/rcmc.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -223,7 +223,8 @@ def pop(self) -> ExplorationTask | None:
223223
self._tasks.values(),
224224
key=lambda t: t.metadata.get("delta_E_hartree", 0.0),
225225
)
226-
del self._tasks[id(selected)]
226+
target_key = next(k for k, v in self._tasks.items() if v is selected)
227+
del self._tasks[target_key]
227228
return selected
228229

229230
# ── Select nodes and energy accessor based on energy mode ───────────
@@ -250,7 +251,8 @@ def _edge_ts_e(edge):
250251
if not self._tasks:
251252
return None
252253
selected = next(iter(self._tasks.values()))
253-
del self._tasks[id(selected)]
254+
target_key = next(k for k, v in self._tasks.items() if v is selected)
255+
del self._tasks[target_key]
254256
return selected
255257

256258
n_nodes = len(nodes)
@@ -457,7 +459,8 @@ def _edge_ts_e(edge):
457459
task.priority = 0.0
458460

459461
selected = max(self._tasks.values(), key=lambda t: t.priority)
460-
del self._tasks[id(selected)]
462+
target_key = next(k for k, v in self._tasks.items() if v is selected)
463+
del self._tasks[target_key]
461464
logger.debug(
462465
"RCMC pop(): selected EQ%d priority(q)=%.6f "
463466
"remaining_tasks=%d",
@@ -705,7 +708,7 @@ def all_edges(self) -> list:
705708
priority=0.0,
706709
metadata={"delta_E_hartree": eff_e},
707710
)
708-
queue._tasks[id(task)] = task
711+
queue.push(task)
709712

710713
# ── Run RCMC – one full pop() pass ────────────────────────────────────────
711714
energy_label = "Gibbs free energy (G_tot)" if use_free_energy else "Electronic energy (SCF)"

0 commit comments

Comments
 (0)