[gmx-users] index file groups

Mark Abraham Mark.Abraham at anu.edu.au
Tue Mar 1 14:28:14 CET 2011

On 26/02/2011 3:09 AM, Moeed wrote:
>         Thank you Mark for your detailed explanation. Sorry if I am
>         slow in understanding some stuff. I appreciate your patience.
>         1- I have an inquiry about index groups. If I specify all my
>         solute chains as a whole in one group [all chains] (including
>         n chains having m atoms each) and calculate interaction
>         energies between the following:
>         [all chains] [all chains]
>         [all chains] [all solvent] (group with all solvent atoms)
>         [all solvent] [all solvent]
>         (so  [all chains] is consisting of atoms  1 to m + atom m+1  
>         to 2m...)
>         is there a way to get the same results by defining index
>         groups as individual chains [chain 1] [chain 2] .. [chain n]?
>         for example
>         [chain 1] [all solvent]
>         +[chain 2] all solvent]
>         + chain 3 ..
>         = ? [all chains] [all solvent]
>     Sure. GROMACS will let you define up to 256 energy groups. You
>     just need to construct an appropriate index file. You can then add
>     them together in whatever way suits you, but you'll need to use
>     some other tool to post-process what g_energy reports.
>  I think you answered my question here. If I understand correctly, 
> say  [all chains] [all chains] LJ-SR interaction energy is the sum of 
> LJ SR with index file of separate chains. That is:
> LJ SR of [chain 1] [chain 1]+
> [chain 2] [chain 2]+
> [chain 3][chain 3]+
> .....= [all chains] [all chains] LJ SR

Not in general. There may be cross terms. LJ SR-[chain 1] [chain 1] is 
the sum of the short-range LJ interactions of all pairs of atoms within 
the cutoff where both are in chain 1 (ignoring exclusions). LJ SR-[all 
chains] [ all chains] is the sum of the short-range LJ interactions of 
all pairs of atoms within the cutoff where each member of the pair can 
come from *any* chain. For example, if chain 1 is close enough to chain 
2, then their atoms will interact. These will contribute to the RHS of 
your equation, but not the LHS.

>     In other words [all chains] looks at individual chains ([atoms 1
>     to m] + [atoms (m+1) to 2m] +...) but what it reports is sum over
>     all individual chains?
>>     2- The energy units are KJ per mol systems. I think this unit is
>>     not helpful  since in literature what we see is energy of a
>>     quantity per mol in usual sense.
>> What's the "usual sense" in which an energy of a binary mixture is 
>> reported?
>>     So my question is how can I get units in mol of particles for a
>>     binary mixture? on the list I read gromacs just divides energies
>>     by avogadros number...Does this mean there is no way of getting
>>     quantities in "mol" for mixtures?
>> What energy quantities are measured in "mol"?
>> See http://www.mail-archive.com/gmx-users@gromacs.org/msg27382.html 
>> for discussion.
> Actually I was referring to the same post :) By "usual sense" I mean 
> Avogadro number of particles. What I was trying to say is that, In 
> literature we see thermodynamic quantities per mol (N_A particles). I 
> dont think they report say heat of capacity per mole of systems..(what 
> gromcs calculates). 

Thermodynamic tables don't report total energies either. Those are 
*extensive* by definition. GROMACS energies are saying that if you had a 
mole of such systems, that would have an energy whose magnitude is that 
reported by GROMACS. So the actual system has an energy whose magnitude 
is smaller by a factor of N_A.

> We always see experimental data in mole amount of substance.for pure 
> systems, the values g_energy give should be divided by nmol (no of 
> particles) to get values per mole of sunstnce and not system. 
> For a binary mixture or ternary system, can we do the same thing by 
> dividing by N_A? What I am interested in is interaction energies 
> between my polymer and solvent. If I define my all chains as [all 
> chains] and get LJ SR and coulomb SR for [all chains] [all chains], in 
> order to ba able to compare this with those reported in literature, I 
> need to divide by N_A?

I can't say, I've no idea with what you think you can compare this 
computed quantity.

