hi all,
I've run into a problem (not technically a bug, but a set of input
combinations that leads to inability to restart a run). I'm emailing to
discuss how best to fix it, or maybe someone knows what I'm doing wrong.
my problem is that when you set iwrap=1, coordinates can get changed even
for atoms with positional restraints. The coordinates of these atoms can be
translated substantially in the restart compared to the input coordinates.
Then, when you try to restart, the new coordinates no longer match the
reference coordinates (refc file), and the simulation blows up with
huge restraint energy. There is no simple way to fix it and successfully
continue the previous run. It's not a problem during the MD, only when you
try to restart. For me, using iwrap=1 quickly fails during a multi-step
equilibration (sorry, "relaxation"). iwrap=0 is fine, but not good for very
long MD.
- you can use the restart file of the previous run as the inpcrd AND the
refc. This works fine now, but I've never really liked the idea of
continually changing what you call your "reference" structrure.
- we could enforce iwrap=0 when using ntr=1 (but this can lead to
coordinate overflow, especially for solvent)
- we could shift the reference coordinates and save them to a "reference
restart" file? seems too complicated.
- we could skip translating atoms that have restraints applied? they aren't
moving far anyway.
other ideas?
the relevant code (I think) is in pbd.F90, wrap_molecules()
do i = offset + 1, offset + mol_atm_cnt
atm_id = gbl_mol_atms_lists(i)
crd(1, atm_id) = crd(1, atm_id) + tran(1)
crd(2, atm_id) = crd(2, atm_id) + tran(2)
crd(3, atm_id) = crd(3, atm_id) + tran(3)
end do
other ideas?
thanks
carlos
_______________________________________________
AMBER-Developers mailing list
AMBER-Developers.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber-developers
Received on Mon Aug 08 2022 - 06:00:03 PDT