I don't have access to Loukas Peristeras's email address. Steve can
you forward this question to him?
Problem:
The current version of dihedral_fourier.cpp, each cosine term can be
shifted, but it must be shifted by an integer number of degrees. This
shift is the "di" parameter mentioned in the documentation for that
dihedral_style at:
http://lammps.sandia.gov/doc/dihedral_fourier.html
A shift of 62.5 degrees is not allowed.
I can't think of a reason for this. In the code, Loukas said he did
this for "backwards compatibility". But I I don't understand why we
need backwards compatibility for a new dihedral style. (Was this part
of the code accidentally left over from dihedral_charmm.cpp? If so,
then great, we can fix it easily. See below.)
I am grateful, excited. But I am also disappointed. This is a
significant problem, especially for large Fourier series. Perhaps
this limitation was not so serious for dihedral_style charmm. However
a shift of half-a-degree is serious for longer fourier series. And
people who want long Fourier series are the target audience.
We actually use Fourier-series dihedral potentials, where a shift of
half a degree leads to qualitatively differences in the behavior of
our coarse-grained protein model. (Bellesia, G.; Jewett, A. I.; Shea,
J.-E. Protein Sci. 2010, 19, 141-154)
Can we please remove this restriction for this new pair style? I've
attached a slightly modified version of "dihedral_fourier.cpp" which
allows for non-integer angle shifts (based on the Oct28_2012 version
of LAMMPS). I only made modifications on lines 316 and 337 of that
file.
Dear Loukas
Please let us know if you are open to the idea of non-integer
shifts. Our group uses especially non-standard complicated
potentials. We would be grateful if you are willing to change this.
I don't mean to sound so crestfallen and unappreciative. I think
it's wonderful that you wrote this new dihedral style, and I intend to
use it (and get other people using it).
Thanks!
Andrew
dihedral_fourier.cpp (11.1 KB)