============== README g_count ============== ------------------------------------------------------------------- UNSUPPORTED AND DEPRECATED Development and support for this tool has been discontinued. If you have questions/bugs please put them in the issue tracker https://github.com/orbeckst/g_count/issues to keep a record. If you are fixing bugs please send PULL REQUESTS. For more modern/universal approaches to accomplishing similar analysis look at https://www.mdanalysis.org and there are now also some Gromacs tools that do similar things. -------------------------------------------------------------------- Analysis of permeation events: g_count and g_flux Copyright (c) 2001-2011 Oliver Beckstein <oliver.beckstein@bioch.ox.ac.uk> Published under the GNU Public Licence, version 2. See LICENCE. Contributors: Marc Baaden (xpm output in g_zcoord) The latest sources can be found in the git repository at https://github.com/orbeckst/g_count Please report bugs and feature requests through the Issue tracker https://github.com/orbeckst/g_count/issues Introduction ============ g_count simply counts the molecules within a cylinder aligned with a coordinate axis. g_flux calculates fluxes by analyzing the trajectories of molecules passing through a cylinder. g_zcoord simply writes out the z-coordinate of atoms in a cylindrical region or makes a xpm matrix for quick visualization. You may be able to do pretty much the same with g_traj and some post-processing. Citing ====== When you use g_flux or g_count in published work please cite O. Beckstein and M. S. P. Sansom, The influence of geometry, surface character and flexibility on the permeation of ions and water through biological pores, Phys. Biol. 1 (2004), 42--52. doi:10.1088/1478-3967/1/1/005 Thank you! Required software ================= You must have a compiled version of Gromacs 4.5.3 (or probably later) with all libraries and include files, and the appropriate C-compiler. If you compiled Gromacs with X11 support see the end of this README if you have problems. Note that this software now requires at least Gromacs 4.5.3 to compile. This version is NOT backwards compatible (although 4.5.x might work). Use an older tar ball for previous versions of Gromacs. Installation ============ See INSTALL. --------------------------------------------------------------- THIS VERSION OF g_count ONLY COMPILES AGAINST GROMACS 4.5.x --------------------------------------------------------------- (Specifically, it has been verified with 4.5.3.) Problems, Questions =================== * A water molecule is reported as crossing but in VMD I can see that this is not the case. What is going on? There appears to be a subtle problem when linking gflux gmx4.4 against Gromacs 4.0.4. It works for 4.0.2. Sorry, this is all that's known at the moment. * Gromacs 4.x: Versions of g_flux and g_count for 3.x were able to handle molecules; the current code base can only handle atoms. Use water oxygens when analysing water. * Do I need the [Gromacs] CVS version somewhere? Would it be better to reinstall gromacs 3.1.4 too? > No, you don't need the sources to compile, only libraries and > include files. > Just make sure that you point GMX_LIB_DIR to the directory where the > libmd.a (or libmd.so) and libgmx.a (or .so) files are. The > GMX_INCLUDE_DIR must point to the directory with the *.h files. * Missing X libraries, indicated by errors similar to the following: >> gcc -o g_count g_count.o utilgmx.o xmgr.o count.o -lm >> -L/usr/local/gromacs/i686-pc-linux-gnu/lib -lmd -lgmx >> /usr/local/gromacs/i686-pc-linux-gnu/lib/libgmx.a(mgmx.o): In function >> `gmx_gui': >> mgmx.o(.text+0x29): undefined reference to >> `applicationShellWidgetClass' >> mgmx.o(.text+0x4c): undefined reference to `XtOpenApplication' >> mgmx.o(.text+0x7c): undefined reference to `XtRealizeWidget' >> /usr/local/gromacs/i686-pc-linux-gnu/lib/libgmx.a(mgmx.o): In function >> `mk_gui': >> mgmx.o(.text+0x1d5): undefined reference to `_XmStrings' >> mgmx.o(.text+0x1f6): undefined reference to >> `XmCreateFileSelectionDialog' [...] > However, the errors you get look to me as if your gromacs libraries are > also linked against X-Windows/Motif. I tend to switch it off on > compilation, something --without-x (X is more hassle than help and ngmx > doesn't get used anymore since vmd...). > > You might have to add the include path for X includes to CPPFLAGS, eg > (no idea if it works) > > CPPFLAGS += -I/usr/X11R6/include > > and X libs to LDFLAGS > > LDFLAGS += -L/usr/X11R6/lib -lX11 -lXm -lXaw -lXpm * If compilation fails and error messages mention 'fatal.h' then you are compiling against the wrong version of Gromacs. Please see the top of this file for the compatible versions. * Compiling/linking fails with messages such as libgmx.a(vmddlopen.o): In function `vmddlopen': vmddlopen.c:(.text+0x43): undefined reference to `dlopen' ... collect2: ld returned 1 exit status This indicates that you also have to link against the dynamic loader library, libdl. In the Makefile, add `-ldl' to LDFLAGS so that it looks like LDFLAGS += -lm -L$(GMX_LIB_DIR) -lmd -lgmx -ldl * Compiling/linking fails with messages such as libgmx.a(pthreads.o): In function `tMPI_Thread_key_delete': pthreads.c:(.text+0x64d): undefined reference to `pthread_key_delete' ... collect2: ld returned 1 exit status This indicates that you also have to link against the parallel threads library, libpthread. In the Makefile, add `-lpthread' to LDFLAGS so that it looks like LDFLAGS += -lm -L$(GMX_LIB_DIR) -lmd -lgmx -lpthread