[gmx-developers] Lennard Jones and Electrostatic energies.
Berk Hess
hess at kth.se
Mon Oct 13 12:50:20 CEST 2014
Hi,
This issue was already resolved, but somehow my answer didn't go to the
list.
Using vdw-modifier=none made the energy match ACEMD. Apparently ACEMD
doesn't correct for the jump in the LJ energy at the cut-off.
Cheers,
Berk
On 10/10/2014 07:21 PM, Mark Abraham wrote:
>
>
> On Fri, Oct 10, 2014 at 4:27 PM, Szilárd Páll <pall.szilard at gmail.com
> <mailto:pall.szilard at gmail.com>> wrote:
>
> Hi,
>
> I think you'll have the easiest time with the plain C reference
> kernels; the actual kernels used in production are compiled from SIMD
> intrinsics code which you likely don't want to start reading (and from
> where you can't even print).
>
> For the Verlet cut-off scheme (default in 5.0) these are the files
> with the reference implementation you should be looking at:
> src/gromacs/mdlib/nbnxn_kernels/nbnxn_kernel_ref{,_inner,_outer}.c/h
> - there is no single source file, but this should be quite easy to
> read.
> There is a bit more readable GPU reference kernel (trigger with
> GMX_EMULATE_GPU env. var.):
> src/gromacs/mdlib/nbnxn_kernels/nbnxn_kernel_gpu_ref.c
> Finally, for the group scheme there's also self-contained
> reference kernel here:
> src/gromacs/gmxlib/nonbonded/nb_generic.c
>
> The first and last kernels for the CPU Verlet and Group scheme you can
> trigger with the GMX_DISABLE_SIMD_KERNELS environment variable.
>
> Cheers,
> --
> Szilárd
>
> PS: make sure that the same interaction modifiers (switch, shift) are
> used by both GROMACS and ACEMD.
>
>
> Szilard's point here is really important. Some quality time with the
> docs of both packages is always needed to try to get them to do
> exactly the same thing as each other. Ultimately they can't do the
> addition of a large bunch of floating-point numbers in exactly the
> same way, but you need to make sure all the non-bonded settings are
> really the same.
>
> Also, start by verifying the LJ potential between two atoms, because
> now there's no accumulation to have different behaviour ;-) Then,
> observe how much the potential in each code varies even upon
> "invariant" operations, like a rotation of the entire system (which
> will change the order of the accumulation). By now, maybe you've
> observed that the deviation is of an expected magnitude (YMMV, I have
> no idea).
>
> On Fri, Oct 10, 2014 at 4:07 PM, IÑIGO SAENZ
> <inigo.saenz01 at estudiant.upf.edu
> <mailto:inigo.saenz01 at estudiant.upf.edu>> wrote:
> > Hi all,
> >
> > I'll try to explain to you my situation.
> > I have a simple system of 3000 Argon atoms without bonds,
> without angles,
> > without dihedrals, only with LJ parameters and I run it with
> ACEMD and I
> > obtained a VDW potential of -1.34 KJ/mol.
> > After this, I generate the same system for running in gromacs
> (.top and .gro
> > files), I run it and I obtain a LJ energy of -1.32524.
> > What I want is to include some print statements into the source
> files of
> > gromacs in order to be able to analyze how gromacs performs the
> calculation
> > of LJ potential to find where the desviation in the results
> between ACEMD
> > and GROMACS is produced.
>
>
> You could do this, but the different order of operations in the two
> codes is going to make it hard to get meaningful output to compare.
>
> Mark
>
> >
> > The electrostatic configuration that I use in the .mdp file is the
> > following:
> >
> > coulombtype = cut-off
> > rlist = 0
> > rcoulomb = 0.9
> > rvdw = 0.9
> >
> > And here some lines of the mdp.log that might be of interest:
> >
> > Gromacs version: VERSION 5.0.1
> > Precision: single
> > Memory model: 64 bit
> > MPI library: thread_mpi
> > OpenMP support: enabled
> > GPU support: disabled
> > invsqrt routine: gmx_software_invsqrt(x)
> > SIMD instructions: AVX_256
> >
> > Thank you very much in advance.
> >
> > Iñigo Sáenz
> > Universitat Pompeu Fabra, Barcelona.
> >
> >
> >
> >
> > 2014-10-10 14:40 GMT+02:00 Berk Hess <hess at kth.se
> <mailto:hess at kth.se>>:
> >>
> >> Hi,
> >>
> >> We might need a wiki entry for this, since this is a question
> that keeps
> >> popping up, but it's unfortunately not easy to answer.
> >>
> >> Berk
> >>
> >>
> >> On 10/10/2014 02:37 PM, Mark Abraham wrote:
> >>
> >> Hi,
> >>
> >> The simple answer is "in most of them" :-) The non-bonded
> kernels where
> >> they are computed come in lots of physics and hardware
> flavours, and then
> >> there is a lot infrastructure that coordinates accumulating
> them properly.
> >> We can point you in the right direction if we know what you're
> trying to
> >> achieve, though.
> >>
> >> Mark
> >>
> >> On Fri, Oct 10, 2014 at 12:53 PM, IÑIGO SAENZ
> >> <inigo.saenz01 at estudiant.upf.edu
> <mailto:inigo.saenz01 at estudiant.upf.edu>> wrote:
> >>>
> >>> Hi,
> >>>
> >>> Does anyone know in which .C file are the LJ and Coulomb short
> range
> >>> interactions energies calculated, please?
> >>> I'm getting crazy studying the gromacs' source code and I
> cannot find the
> >>> right .C file where those calculations are made.
> >>>
> >>> Iñigo Sáenz
> >>> Universitat Pompeu Fabra, Barcelona.
> >>>
> >>> --
> >>> Gromacs Developers mailing list
> >>>
> >>> * Please search the archive at
> >>>
> http://www.gromacs.org/Support/Mailing_Lists/GMX-developers_List
> before
> >>> posting!
> >>>
> >>> * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists
> >>>
> >>> * For (un)subscribe requests visit
> >>>
> https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-developers
> >>> or send a mail to gmx-developers-request at gromacs.org
> <mailto:gmx-developers-request at gromacs.org>.
> >>
> >>
> >>
> >>
> >>
> >>
> >> --
> >> Gromacs Developers mailing list
> >>
> >> * Please search the archive at
> >>
> http://www.gromacs.org/Support/Mailing_Lists/GMX-developers_List
> before
> >> posting!
> >>
> >> * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists
> >>
> >> * For (un)subscribe requests visit
> >>
> https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-developers
> or
> >> send a mail to gmx-developers-request at gromacs.org
> <mailto:gmx-developers-request at gromacs.org>.
> >
> >
> >
> > --
> > Gromacs Developers mailing list
> >
> > * Please search the archive at
> > http://www.gromacs.org/Support/Mailing_Lists/GMX-developers_List
> before
> > posting!
> >
> > * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists
> >
> > * For (un)subscribe requests visit
> >
> https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-developers
> or
> > send a mail to gmx-developers-request at gromacs.org
> <mailto:gmx-developers-request at gromacs.org>.
> --
> Gromacs Developers mailing list
>
> * Please search the archive at
> http://www.gromacs.org/Support/Mailing_Lists/GMX-developers_List
> before posting!
>
> * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists
>
> * For (un)subscribe requests visit
> https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-developers
> or send a mail to gmx-developers-request at gromacs.org
> <mailto:gmx-developers-request at gromacs.org>.
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://maillist.sys.kth.se/pipermail/gromacs.org_gmx-developers/attachments/20141013/e7fd1653/attachment-0001.html>
More information about the gromacs.org_gmx-developers
mailing list