Skip to content

Commit 769a957

Browse files
authored
Merge pull request #518 from OpenBioSim/feature_ring_break_softcore
2 parents d7d3fc8 + f97ae7a commit 769a957

12 files changed

Lines changed: 1930 additions & 6 deletions

File tree

src/BioSimSpace/Align/_merge.py

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1341,6 +1341,24 @@ def merge(
13411341
if _ring_making or _ring_breaking:
13421342
_mol_info = edit_mol.info()
13431343

1344+
# Store the changing bond pairs as molecule properties so the
1345+
# simulation engine can apply a softcore force to the pair in the
1346+
# end state where the bond is absent, preventing large repulsion at
1347+
# the bonded/nonbonded lambda boundary. Ring-breaking (absent at
1348+
# λ=1) and ring-making (absent at λ=0) are stored separately so
1349+
# the engine can apply different alpha schedules to each.
1350+
for _pairs, _prop in [
1351+
(_ring_breaking, "ring_breaking_bonds"),
1352+
(_ring_making, "ring_making_bonds"),
1353+
]:
1354+
if _pairs:
1355+
edit_mol.set_property(
1356+
_prop,
1357+
_SireBase.IntegerArrayProperty(
1358+
[_idx for _pair in sorted(_pairs) for _idx in _pair]
1359+
),
1360+
)
1361+
13441362
for _changing, _suffix in [(_ring_making, "0"), (_ring_breaking, "1")]:
13451363
if not _changing:
13461364
continue

src/BioSimSpace/Sandpit/Exscientia/Solvent/__init__.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,8 @@
2828
.. autosummary::
2929
:toctree: generated/
3030
31+
addIons
32+
ions
3133
solvate
3234
spc
3335
spce
@@ -117,4 +119,5 @@
117119
_sr.use_new_api()
118120
del _sr
119121

122+
from ._ions import *
120123
from ._solvent import *

0 commit comments

Comments
 (0)