Re: using colvars to constrain two atoms in a direction

From: Giacomo Fiorin (giacomo.fiorin_at_gmail.com)
Date: Wed Dec 14 2016 - 11:11:00 CST

On Wed, Dec 14, 2016 at 12:02 PM, Hamed Fadaei <hamed.fadaei111_at_gmail.com>
wrote:

> -I tried the same script I had this time I added 4 or 5 atoms to the tilt
> colvar but still I get the same error.
>

OK, then your molecule *is* probably too flexible for RMSD calculation.

>
> - Do you mean using two different distanceZ for two atoms so that I could
> keep their orientation fixed? but in this case molecule won't be able to
> move in Z direction. I want it to be free to move in any direction (Let's
> just forget about umbrella sampling for a moment)
>

One distanceZ between the COM of the molecule and the COM of the membrane,
another distanceZ between the two atoms.

>
> - Finally I just repeat my last question, is it possible to define an
> RMSD constrain which just applies forces toward the best orientation of the
> two atoms and not their position?
>

Not for 2 atoms, the orientation is not fully defined then. You can
calculate an orientation, but it's not unique (and will be discontinuous in
MD).

> Should I just give it a reference pdb file with the two atoms at a desired
> ORIENTATION? Do you know of any good example script for a similar thing?
>

