Fixed atoms (mass=0) are moving with pressure coupling

The functionality of OpenMM will (eventually) include everything that one would need to run modern molecular simulation.
POST REPLY
User avatar
CHANG YUN SON
Posts: 27
Joined: Wed Nov 05, 2014 1:18 pm

Fixed atoms (mass=0) are moving with pressure coupling

Post by CHANG YUN SON » Tue Jun 12, 2018 12:55 am

Hi all,

I recently encountered this problem of using pressure coupling with position restraints for some of the atoms. It looks like both the MonteCarloAnisotropicBarostat and MonteCarloMembraneBarostat are scaling the positions of all the particles, even the particles fixed in position with mass=0. I'm trying to model some slab geometry of metal oxide with water and wants to fix the position of the metal oxide. With each pressure coupling, the crystalline packing of the metal oxide is disturbed due to the scaling of the entire particle positions.

It would be nice if one can set an option of scaling only COM positions but keeping internal coordinates with the barostat instead of scaling all the positions independently.

Is there any work-around for this issue, or have somebody wrote a custom python api for this type of simulation?

Thanks,
ChangYun

User avatar
CHANG YUN SON
Posts: 27
Joined: Wed Nov 05, 2014 1:18 pm

Re: Fixed atoms (mass=0) are moving with pressure coupling

Post by CHANG YUN SON » Tue Jun 12, 2018 1:13 am

I just checked the source and it looks like the current implementation does scale COM as oppose to the individual atoms. But the problem for my case was that I do not use any bonds for the metal oxide since I'm fixing it in space, and context.getMolecules(); does not parse this residue as a molecule.

Maybe I would be able to work around this by adding fictitious bonds between atoms. I'll test this and see whether it fixes the problem.

ChangYun

POST REPLY