From: Aleksei Iupinov Date: Tue, 27 Feb 2018 13:08:17 +0000 (+0100) Subject: Merge branch 'release-2018' X-Git-Url: http://biod.pnpi.spb.ru/gitweb/?a=commitdiff_plain;h=4cac188a75e6c242bd627784d1a1c50a1a176343;p=alexxy%2Fgromacs.git Merge branch 'release-2018' Conflict: multisim barrier handling in src/programs/mdrun/runner.cpp Amended the test introduced in I16a3705a0d59a to exclude the implicit solvent output which was disabled in Ib241555ff3d8e60. Change-Id: Idf382c9c7ba92439097fcc9008cb9cc813daaab7 --- 4cac188a75e6c242bd627784d1a1c50a1a176343 diff --cc src/gromacs/gmxpreprocess/tests/refdata/GetIrTest_DefineHandlesAssignmentOnRhs.xml index 0000000000,7e032a588a..95038d7d53 mode 000000,100644..100644 --- a/src/gromacs/gmxpreprocess/tests/refdata/GetIrTest_DefineHandlesAssignmentOnRhs.xml +++ b/src/gromacs/gmxpreprocess/tests/refdata/GetIrTest_DefineHandlesAssignmentOnRhs.xml @@@ -1,0 -1,345 +1,321 @@@ + + + + false + + ; VARIOUS PREPROCESSING OPTIONS + ; Preprocessor information: use cpp syntax. + ; e.g.: -I/home/joe/doe -I/home/mary/roe + include = + ; e.g.: -DPOSRES -DFLEXIBLE (note these variable names are case sensitive) + define = -DBOOL -DVAR=VALUE + + ; RUN CONTROL PARAMETERS + integrator = md + ; Start time and timestep in ps + tinit = 0 + dt = 0.001 + nsteps = 0 + ; For exact run continuation or redoing part of a run + init-step = 0 + ; Part index is updated automatically on checkpointing (keeps files separate) + simulation-part = 1 + ; mode for center of mass motion removal + comm-mode = Linear + ; number of steps for center of mass motion removal + nstcomm = 100 + ; group(s) for center of mass motion removal + comm-grps = + + ; LANGEVIN DYNAMICS OPTIONS + ; Friction coefficient (amu/ps) and random seed + bd-fric = 0 + ld-seed = -1 + + ; ENERGY MINIMIZATION OPTIONS + ; Force tolerance and initial step-size + emtol = 10 + emstep = 0.01 + ; Max number of iterations in relax-shells + niter = 20 + ; Step size (ps^2) for minimization of flexible constraints + fcstep = 0 + ; Frequency of steepest descents steps when doing CG + nstcgsteep = 1000 + nbfgscorr = 10 + + ; TEST PARTICLE INSERTION OPTIONS + rtpi = 0.05 + + ; OUTPUT CONTROL OPTIONS + ; Output frequency for coords (x), velocities (v) and forces (f) + nstxout = 0 + nstvout = 0 + nstfout = 0 + ; Output frequency for energies to log file and energy file + nstlog = 1000 + nstcalcenergy = 100 + nstenergy = 1000 + ; Output frequency and precision for .xtc file + nstxout-compressed = 0 + compressed-x-precision = 1000 + ; This selects the subset of atoms for the compressed + ; trajectory file. You can select multiple groups. By + ; default, all atoms will be written. + compressed-x-grps = + ; Selection of energy groups + energygrps = + + ; NEIGHBORSEARCHING PARAMETERS + ; cut-off scheme (Verlet: particle based cut-offs, group: using charge groups) + cutoff-scheme = Verlet + ; nblist update frequency + nstlist = 10 + ; ns algorithm (simple or grid) + ns-type = Grid + ; Periodic boundary conditions: xyz, no, xy + pbc = xyz + periodic-molecules = no + ; Allowed energy error due to the Verlet buffer in kJ/mol/ps per atom, + ; a value of -1 means: use rlist + verlet-buffer-tolerance = 0.005 + ; nblist cut-off + rlist = 1 + ; long-range cut-off for switched potentials + + ; OPTIONS FOR ELECTROSTATICS AND VDW + ; Method for doing electrostatics + coulombtype = Cut-off + coulomb-modifier = Potential-shift-Verlet + rcoulomb-switch = 0 + rcoulomb = 1 + ; Relative dielectric constant for the medium and the reaction field + epsilon-r = 1 + epsilon-rf = 0 + ; Method for doing Van der Waals + vdw-type = Cut-off + vdw-modifier = Potential-shift-Verlet + ; cut-off lengths + rvdw-switch = 0 + rvdw = 1 + ; Apply long range dispersion corrections for Energy and Pressure + DispCorr = No + ; Extension of the potential lookup tables beyond the cut-off + table-extension = 1 + ; Separate tables between energy group pairs + energygrp-table = + ; Spacing for the PME/PPPM FFT grid + fourierspacing = 0.12 + ; FFT grid size, when a value is 0 fourierspacing will be used + fourier-nx = 0 + fourier-ny = 0 + fourier-nz = 0 + ; EWALD/PME/PPPM parameters + pme-order = 4 + ewald-rtol = 1e-05 + ewald-rtol-lj = 0.001 + lj-pme-comb-rule = Geometric + ewald-geometry = 3d + epsilon-surface = 0 - -; IMPLICIT SOLVENT ALGORITHM -implicit-solvent = No - -; GENERALIZED BORN ELECTROSTATICS -; Algorithm for calculating Born radii -gb-algorithm = Still -; Frequency of calculating the Born radii inside rlist -nstgbradii = 1 -; Cutoff for Born radii calculation; the contribution from atoms -; between rlist and rgbradii is updated every nstlist steps -rgbradii = 1 -; Dielectric coefficient of the implicit solvent -gb-epsilon-solvent = 80 -; Salt concentration in M for Generalized Born models -gb-saltconc = 0 -; Scaling factors used in the OBC GB model. Default values are OBC(II) -gb-obc-alpha = 1 -gb-obc-beta = 0.8 -gb-obc-gamma = 4.85 -gb-dielectric-offset = 0.009 -sa-algorithm = Ace-approximation -; Surface tension (kJ/mol/nm^2) for the SA (nonpolar surface) part of GBSA -; The value -1 will set default value for Still/HCT/OBC GB-models. -sa-surface-tension = -1 ++implicit-solvent = no + + ; OPTIONS FOR WEAK COUPLING ALGORITHMS + ; Temperature coupling + tcoupl = No + nsttcouple = -1 + nh-chain-length = 10 + print-nose-hoover-chain-variables = no + ; Groups to couple separately + tc-grps = + ; Time constant (ps) and reference temperature (K) + tau-t = + ref-t = + ; pressure coupling + pcoupl = No + pcoupltype = Isotropic + nstpcouple = -1 + ; Time constant (ps), compressibility (1/bar) and reference P (bar) + tau-p = 1 + compressibility = + ref-p = + ; Scaling of reference coordinates, No, All or COM + refcoord-scaling = No + + ; OPTIONS FOR QMMM calculations + QMMM = no + ; Groups treated Quantum Mechanically + QMMM-grps = + ; QM method + QMmethod = + ; QMMM scheme + QMMMscheme = normal + ; QM basisset + QMbasis = + ; QM charge + QMcharge = + ; QM multiplicity + QMmult = + ; Surface Hopping + SH = + ; CAS space options + CASorbitals = + CASelectrons = + SAon = + SAoff = + SAsteps = + ; Scale factor for MM charges + MMChargeScaleFactor = 1 + + ; SIMULATED ANNEALING + ; Type of annealing for each temperature group (no/single/periodic) + annealing = + ; Number of time points to use for specifying annealing in each group + annealing-npoints = + ; List of times at the annealing points for each group + annealing-time = + ; Temp. at each annealing point, for each group. + annealing-temp = + + ; GENERATE VELOCITIES FOR STARTUP RUN + gen-vel = no + gen-temp = 300 + gen-seed = -1 + + ; OPTIONS FOR BONDS + constraints = none + ; Type of constraint algorithm + constraint-algorithm = Lincs + ; Do not constrain the start configuration + continuation = no + ; Use successive overrelaxation to reduce the number of shake iterations + Shake-SOR = no + ; Relative tolerance of shake + shake-tol = 0.0001 + ; Highest order in the expansion of the constraint coupling matrix + lincs-order = 4 + ; Number of iterations in the final step of LINCS. 1 is fine for + ; normal simulations, but use 2 to conserve energy in NVE runs. + ; For energy minimization with constraints it should be 4 to 8. + lincs-iter = 1 + ; Lincs will write a warning to the stderr if in one step a bond + ; rotates over more degrees than + lincs-warnangle = 30 + ; Convert harmonic bonds to morse potentials + morse = no + + ; ENERGY GROUP EXCLUSIONS + ; Pairs of energy groups for which all non-bonded interactions are excluded + energygrp-excl = + + ; WALLS + ; Number of walls, type, atom types, densities and box-z scale factor for Ewald + nwall = 0 + wall-type = 9-3 + wall-r-linpot = -1 + wall-atomtype = + wall-density = + wall-ewald-zfac = 3 + + ; COM PULLING + pull = no + + ; AWH biasing + awh = no + + ; ENFORCED ROTATION + ; Enforced rotation: No or Yes + rotation = no + + ; Group to display and/or manipulate in interactive MD session + IMD-group = + + ; NMR refinement stuff + ; Distance restraints type: No, Simple or Ensemble + disre = No + ; Force weighting of pairs in one distance restraint: Conservative or Equal + disre-weighting = Conservative + ; Use sqrt of the time averaged times the instantaneous violation + disre-mixed = no + disre-fc = 1000 + disre-tau = 0 + ; Output frequency for pair distances to energy file + nstdisreout = 100 + ; Orientation restraints: No or Yes + orire = no + ; Orientation restraints force constant and tau for time averaging + orire-fc = 0 + orire-tau = 0 + orire-fitgrp = + ; Output frequency for trace(SD) and S to energy file + nstorireout = 100 + + ; Free energy variables + free-energy = no + couple-moltype = + couple-lambda0 = vdw-q + couple-lambda1 = vdw-q + couple-intramol = no + init-lambda = -1 + init-lambda-state = -1 + delta-lambda = 0 + nstdhdl = 50 + fep-lambdas = + mass-lambdas = + coul-lambdas = + vdw-lambdas = + bonded-lambdas = + restraint-lambdas = + temperature-lambdas = + calc-lambda-neighbors = 1 + init-lambda-weights = + dhdl-print-energy = no + sc-alpha = 0 + sc-power = 1 + sc-r-power = 6 + sc-sigma = 0.3 + sc-coul = no + separate-dhdl-file = yes + dhdl-derivatives = yes + dh_hist_size = 0 + dh_hist_spacing = 0.1 + + ; Non-equilibrium MD stuff + acc-grps = + accelerate = + freezegrps = + freezedim = + cos-acceleration = 0 + deform = + + ; simulated tempering variables + simulated-tempering = no + simulated-tempering-scaling = geometric + sim-temp-low = 300 + sim-temp-high = 300 + + ; Ion/water position swapping for computational electrophysiology setups + ; Swap positions along direction: no, X, Y, Z + swapcoords = no + adress = no + + ; User defined thingies + user1-grps = + user2-grps = + userint1 = 0 + userint2 = 0 + userint3 = 0 + userint4 = 0 + userreal1 = 0 + userreal2 = 0 + userreal3 = 0 + userreal4 = 0 + ; Electric fields + ; Format for electric-field-x, etc. is: four real variables: + ; amplitude (V/nm), frequency omega (1/ps), time for the pulse peak (ps), + ; and sigma (ps) width of the pulse. Omega = 0 means static field, + ; sigma = 0 means no pulse, leaving the field to be a cosine function. + electric-field-x = 0 0 0 0 + electric-field-y = 0 0 0 0 + electric-field-z = 0 0 0 0 + + diff --cc src/programs/mdrun/runner.cpp index c8d8b54c4c,9c6f463ae5..67824e3258 --- a/src/programs/mdrun/runner.cpp +++ b/src/programs/mdrun/runner.cpp @@@ -1039,9 -1040,16 +1039,16 @@@ int Mdrunner::mdrunner( { MPI_Barrier(cr->mpi_comm_mysim); } - if (MULTISIM(cr)) + if (isMultiSim(ms)) { - MPI_Barrier(ms->mpi_comm_masters); + if (MASTER(cr)) + { - MPI_Barrier(cr->ms->mpi_comm_masters); ++ MPI_Barrier(ms->mpi_comm_masters); + } + /* We need another barrier to prevent non-master ranks from contiuing + * when an error occured in a different simulation. + */ + MPI_Barrier(cr->mpi_comm_mysim); } #endif