One of the common questions often encountered in molecular modelling relates to the choice of representation between Cartesian coordinate and internal coordinate.
Cartesian coordinate: The position of atomic nuclei is described in three dimensional space using three variables x, y and z.
Therefore, one can say that the basic difference between the two representations is that the Cartesian coordinate is an absolute way of describing position, whereas Z-matrix is a relative.
However, Cartesian coordinates should generally be preferred when dealing with non-symmetric molecule or very large molecule (to reduce error due to rounding off).
Cartesian coordinate: The position of atomic nuclei is described in three dimensional space using three variables x, y and z.
Cartesian coordinate of acetaldehyde can be presented as follows:
Internal (Z-matrix) : When talking of Z-matrix, we keep track of relative position of atoms. Z-matrix is composed of atom number, bond length, bond angle and dihedral angle.
Z-matrix for acetaldehyde:
Z-matrix for acetaldehyde:
Therefore, one can say that the basic difference between the two representations is that the Cartesian coordinate is an absolute way of describing position, whereas Z-matrix is a relative.
When is Z-matrix better than Cartesian?
Z-matrix is very useful while optimizing a structure by keeping some restraints. For example, optimizing the structure for minimum energy by keeping a particular dihedral angle within certain range of value. Z-matrix is also useful when dealing with molecules like water (C2v symmetry) and ammonia (C3v symmetry). In ammonia three hydrogen atoms are pyramidal and equivalent. Using z-matrix you can tell the program about the fact that ammonia is C3v symmetric by giving proper constraints and the molecule will indeed be optimized accordingly.However, Cartesian coordinates should generally be preferred when dealing with non-symmetric molecule or very large molecule (to reduce error due to rounding off).
How to convert Cartesian to Z-matrix?
The recipe from converting Cartesian coordinates into Z-matrix consists following two elements.
- Bonds which are calculated as Euclidean distances.
- Angles that are determined using the following equation:
In the above equation, torsional angle is the angle made by two planes. One comprising of points X0, X1 and X2 and other comprising of points X1, X2 and X3 respectively. These two planes can be imagined as in the figure below.
![]() |
| Dihedral angle formed by two plane as described above |
Some programs that are used for such conversions include OPEN-BABEL and newzmat (in Gaussian).
Which coordinate system do you prefer? Participate in the poll below.
When do you use Z-matrix and when do you prefer Cartesian? Leave a comment and share the rationale behind your choice of coordinate system.


