Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add RPMD features #51

Open
wants to merge 39 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
feb7dae
Fix to polarization correction
Jan 23, 2014
ce56a7a
Merge branch 'master' of github.com:leeping/forcebalance
Jan 28, 2014
7322bbc
Merge branch 'master' of https://github.com/leeping/forcebalance
Feb 11, 2014
bc3a415
Begin adding interface for RP contraction
Feb 11, 2014
17ebcd3
Added RPMD kinetic energy calculation
Mar 19, 2014
8eb02fa
Merge branch 'master' of github.com:leeping/forcebalance
Mar 19, 2014
c5ce8b5
test commit
Mar 19, 2014
4186cab
Test
Mar 19, 2014
98b2a15
TEST
Mar 19, 2014
7adaafe
test1
Mar 19, 2014
b0a74f9
CustomBondForce
Mar 20, 2014
ce5c264
CustomBondForce(error in getPerBondParameterName)
Mar 20, 2014
bee0c4d
CustomBondForce(working version)
Mar 22, 2014
d2a1c65
RPMD input should be list of integer not number
Mar 23, 2014
4e15d71
Energy estimator
Mar 26, 2014
a1a1970
Merge branch 'master' of github.com:leeping/forcebalance
Mar 26, 2014
9b3524d
Merge branch 'master' of github.com:leeping/forcebalance
Mar 26, 2014
d2abf50
Update rpmd energy estimating(centroid instead of primitive energy es…
Mar 26, 2014
16939e4
Centroid Energy Estimator
Mar 27, 2014
0ed58f5
test setposition
Apr 2, 2014
1c55582
RPMD set_position (test)
Apr 4, 2014
c8524e4
Undo get multipole function
Apr 5, 2014
5ffd3fb
update energy estimator
Apr 7, 2014
5f55c7e
Implement Potential and Kinetic energy calculators for RPMD simulatio…
Apr 9, 2014
83817f3
Replace code that calculate quantum kinetic energy by function
Apr 9, 2014
fc50a07
Fix a few RPMD related bug
Apr 9, 2014
f1a5cde
Adding centroid position calculator
Apr 9, 2014
9cdf137
Change nothing, just test
Apr 9, 2014
8b69702
Fix some minor(but important!) bug.
Apr 9, 2014
520ede4
Try again.
Apr 9, 2014
8a7d23d
RPMD Virtual Site
Apr 10, 2014
96bea44
change nothing
Apr 10, 2014
67b6c75
fix syntax error
Apr 10, 2014
b826b1d
Use centroid KE to calculate KE in RPMD
Apr 10, 2014
cc9abba
Edit the fractionation ratio energy function
May 5, 2014
9a89502
edit HD
May 5, 2014
5a427d9
":"
May 5, 2014
0994408
undo last step
May 5, 2014
a80f321
undo
May 6, 2014
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 8 additions & 4 deletions src/data/npt.py
Original file line number Diff line number Diff line change
Expand Up @@ -312,7 +312,7 @@ def main():
# Number of threads, multiple timestep integrator, anisotropic box etc.
threads = TgtOptions.get('md_threads', 1)
mts = TgtOptions.get('mts_integrator', 0)
rpmd_beads = TgtOptions.get('rpmd_beads', 0)
rpmd_beads = TgtOptions.get('rpmd_beads', [])
force_cuda = TgtOptions.get('force_cuda', 0)
nbarostat = TgtOptions.get('n_mcbarostat', 25)
anisotropic = TgtOptions.get('anisotropic_box', 0)
Expand Down Expand Up @@ -367,7 +367,7 @@ def main():
EngOpts["gas"]["gmx_top"] = os.path.splitext(gas_fnm)[0] + ".top"
EngOpts["gas"]["gmx_mdp"] = os.path.splitext(gas_fnm)[0] + ".mdp"
if force_cuda: logger.warn("force_cuda option has no effect on Gromacs engine.")
if rpmd_beads > 0: raise RuntimeError("Gromacs cannot handle RPMD.")
if len(rpmd_beads) > 0: raise RuntimeError("Gromacs cannot handle RPMD.")
if mts: logger.warn("Gromacs not configured for multiple timestep integrator.")
if anisotropic: logger.warn("Gromacs not configured for anisotropic box scaling.")
elif engname == "tinker":
Expand All @@ -376,7 +376,7 @@ def main():
EngOpts["liquid"]["tinker_key"] = os.path.splitext(liquid_fnm)[0] + ".key"
EngOpts["gas"]["tinker_key"] = os.path.splitext(gas_fnm)[0] + ".key"
if force_cuda: logger.warn("force_cuda option has no effect on Tinker engine.")
if rpmd_beads > 0: raise RuntimeError("TINKER cannot handle RPMD.")
if len(rpmd_beads) > 0: raise RuntimeError("TINKER cannot handle RPMD.")
if mts: logger.warn("Tinker not configured for multiple timestep integrator.")
EngOpts["liquid"].update(GenOpts)
EngOpts["gas"].update(GenOpts)
Expand Down Expand Up @@ -420,7 +420,7 @@ def main():
Volumes = prop_return['Volumes']
Dips = prop_return['Dips']
EDA = prop_return['Ecomps']

#getone = prop_return['One']
# Create a bunch of physical constants.
# Energies are in kJ/mol
# Lengths are in nanometers.
Expand Down Expand Up @@ -492,6 +492,10 @@ def main():
# Condensed phase properties and derivatives. #
#==============================================#

#----
# Just get one
#----

#----
# Density
#----
Expand Down
5 changes: 3 additions & 2 deletions src/forcefield.py
Original file line number Diff line number Diff line change
Expand Up @@ -223,7 +223,7 @@ def __init__(self, options, verbose=True):
## AMOEBA mutual dipole convergence tolerance.
self.set_option(options, 'amoeba_eps')
## Switch for rigid water molecules
self.set_option(options, 'rigid_water')
self.set_option(options, 'rigid_water', forceprint=True)
## Bypass the transformation and use physical parameters directly
self.set_option(options, 'use_pvals')

Expand Down Expand Up @@ -1115,7 +1115,8 @@ def build_qtrans2(tq, qid, qmap):
def list_map(self):
""" Create the plist, which is like a reversed version of the parameter map. More convenient for printing. """
if len(self.map) == 0:
warn_press_key('The parameter map has no elements (Okay if we are not actually tuning any parameters.)')
#warn_press_key('The parameter map has no elements (Okay if we are not actually tuning any parameters.)')
logger.warning('The parameter map has no elements (Okay if we are not actually tuning any parameters.)\n')
else:
self.plist = [[] for j in range(max([self.map[i] for i in self.map])+1)]
for i in self.map:
Expand Down
Loading