Implement reflecting boundary conditions for metadynamics bias#525
Draft
fabsugar wants to merge 63 commits into
Draft
Implement reflecting boundary conditions for metadynamics bias#525fabsugar wants to merge 63 commits into
fabsugar wants to merge 63 commits into
Conversation
Member
|
Looking at the state of the history a squash-merge (i.e. merging all commits into one commit) may be appropriate when this PR is ready. The conflict is near the function where the hills are added in the multiple walkers case. Have you been able to test that combination of features before the conflicts became worse? |
Member
|
P.S. I tried resolving the conflicts in the |
Contributor
Author
|
As far as I remember I didn't test the combination of meta reflection and
multiple walkers (I did test it with other multiple replica approaches).
I'll send a test with the version before the conflict and let you know.
Thank you,
Fab
…On Tue, Apr 18, 2023 at 12:45 AM Giacomo Fiorin ***@***.***> wrote:
Looking at the state of the history a squash-merge (i.e. merging all
commits into one commit) may be appropriate when this PR is ready.
The conflict is near the function where the hills are added in the
multiple walkers case. Have you been able to test that combination of
features before the conflicts became worse?
—
Reply to this email directly, view it on GitHub
<#525 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/ACZ54AHUYFCSWKN42SKEKTLXBYL5DANCNFSM6AAAAAAXBM3HZQ>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
Member
|
Sounds good. You could also start from |
Contributor
Author
|
Sounds good, I'll do that,
Fab
…On Tue, Apr 18, 2023 at 10:03 AM Giacomo Fiorin ***@***.***> wrote:
Sounds good. You could also start from meta_reflection_squash
—
Reply to this email directly, view it on GitHub
<#525 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/ACZ54ACWTW3LRZZM4BUKNVLXB2NJNANCNFSM6AAAAAAXBM3HZQ>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
79a25f6 to
010d8a4
Compare
ffb677b to
6e7559f
Compare
6e7559f to
ec53b9b
Compare
7957ec4 to
f0dfd8d
Compare
… hills reflection
…te argument list" in colvarbias_meta.h
…by subtracting half width
checkval-getsum>=0 required to make things work
…rol for negative values should work
must be put back at the border when coordinates go out of the reflection border
…mit of reflection is in the boundary before correction was handling most of cases but now should be fine in every case
by using get_colvar_index_bound to treat vaules out of the boundary (which are projected inside the closest boundary). Additionally curr_values are now defined as a general variable to avoid define a new variable every time functions are called
…xes the seg fault when using multiple replicas
…ariables for clarity
…r non scalar variables as reflection is focused on scalae CVs and has not been tested for a mix of scalar and vetor variables (but might work).
…should be set on automatically when using grids
708d8d5 to
55cfb1c
Compare
…dy defined and w3ill be overwritten
…he target function to avoid bins off the grid
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Dear All,
the branch meta_reflection includes important modifications of the metadynamics code (colvarbias_meta.*) which allow to correct known artifacts of metadynamics at the boundaries of the collective variables (either natural boundaries or added through flat bottom potentials).
Namely, I implemented the reflection of the metadynamics Gaussians through the boundaries and an additional feature that removes the biasing forces beyond the boundaries (so that those forces smoothly go to zero beyond the boundaries). The implementation is specifically designed to be general and applicable to any dimensionality. The output pmf and bias energy includes those corrections (e.g. it remains flat beyond the border of a given collective variable while keeping the same shape across the others).
This feature also solves the need to add explicit Gaussians beyond the boundaries, which is computationally inefficient (and currently might need some fix).
The new feature is simple to use, it only requires the keyword "hills_reflection on" and automatically works on the default boundaries. Upon activating it the users will be able to run long metadynamics simulations of any dimensionality without developing the large errors at the boundaries that are currently present and that become larger and larger as the simulation goes on.
The new feature is fully tested on different systems up to a dimensionality of four.
The meta_reflection branch was merging fine with the master branch up to mid January, right now there is some minor conflict.
All the best,
Fabrizio