---
name: "gmx-principal"
section: "1"
platform: "linux"
package: "gromacs-data"
version: "2025.2-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/gmx-principal"
---

# gmx-principal(1)

Calculate principal axes of inertia for a group of atoms

## NAME

gmx-principal - Calculate principal axes of inertia for a group of atoms

## SYNOPSIS

```
gmx principal [-f [<.xtc/.trr/...>]] [-s [<.tpr/.gro/...>]]
             [-n [<.ndx>]] [-a1 [<.xvg>]] [-a2 [<.xvg>]]
             [-a3 [<.xvg>]] [-om [<.xvg>]] [-b <time>] [-e <time>]
             [-dt <time>] [-tu <enum>] [-[no]w] [-xvg <enum>]
             [-[no]foo]
```

## DESCRIPTION

**gmx principal** calculates the three principal axes of inertia for a group of atoms. NOTE: Old versions of GROMACS wrote the output data in a strange transposed way. As of GROMACS 5.0, the output file paxis1.dat contains the x/y/z components of the first (major) principal axis for each frame, and similarly for the middle and minor axes in paxis2.dat and paxis3.dat.

## OPTIONS

Options to specify input files:

- **-f \[\<.xtc/.trr/...\>\] (traj.xtc)**

  Trajectory: *xtc* *trr* *cpt* *gro* *g96* *pdb* *tng*

- **-s \[\<.tpr/.gro/...\>\] (topol.tpr)**

  Structure+mass(db): *tpr* *gro* *g96* *pdb* brk ent

- **-n \[\<.ndx\>\] (index.ndx) (Optional)**

  Index file

Options to specify output files:

- **-a1 \[\<.xvg\>\] (paxis1.xvg)**

  xvgr/xmgr file

- **-a2 \[\<.xvg\>\] (paxis2.xvg)**

  xvgr/xmgr file

- **-a3 \[\<.xvg\>\] (paxis3.xvg)**

  xvgr/xmgr file

- **-om \[\<.xvg\>\] (moi.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)

- **-tu \<enum\> (ps)**

  Unit for time values: fs, ps, ns, us, ms, s

- **-\[no\]w (no)**

  View output *.xvg*, *.xpm*, *.eps* and *.pdb* files

- **-xvg \<enum\> (xmgrace)**

  xvg plot formatting: xmgrace, xmgr, none

- **-\[no\]foo (no)**

  Dummy option to avoid empty array

## SEE ALSO

**[gmx(1)](/gmx/1.md)**

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

## COPYRIGHT

2025, GROMACS development team
