Skip to content

Commit

Permalink
unsampled endstates long range correction as an input yaml option (#1037
Browse files Browse the repository at this point in the history
)

* Support for unsampled endstates long range correction as an input yaml option

* Changes in release notes and YAML file for the protein-ligand cli example.

* Better wording for changelog.

* Applying suggestions. Remove unused option. Commenting new options.
  • Loading branch information
ijpulidos authored Jun 9, 2022
1 parent e81ae32 commit 2b0e134
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 6 deletions.
7 changes: 7 additions & 0 deletions docs/changelog.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,13 @@ This section lists features and improvements of note in each release.

The full release history can be viewed `at the GitHub perses releases page <https://github.com/choderalab/perses/releases>`_.

0.10.0 - Release
----------------

Enhancements
------------
- Introduce ``unsampled_endstates`` boolean option in input YAML file, for enabling/disabling creation of unsampled endstates long-range sterics correction. Issue `#1033 <https://github.com/choderalab/perses/issues/1033>`_ (`#1037 <https://github.com/choderalab/perses/pull/1037>`_).

0.9.5 - Release
---------------

Expand Down
8 changes: 6 additions & 2 deletions examples/protein-ligand/cli/protein-ligand.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ fe_type: repex
checkpoint_interval: 50

#number of iterations
n_cycles: 1
n_cycles: 4

#The number of SAMS states
n_states: 3
Expand All @@ -72,4 +72,8 @@ phases:
#timestep in fs
timestep: 4.

h_constraints: True
# Interval in iterations to use for offline real time analysis
offline-freq: 2

# Create unsampled endstates for long-range sterics correction
unsampled_endstates: True
9 changes: 5 additions & 4 deletions perses/app/setup_relative_calculation.py
Original file line number Diff line number Diff line change
Expand Up @@ -326,6 +326,10 @@ def getSetupOptions(filename, override_string=None):
if 'platform' not in setup_options:
setup_options['platform'] = None # defaults to choosing best platform

# Handling unsampled_endstates long range correction flag
if 'unsampled_endstates' not in setup_options:
setup_options['unsampled_endstates'] = True # True by default (matches class default)

os.makedirs(trajectory_directory, exist_ok=True)


Expand Down Expand Up @@ -658,10 +662,7 @@ def run_setup(setup_options, serialize_systems=True, build_samplers=True):
if phase == 'vacuum':
endstates = False
else:
# TODO: Make this True when dispersed.utils.create_endstates is fixed
_logger.info("Disabling creation of endstates with expanded cutoffs in order to support new "
"alchemical factories.")
endstates = False
endstates = setup_options['unsampled_endstates']

if setup_options['fe_type'] == 'fah':
_logger.info('SETUP FOR FAH DONE')
Expand Down

0 comments on commit 2b0e134

Please sign in to comment.