Skip to content
Snippets Groups Projects
Commit 2ff4da08 authored by Giovanni Bussi's avatar Giovanni Bussi
Browse files

Merge branch 'v2.3'

parents 05736936 258cf203
No related branches found
No related tags found
No related merge requests found
...@@ -153,6 +153,8 @@ See branch \branch{v2.3} on git repository. ...@@ -153,6 +153,8 @@ See branch \branch{v2.3} on git repository.
- PDB reader is now able to read files with dos newlines (see \issue{223}). - PDB reader is now able to read files with dos newlines (see \issue{223}).
- fix a bug in \ref CS2BACKBONE (v2.3.1) related to ring currents of HIS and TRP - fix a bug in \ref CS2BACKBONE (v2.3.1) related to ring currents of HIS and TRP
- Fixed bug in if condition in \ref PCAVARS so that you can run with only one eigenvector defined in input - Fixed bug in if condition in \ref PCAVARS so that you can run with only one eigenvector defined in input
- Fixed but with timers in \ref sum_hills \issue{194}.
- Fixed bug when using \ref MOVINGRESTRAINT with periodic variables such as \ref TORSION \issue{225}.
For developers: For developers:
- plumedcheck validation has been made stricter. All the checks are now described in the developer manual. - plumedcheck validation has been made stricter. All the checks are now described in the developer manual.
......
...@@ -11,8 +11,12 @@ PortGroup cxx11 1.1 ...@@ -11,8 +11,12 @@ PortGroup cxx11 1.1
version @_VERSION_@ version @_VERSION_@
revision @_REVISION_@ revision @_REVISION_@
categories science categories science
license LGPL-3
maintainers gmail.com:giovanni.bussi # Most of the PLUMED code is L-GPL3. However, PLUMED containts
# molfile plugins from VMD that are released with a BSD-like license
# http://www.ks.uiuc.edu/Research/vmd/plugins/molfile/
license LGPL-3 BSD
maintainers gmail.com:giovanni.bussi openmaintainer
description PLUMED is a plugin for molecular dynamics description PLUMED is a plugin for molecular dynamics
long_description PLUMED is a plugin for molecular dynamics that can be used \ long_description PLUMED is a plugin for molecular dynamics that can be used \
in combination with popular molecular dynamics codes to perform biased simulations. \ in combination with popular molecular dynamics codes to perform biased simulations. \
...@@ -31,15 +35,17 @@ homepage http://www.plumed.org/ ...@@ -31,15 +35,17 @@ homepage http://www.plumed.org/
# - list their name here: # - list their name here:
# Disable additional features. # Disable additional features.
# they are then re-enabled when selecting proper variants # They are then re-enabled when selecting proper variants
# this is important for features that require an additional package to be # this is important for features that require an additional package to be
# sure that even if the user has that package already installed plumed is # sure that even if the user has that package already installed plumed is
# not going to use it. # not going to use it.
# Also avoid searching for doxygen.
configure.args-append \ configure.args-append \
--disable-doc \
--disable-libsearch \ --disable-libsearch \
--disable-molfile-plugins \
--disable-mpi --disable-mpi
# Hardcode path for libplumedKernel.dylib. # Hardcode path for libplumedKernel.dylib.
# This allows to patch MD codes using the --runtime option but using as # This allows to patch MD codes using the --runtime option but using as
# default kernel the installed one. In this way, MacPorts users # default kernel the installed one. In this way, MacPorts users
...@@ -54,56 +60,20 @@ if {[mpi_variant_isset]} { ...@@ -54,56 +60,20 @@ if {[mpi_variant_isset]} {
configure.args-replace --disable-mpi --enable-mpi configure.args-replace --disable-mpi --enable-mpi
} }
variant matheval description {Enable libmatheval} { # libraries
configure.ldflags-append -lmatheval configure.ldflags-append -lmatheval -lxdrfile -lz -lgsl
depends_lib-append port:libmatheval depends_lib-append port:libmatheval port:xdrfile port:zlib port:gsl
}
variant xdrfile description {Enable xdrfile} {
configure.ldflags-append -lxdrfile
depends_lib-append port:xdrfile
}
variant zlib description {Enable zlib} {
configure.ldflags-append -lz
depends_lib-append port:zlib
}
variant gsl description {Enable gsl} { # This variant enables optional modules in PLUMED.
configure.ldflags-append -lgsl variant allmodules description {Enable all optional modules} {
depends_lib-append port:gsl configure.args-append --enable-modules=all
} }
variant molfile description {Enable molfile - includes some BSD code} {
license ${license} BSD
configure.args-replace --disable-molfile-plugins --enable-molfile-plugins
}
variant doc description {Also compile documentation} {
depends_build-append port:doxygen
depends_build-append port:graphviz
build.target all_plus_docs
}
# this is a tcl variable contains a concatenated list of modules
# to be activated
set plumed_modules reset
# this will automatically create variants for each optional module
@_MODULES_@ plumed_modules
pre-configure { pre-configure {
# commands should be included in a pre-configure block to access tcl variables # commands should be included in a pre-configure block to access tcl variables
configure.args-append --enable-modules=${plumed_modules}
configure.ldflags-append ${linalglib} configure.ldflags-append ${linalglib}
} }
# Default variants include no optional modules.
# Additionally, the link libraries that are very useful (e.g. matheval of xdrfile)
# and quick to compile
default_variants +matheval +xdrfile +zlib +molfile
# This is required since PLUMED installation does not do it explicitly. # This is required since PLUMED installation does not do it explicitly.
# It might be removed when this will be incorporated upstream # It might be removed when this will be incorporated upstream
post-destroot { post-destroot {
......
#! FIELDS time t d @2.bias @2.force2 @2.t_cntr @2.t_work @2.t_kappa @2.d_cntr @2.d_work @2.d_kappa @2.work
#! SET min_t -pi
#! SET max_t pi
0.000000 -1.571 1.000 3.777 7.553 2.827 0.000 1.000 3.000 0.000 1.000 0.000
1.000000 -1.571 1.000 2.536 5.073 2.897 -0.129 1.000 2.333 -1.111 1.000 -1.240
2.000000 -1.571 1.000 1.745 3.491 2.967 -0.253 1.000 1.667 -1.778 1.000 -2.031
3.000000 -1.571 1.000 1.404 2.807 3.037 -0.373 1.000 1.000 -2.000 1.000 -2.373
4.000000 -1.571 1.000 1.511 3.023 3.107 -0.487 1.000 0.333 -1.778 1.000 -2.265
5.000000 -1.571 1.000 2.068 4.137 3.176 -0.597 1.000 -0.333 -1.111 1.000 -1.708
6.000000 -1.571 1.000 3.075 6.149 3.246 -0.702 1.000 -1.000 0.000 1.000 -0.702
7.000000 -1.571 1.000 4.530 9.061 3.316 -0.802 1.000 -1.667 1.556 1.000 0.754
8.000000 -1.571 1.000 6.435 12.871 3.386 -0.897 1.000 -2.333 3.556 1.000 2.659
9.000000 -1.571 1.000 8.790 17.579 -2.827 7.128 1.000 -3.000 6.000 1.000 13.128
include ../../scripts/test.make
type=driver
# this is to test a different name
arg="--plumed plumed.dat --ixyz traj.xyz --dump-forces forces --dump-forces-fmt=%8.4f"
t: TORSION ATOMS=1,2,3,4
d: DISTANCE ATOMS=1,2
MOVINGRESTRAINT ...
ARG=t,d
AT0=0.9pi,3 STEP0=0 KAPPA0=1,1
AT1=-0.9pi,-3 STEP1=9 KAPPA1=1,1
...
PRINT ARG=* FILE=COLVAR FMT=%6.3f
4
0 0 0
X 1 0 1
X 0 0 1
X 0 0 -1
X 0 1 -1
4
0 0 0
X 1 0 1
X 0 0 1
X 0 0 -1
X 0 1 -1
4
0 0 0
X 1 0 1
X 0 0 1
X 0 0 -1
X 0 1 -1
4
0 0 0
X 1 0 1
X 0 0 1
X 0 0 -1
X 0 1 -1
4
0 0 0
X 1 0 1
X 0 0 1
X 0 0 -1
X 0 1 -1
4
0 0 0
X 1 0 1
X 0 0 1
X 0 0 -1
X 0 1 -1
4
0 0 0
X 1 0 1
X 0 0 1
X 0 0 -1
X 0 1 -1
4
0 0 0
X 1 0 1
X 0 0 1
X 0 0 -1
X 0 1 -1
4
0 0 0
X 1 0 1
X 0 0 1
X 0 0 -1
X 0 1 -1
4
0 0 0
X 1 0 1
X 0 0 1
X 0 0 -1
X 0 1 -1
...@@ -230,7 +230,11 @@ void MovingRestraint::calculate(){ ...@@ -230,7 +230,11 @@ void MovingRestraint::calculate(){
double c2=(now-step[i-1])/double(step[i]-step[i-1]); double c2=(now-step[i-1])/double(step[i]-step[i-1]);
double c1=1.0-c2; double c1=1.0-c2;
for(unsigned j=0;j<narg;j++) kk[j]=(c1*kappa[i-1][j]+c2*kappa[i][j]); for(unsigned j=0;j<narg;j++) kk[j]=(c1*kappa[i-1][j]+c2*kappa[i][j]);
for(unsigned j=0;j<narg;j++) aa[j]=(c1*at[i-1][j]+c2*at[i][j]); for(unsigned j=0;j<narg;j++) {
const double a1=at[i-1][j];
const double a2=at[i][j];
aa[j]=(c1*a1+c2*(a1+difference(j,a1,a2)));
}
} }
tot_work=0.0; tot_work=0.0;
for(unsigned i=0;i<narg;++i){ for(unsigned i=0;i<narg;++i){
......
...@@ -26,6 +26,7 @@ ...@@ -26,6 +26,7 @@
#include "tools/BiasRepresentation.h" #include "tools/BiasRepresentation.h"
#include "tools/File.h" #include "tools/File.h"
#include "tools/Tools.h" #include "tools/Tools.h"
#include "tools/Stopwatch.h"
#include <iostream> #include <iostream>
using namespace std; using namespace std;
...@@ -503,6 +504,10 @@ historep(NULL) ...@@ -503,6 +504,10 @@ historep(NULL)
if(integratehills) hillsHandler=new FilesHandler(hillsFiles,parallelread,*this, log); if(integratehills) hillsHandler=new FilesHandler(hillsFiles,parallelread,*this, log);
if(integratehisto) histoHandler=new FilesHandler(histoFiles,parallelread,*this, log); if(integratehisto) histoHandler=new FilesHandler(histoFiles,parallelread,*this, log);
Stopwatch sw;
sw.start("0 Summing hills");
// read a number of hills and put in the bias representation // read a number of hills and put in the bias representation
int nfiles=0; int nfiles=0;
bool ibias=integratehills; bool ihisto=integratehisto; bool ibias=integratehills; bool ihisto=integratehisto;
...@@ -612,6 +617,10 @@ historep(NULL) ...@@ -612,6 +617,10 @@ historep(NULL)
nfiles++; nfiles++;
} }
sw.stop("0 Summing hills");
log<<sw;
return; return;
} }
// just an initialization but you need to do something on the fly?: need to connect with a metad run and its grid representation // just an initialization but you need to do something on the fly?: need to connect with a metad run and its grid representation
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment