Apologies if this is a known bug; I couldn’t find anything about it but possibly searched for the wrong things.
I am trying to apply a modification to the weights of an NMR restraint in a DISANG file using an &wt nameless with type=‘rest’. This works just fine in Amber22 sander and pmemd, but in pmemd.cuda it quietly fails to apply the weight changes. The weight changes are read in and described correctly in the output file, and the simulation proceeds, but the weight changes are not applied. I’ve attached the output files from some test simulations (if that works), but here are some relevant sections. The input file in each case is the same, with an &wt namelist that should turn off the restraints completely:
Here is the input file:
Long equilibrate
&cntrl
imin=0,
ntx=1,
ntxo=1,
irest=0,
nstlim=2500,
dt=0.004,
ntf=2,
ntc=2,
tempi=310.15,
temp0=310.15,
ntpr=100,
ntwx=250,
ntwr=100,
cut=1000.0,
ntt=2,
vrand=1000,
ig=-1,
igb=8,
nmropt=1
/
&wt
type="REST",
value1=0, value2=0,
istep1=0, istep2=2500,
/
&wt
type="END",
/
DISANG=restraint.disang
And restraint.disang looks like this:
&rst
iat=6055,1007
r1=50, r2=350, r3=400, r4=600, rk2=100, rk3=100
&end
In all three cases the &wt stuff is read in and described correctly in the output file:
Begin reading energy term weight changes/NMR restraints
WEIGHT CHANGES:
REST 0 2500 0.000000 0.000000 0 0
RESTRAINTS:
Requested file redirections:
DISANG = restraint.disang
Restraints will be read from file: restraint.disang
Here are comments from the DISANG input file:
Number of restraints read = 1
Done reading weight changes/NMR restraints
In pmemd and sander, the 0th step looks like this, with the restraint weight close to zero (although not exactly zero, for some reason?):
NSTEP = 0 TIME(PS) = 0.000 TEMP(K) = 366.15 PRESS = 0.0
Etot = -3487.3117 EKtot = 5524.3527 EPtot = -9011.6645
BOND = 1526.3289 ANGLE = 3547.8428 DIHED = 5074.7127
1-4 NB = 1344.6127 1-4 EEL = 14523.8444 VDWAALS = -2576.7498
EELEC = -25726.6372 EGB = -6726.6002 RESTRAINT = 0.9814
EAMBER (non-restraint) = -9012.6458
------------------------------------------------------------------------------
NMR restraints: Bond = 0.981 Angle = 0.000 Torsion = 0.000
===============================================================================
But in pmemd.cuda, the restraint weight is super high right away:
NSTEP = 0 TIME(PS) = 0.000 TEMP(K) = 373.54 PRESS = 0.0
Etot = 9810380.9744 EKtot = 5635.8484 EPtot = 9804745.1260
BOND = 1526.3289 ANGLE = 3547.8428 DIHED = 5074.7135
1-4 NB = 1344.6125 1-4 EEL = 14523.8437 VDWAALS = -2576.7498
EELEC = -25726.6407 EGB = -6726.5871 RESTRAINT = 9813757.7623
EAMBER (non-restraint) = -9012.6363
------------------------------------------------------------------------------
NMR restraints: Bond =********* Angle = 0.000 Torsion = 0.000
===============================================================================
Is there anything that can be done to cause pmemd.cuda to correctly implement the weight modification?
Thanks!
--
T. Emme Burgin [she/her; pronounced: “Em”]
Assistant Professor
Thayer School of Engineering
Dartmouth College
_______________________________________________
AMBER mailing list
AMBER.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber
Received on Thu Dec 11 2025 - 09:00:02 PST