GMX-TCAF(1)

NAME
gmx-tcaf - Calculate viscosities of liquids

SYNOPSIS

gmx tcaf [-f [<.trr/.cpt/...>]] [-s [<.tpr/.gro/...>]] [-n [<.ndx>]]
         [-ot [<.xvg>]] [-oa [<.xvg>]] [-o [<.xvg>]] [-of [<.xvg>]]
         [-oc [<.xvg>]] [-ov [<.xvg>]] [-b <time>] [-e <time>]
         [-dt <time>] [-[no]w] [-xvg <enum>] [-[no]mol] [-[no]k34]
         [-wt <real>] [-acflen <int>] [-[no]normalize] [-P <enum>]
         [-fitfn <enum>] [-beginfit <real>] [-endfit <real>]

DESCRIPTION

gmx tcaf computes tranverse current autocorrelations. These are used to estimate the shear viscosity, eta. For details see: Palmer, Phys. Rev. E 49 (1994) pp 359-366.

Transverse currents are calculated using the k-vectors (1,0,0) and (2,0,0) each also in the y- and z-direction, (1,1,0) and (1,-1,0) each also in the 2 other planes (these vectors are not independent) and (1,1,1) and the 3 other box diagonals (also not independent). For each k-vector the sine and cosine are used, in combination with the velocity in 2 perpendicular directions. This gives a total of 16*2*2=64 transverse currents. One autocorrelation is calculated fitted for each k-vector, which gives 16 TCAFs. Each of these TCAFs is fitted to f(t) = exp(-v)(cosh(Wv) + 1/W sinh(Wv)), v = -t/(2 tau), W = sqrt(1 - 4 tau eta/rho k^2), which gives 16 values of tau and eta. The fit weights decay exponentially with time constant w (given with -wt) as exp(-t/w), and the TCAF and fit are calculated up to time 5*w. The eta values should be fitted to 1 - a eta(k) k^2, from which one can estimate the shear viscosity at k=0.

When the box is cubic, one can use the option -oc, which averages the TCAFs over all k-vectors with the same length. This results in more accurate TCAFs. Both the cubic TCAFs and fits are written to -oc The cubic eta estimates are also written to -ov.

With option -mol, the transverse current is determined of molecules instead of atoms. In this case, the index group should consist of molecule numbers instead of atom numbers.

The k-dependent viscosities in the -ov file should be fitted to eta(k) = eta_0 (1 - a k^2) to obtain the viscosity at infinite wavelength.

Note: make sure you write coordinates and velocities often enough. The initial, non-exponential, part of the autocorrelation function is very important for obtaining a good fit.

OPTIONS

Options to specify input files:

-f [<.trr/.cpt/...>] (traj.trr)
    Full precision trajectory: trr cpt tng

-s [<.tpr/.gro/...>] (topol.tpr) (Optional)
    Structure+mass(db): tpr gro g96 pdb brk ent

-n [<.ndx>] (index.ndx) (Optional)
    Index file

    Options to specify output files:

-ot [<.xvg>] (transcur.xvg) (Optional)
    xvgr/xmgr file

-oa [<.xvg>] (tcaf_all.xvg)
    xvgr/xmgr file

-o [<.xvg>] (tcaf.xvg)
    xvgr/xmgr file

-of [<.xvg>] (tcaf_fit.xvg)
    xvgr/xmgr file

-oc [<.xvg>] (tcaf_cub.xvg) (Optional)
    xvgr/xmgr file

-ov [<.xvg>] (visc_k.xvg)
    xvgr/xmgr file

    Other options:

-b <time> (0)
    Time of first frame to read from trajectory (default unit ps)

-e <time> (0)
    Time of last frame to read from trajectory (default unit ps)

-dt <time> (0)
    Only use frame when t MOD dt = first time (default unit ps)

-[no]w (no)
    View output .xvg, .xpm, .eps and .pdb files

-xvg <enum> (xmgrace)
    xvg plot formatting: xmgrace, xmgr, none

-[no]mol (no)
    Calculate TCAF of molecules

-[no]k34 (no)
    Also use k=(3,0,0) and k=(4,0,0)

-wt <real> (5)
    Exponential decay time for the TCAF fit weights

-acflen <int> (-1)
    Length of the ACF, default is half the number of frames

-[no]normalize (yes)
    Normalize ACF

-P <enum> (0)
    Order of Legendre polynomial for ACF (0 indicates none): 0, 1, 2, 3

-fitfn <enum> (none)
    Fit function: none, exp, aexp, exp_exp, exp5, exp7, exp9

-beginfit <real> (0)
    Time where to begin the exponential fit of the correlation function

-endfit <real> (-1)
    Time where to end the exponential fit of the correlation function, -1 is until the end

SEE ALSO

gmx(1)

More information about GROMACS is available at <http://www.gromacs.org/>.

COPYRIGHT
2024, GROMACS development team