# [gmx-users] angle constraints

Mark Abraham Mark.Abraham at anu.edu.au
Thu Jul 26 01:41:55 CEST 2012

```On 26/07/2012 4:12 AM, Broadbent, Richard wrote:
> Virtual sites are by definition have no mass.
>
> If you simply ignore the mass of the carbon the molecule will be too light
> and its translational momentum will therefore be too small meaning it will
> move too quickly.
>
> If you place half the mass of the carbon on each oxygen the moment of
> inertia will be wrong and the molecule will spin too slowly.

All correct so far.

>
> In practice you have to decide what you want to loose or if a balance
> between the two is better.

Not true, as illustrated by the link I gave earlier in the thread, which

One needs at least two massive particles to describe the available
degrees of freedom of a linear molecule, and using exactly two
side-steps the angle constraint issue. Each must have half the total
mass of CO2 and the distance between them is chosen to reproduce the
moment of inertia. These will not be in suitable positions to have
non-bonded interactions, of course. Then three (massless) virtual sites
are constructed from those two, and these are the only ones that have
the non-bonded interactions.

>
> Richard
>
>
> On 25/07/2012 14:44, "Thomas Schlesier" <schlesi at uni-mainz.de> wrote:
>
>> Ok, read the topic about the acetonitril. But i'm somewhat clueless:
>>
>> Why is the following setup wrong:
>> Use 2 particles as normal atoms. Put the third as a dummy in between.
>> Give each particle its 'normal' mass?
>> I would assume that this system should have the right mass and moment of
>> inertia, due to the fact the all individual masses and the positions one
>> the particles would be correct.

The virtual site so constructed cannot have mass, so this cannot be an
accurate model.

>>
>> Only idea i have, why this setup could be flawed, would be that the
>> third particle does only interact indirectly through the other two
>> particles (i mean, virtual site interacts normally with all othe
>> particles, but the force which would act on the dummy get redistributed
>> to the other particles)... and then it's mass does not come into play,
>> since it new position is determined only by the other two particles. so
>> the complete molecule would move with a reduced mass?!?

Still not an accurate model - you'd have a CO2 with three sites and mass
only at two of the sites, so either the mass or moment of intertia must
be wrong.

Mark

>>
>> Can anyone comment on this?
>>
>> greetings
>> thomas
>>
>>
>> On 25/07/2012 10:08 PM, Thomas Schlesier wrote:
>>> What you have done there looks very strange...
>>> easiest wy would be:
>>> define the two oxygens as normal atoms (1,2), give them a bondlength
>>> twotimes the C-O bond length
>>> define the carbon as a dummy (3), while you construct it's position
>>> from both oxygens with a=0.5
>>> one thing i don't know is how to handle the mass:
>>> 1) give both oxygen half of the system mass
>>> 2) give all atoms their normal mass
>>> would tend to (2)
>> One should want to get both the total mass and the moment of inertia
>> correct...
>> http://lists.gromacs.org/pipermail/gmx-users/2003-September/007095.html.
>>
>> Mark
>>
>>> greetings
>>> thomas
>>>
>>> Am 25.07.2012 13:15, schrieb gmx-users-request at gromacs.org:
>>>> How to choose the positions of the dummy atoms while constraining the
>>>> angle for a linear triatomic molecule?
>>>> The topology for a such molecule ( af for example CO2 ) is as follows
>>>>
>>>> [ moleculetype ]
>>>> ; Name            nrexcl
>>>> CO2      2
>>>>
>>>> [ atoms ]
>>>> ;   nr       type  resnr residue  atom   cgnr     charge mass
>>>> typeB    chargeB      massB
>>>> ; residue 503 CO  rtp CO   q  0.0
>>>>        1         D1    503     CO     D1      1          0 21.90158
>>>>     ; qtot 0
>>>>        2         D2    503     CO     D2      2          0 21.90158
>>>>     ; qtot 0
>>>>        3         CE    503     CO     CO      3        0.7 0.00000
>>>>     ; qtot 0.7
>>>>        4         OE    503     CO    OC1      4      -0.35 0.00000
>>>>     ; qtot 0.35
>>>>        5         OE    503     CO    OC2      5      -0.35 0.00000
>>>>     ; qtot 0.35
>>>> [ constraints ]
>>>> ;  ai  aj funct           b0
>>>> 1 2 1   0.2000
>>>>
>>>> [ dummies2 ]
>>>> ;  ai    aj    ak       funct   a
>>>>       3     1     2       1       0.0170
>>>>       4     1     2       1       0.1000
>>>>       5     1     2       1       0.2170
>>>>
>>>>
>>>> [ exclusions ]
>>>> 3 4 5
>>>> 4 5 3
>>>> 5 4 3
>>>>
>>>>
>>>>
>>>> The .rtp file for CO2
>>>>
>>>> [ CO ]
>>>>    [ atoms ]
>>>>       D1     D1          0.0000           1
>>>>       D2     D2          0.0000           2
>>>>       CO    CE          0.7000        3
>>>>       OC1  OE         -0.3500       4
>>>>       OC2  OE         -0.3500        5
>>>>    [ bonds ]
>>>>       CO      OC1
>>>>       CO      OC2
>>>>
>>>>
>>>> Can anyone please check above file parts whether I'm doing correct or
>>>> not ?

```