[gmx-developers] regd do_fnbf() non bonded interaction

Jason DeJoannis jdejoan at emory.edu
Thu Feb 5 18:42:07 CET 2004

Hi Anjan,

 See my postings from a couple months ago. I modified do_force() to
include such a mutation. But so far complex (i.e. polyatomic) mutations
are beyond me. Here is a sample monte carlo mutation:

bool do_atom_mutation(int *seed, int i, int tj, 
             t_topology *top, t_mdatoms *mdatoms,
             rvec x[], t_forcerec *fr, real beta, 
             t_atomtypes *atypes)
 /* I've omitted the calculation of the acceptance probability mut_acc */

  if (rando(seed) < mut_acc) {  /* accept the mutation */
    mass_change = atypes->mass[tj] - top->atoms.atom[i].m;
    top->atoms.atom[i].type = tj;
    top->atoms.atom[i].m    = atypes->mass[tj];
    top->atoms.atom[i].q    = atypes->charge[tj];
    mdatoms->typeA[i]       = tj;
    mdatoms->massA[i]       = atypes->mass[tj];
    mdatoms->chargeA[i]     = atypes->charge[tj];
    mdatoms->tmass         += mass_change;
    mdatoms->invmass[i]     = 1.0/atypes->mass[tj];
    mdatoms->massT[i]       = atypes->mass[tj];
    top->atoms.atomname[i]  = atypes->atomname[tj];
    top->atoms.resname[i]   = atypes->resname[tj];

  Any suggestions for polyatomic mutation, eg: H2O->NH3  ??

Jason de Joannis, Ph.D.
Chemistry Department, Emory University
1515 Pierce Dr. NE, Atlanta, GA 30322
Phone: (404) 712-2983
Email: jdejoan at emory.edu

> Date: Wed, 4 Feb 2004 09:22:18 -0600
> From: Anjan Raghunathan <araghuna at uiuc.edu>
> Subject: Re: [gmx-developers] regd do_fnbf() non bonded interaction
> calculation
> To: gmx-developers at gromacs.org
> Reply-To: gmx-developers at gromacs.org
> Hi,
>    Thanks for the suggestion.Will go with it.
>  One more Q...
> Suppose I need to change the particle itself that is being simulated during
> the run of the simulation.
> For example, suppose potassium is being simulated in a fluid and after a
> particular time or region I'd like to make it some other particle say
> sodium.(Though this is artificial I really would like to know if this
> procedure is possible).
>    So basically, how can I change the LJ parameters and the charge of the
> particle inside the code in GROMACS?
> thanks,
> Anjan

More information about the gromacs.org_gmx-developers mailing list