>         3- If I run a simulation with one chain the interaction energy
>         is smaller than a system with two chains..in fact there should
>         be one  specific value for interaction of component A with B
>         independent of system size and number of particles. This is
>         again a matter of units I think..How can I calculate the
>         actual energies for a specific system so that they can be
>         compared with those in literature (KJ/mol)!
>     Energies are dependent on system configuration and size. You have
>     to make sure you are comparing like quantities, e.g. by
>     normalizing with respect to the number of interacting chains, or
>     atoms or whatever. I do not understand any sense in which your
>     assertions above are true.
>  Tsorry I was not clear with my question..As I mentioned just above, 
> by normalizing you mean dividing by -nmol? If yes, for ternary system, 
> I need to divide by N-A oly?
>         4- Again regarding index groups, I am trying to realize how
>         gromacs deals with a number of chains  defined as awhole in a
>         group [all chains]. For instance for Rg or end to end
>         distance, what is calculated based on [all chains] is the
>         average of the case with index file having
>         [chain 1].... [chain n]?
>     You can calculate an end-to-end distance of a chain in a
>     configuration. You can observe the average of that quantity over a
>     set of configurations. You can compute that average over different
>     sets of configurations, and average over those if you want to. But
>     in what sense is the "end-to-end distance based on [all chains]"
>     meaningful?
>  By this question I was again trying to realize how calculations are 
> done by specifying two different index files ( case 1: [all chains] 
> and case 2: [chain 1] [chain 2]...)
> As in question 1 above : for end to end distance does [all chains] 
> looks at indivdual subchains and takes the average of Rg or End to end 
> sidtance over chains or it looks at them as a whole group (a single 
> longer chain containing atoms from atom number 1 to m*(chain 
> number)..I think my question is clear now. :)

If you give GROMACS an operation to do on an index group, it does it on 
that index group, not by magically guessing that there are logical 
subgroupings. If your operation only makes sense on the subgroups, do it 
on them.

>         In other words [all chains] deals with all chains separately
>         and reports quantities for ALL the chains as a group?
>     If you give a GROMACS tool a set of atoms over which to do an
>     operation, it does that operation over that set of atoms. If that
>     operation doesn't make sense on that set of atoms, then you've
>     asked for a nonsense operation, and the problem does not lie with
>     GROMACS. 
>     If you want the average of the end-to-end distance of all your
>     chains over your simulation, then you'll have to compute the
>     time-average for each chain individually, and then take the
>     chain-average of them.
>  I am sorry Mark but I still dont see this. From what you said here I 
> understand that specifying  [all chains] does not give average of the 
> case with index file with [chain 1] [chain 2]
>     ...
> I thought in the case of interaction energies (question 1 above), 
> gromcas looks at individual chains  and adds up energies:
> [chain 1] [all solvent]
> +[chain 2] all solvent]
> + chain 3 ..
> = ? [all chains] [all solvent]

No. See above. You asked for an operation to be done on the group [all 
chains]. It's done on the group [all chains]. It's up to you to ask for 
atomic operations.

The Rg of [all chains] is the radius of gyration of the set of every 
atom in [all chains]. That's an atomic operation, but it may well not be 
what you what to calculate. If what you want is the average of Rg over 
all the chains, then you need to compute Rg for each chain (an atomic 
operation), and average it separately.


> Thank you for your time,
>     Mark
>     -- 
>     gmx-users mailing list gmx-users at gromacs.org
>     <mailto:gmx-users at gromacs.org>
>     http://lists.gromacs.org/mailman/listinfo/gmx-users
>     Please search the archive at
>     http://www.gromacs.org/Support/Mailing_Lists/Search before posting!
>     Please don't post (un)subscribe requests to the list. Use the www
>     interface or send it to gmx-users-request at gromacs.org
>     <mailto:gmx-users-request at gromacs.org>.
>     Can't post? Read http://www.gromacs.org/Support/Mailing_Lists
> -- 
> Moeed Shahamat
> Graduate Student (Materials Modeling Research Group)
> McGill University- Department of Chemical Engineering
> Montreal, Quebec H3A 2B2, Canada
> Web:http://mmrg.chemeng.mcgill.ca/pages/current-group-members/moeed-shahamat.php
> Web:http://mmrg.chemeng.mcgill.ca/

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://maillist.sys.kth.se/pipermail/gromacs.org_gmx-users/attachments/20110302/e3ed64da/attachment.html>

More information about the gromacs.org_gmx-users mailing list