[gmx-developers] Lennard Jones and Electrostatic energies.

IÑIGO SAENZ inigo.saenz01 at estudiant.upf.edu
Wed Oct 15 14:57:48 CEST 2014


Thanks to all!!!
Your help has been very valuable for me. I was stuck with this problem and
now I know how to continue.
You will read me again if I have got new questions (Sure I will have :) ).

Thanks!

2014-10-13 12:50 GMT+02:00 Berk Hess <hess at kth.se>:

>  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>
> 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> 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>:
>> >>
>> >> 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> 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.
>> >>
>> >>
>> >>
>> >>
>> >>
>> >>
>> >> --
>> >> 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.
>> >
>> >
>> >
>> > --
>> > 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.
>> --
>> 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.
>>
>
>
>
>
>
> --
> 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.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://maillist.sys.kth.se/pipermail/gromacs.org_gmx-developers/attachments/20141015/fa074335/attachment.html>


More information about the gromacs.org_gmx-developers mailing list