>
> Thanks,
> Arman
>
> On Wed, Dec 14, 2016 at 10:40 AM, Giacomo Fiorin <giacomo.fiorin_at_gmail.com
> > wrote:
>
>> Sorry, I overlooked the fact that you're using two atoms only... You
>> can't do an orientational fit with less than 4 atoms. Try measuring their
>> RMSD in VMD to see it.
>>
>> With two atoms, just use distanceZ to define their distance along the z
>> axis. If they're bonded, the bond length won't change and distanceZ will
>> be effectively the tilt.
>>
>> More about the molecule size: with two atoms, even if those are just two
>> heavy atoms (e.g. methanol) you shouldn't need to restrain the orientation,
>> the molecule is small enough to rotate while crossing the membrane.
>>
>>
>> On Wed, Dec 14, 2016 at 11:34 AM, Hamed Fadaei <hamed.fadaei111_at_gmail.com
>> > wrote:
>>
>>> Thank you very much Giacomo for your prompt response.
>>> Actually since this happens at the very first step, there is no
>>> trajectory to check.
>>>
>>> So, is it possible to define an RMSD constrain which just applies forces
>>> toward the best orientation of the two atoms and not their position? Should
>>> I just give it a reference pdb file with the two atoms at a desired
>>> ORIENTATION?
>>> Do you know of any good example script for a similar thing?
>>>
>>> Best,
>>> Hamed
>>>
>>> On Wed, Dec 14, 2016 at 10:22 AM, Giacomo Fiorin <
>>> giacomo.fiorin_at_gmail.com> wrote:
>>>
>>>> Hi Hamed, the error message indicates that the rotational fit
>>>> (necessary to calculate the tilt variable) does not converge because the
>>>> structure of the drug is not rigid. Please check the trajectory with VMD
>>>> to see if this is the case.
>>>>
>>>> You could perhaps obviate this by replacing the tilt constraint with a
>>>> RMSD constraint where only the translational fit is performed
>>>> (centerReference on) but not the rotational (rotateReference off) is done
>>>> to compute the RMSD.
>>>>
>>>> Giacomo
>>>>
>>>>
>>>>
>>>> On Wed, Dec 14, 2016 at 11:15 AM, Hamed Fadaei <
>>>> hamed.fadaei111_at_gmail.com> wrote:
>>>>
>>>>> Dear NAMD usrs,
>>>>>
>>>>> I am trying to simulate a a drug translocationg from a membrane. The
>>>>> drug is much longer in one direction and its orintation can be defined by a
>>>>> single vector connecting two atoms (atom numbers 20 and 28 in my system).
>>>>>
>>>>> Now I need to constrain this vector with respect to the Z axis at
>>>>> different angles by applying forces to these two atoms. I don't want to add
>>>>> any extra constraints to the position of the atoms and drug can be free to
>>>>> move as long as it keeps its angle with Z axis fixed.
>>>>>
>>>>> I tried to use "tilt" colvar by giving two ref points to define Z axis
>>>>> and then constraining that tilt colvar to a harmonic :
>>>>>
>>>>> colvar {
>>>>>
>>>>> name tilt1
>>>>>
>>>>> tilt {
>>>>>
>>>>> atoms {
>>>>>
>>>>> atomNumbers {
>>>>>
>>>>> 28 20
>>>>>
>>>>> }
>>>>>
>>>>> }
>>>>>
>>>>> refPositions (0,0,0) (0,0,1)
>>>>>
>>>>> }
>>>>>
>>>>> }
>>>>>
>>>>> harmonic {
>>>>>
>>>>> colvars tilt1
>>>>>
>>>>> centers -0.9
>>>>>
>>>>> forceConstant 0.0
>>>>>
>>>>> }
>>>>>
>>>>> But when I run it, the system kinetic energy and temperature come out
>>>>> as "nan" at step zero and I get the following error at the step one:
>>>>>
>>>>> colvars: Too many iterations in routine jacobi.
>>>>>
>>>>> FATAL ERROR: Error in the collective variables module: exiting.
>>>>>
>>>>>
>>>>> Unfortunately I couldn't find anything related to that so I would be
>>>>> so glad if you can help me. Besides, is this the best way to use tilt
>>>>> colvar for my purpose or there might be a better way?
>>>>>
>>>>>
>>>>> Best,
>>>>>
>>>>> Hamed
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> Giacomo Fiorin
>>>> Associate Professor of Research
>>>> Institute for Computational Molecular Science (ICMS)
>>>> College of Science and Technology, Temple University
>>>> 1925 North 12th Street (035-07), Room 704D
>>>> Philadelphia, PA 19122-1801
>>>> Phone: +1-215-204-4213 <(215)%20204-4213>
>>>>
>>>> Scholar: http://goo.gl/Q3TBQU
>>>> Personal: http://giacomofiorin.github.io/
>>>> Lab page: https://icms.cst.temple.edu/members.html
>>>>
>>>> *"As computer programmers we have a responsibility to make sure that we
>>>> run the computers instead of the computers running us."* - Steve
>>>> Oualline
>>>>
>>>>
>>>>
>>>
>>
>>
>> --
>> Giacomo Fiorin
>> Associate Professor of Research
>> Institute for Computational Molecular Science (ICMS)
>> College of Science and Technology, Temple University
>> 1925 North 12th Street (035-07), Room 704D
>> Philadelphia, PA 19122-1801
>> Phone: +1-215-204-4213 <(215)%20204-4213>
>>
>> Scholar: http://goo.gl/Q3TBQU
>> Personal: http://giacomofiorin.github.io/
>> Lab page: https://icms.cst.temple.edu/members.html
>>
>> *"As computer programmers we have a responsibility to make sure that we
>> run the computers instead of the computers running us."* - Steve
>> Oualline
>>
>>
>>
>

-- 
Giacomo Fiorin
Associate Professor of Research
Institute for Computational Molecular Science (ICMS)
College of Science and Technology, Temple University
1925 North 12th Street (035-07), Room 704D
Philadelphia, PA 19122-1801
Phone: +1-215-204-4213 <(215)%20204-4213>
Scholar: http://goo.gl/Q3TBQU
Personal: http://giacomofiorin.github.io/
Lab page: https://icms.cst.temple.edu/members.html
*"As computer programmers we have a responsibility to make sure that we run
the computers instead of the computers running us."*  - Steve Oualline

This archive was generated by hypermail 2.1.6 : Sun Dec 31 2017 - 23:20:53 CST