GMX-TCAF(1) | GROMACS | 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¶

2019, GROMACS development teamFebruary 15, 2019 | 2019.1 |