5
$\begingroup$

Is there a standardized format that is commonly used across molecular simulation (or QM) software packages to store z-matrix information about a molecule? For instance, in CHARMM, which is a Molecular Dynamics (MD) code, the z-matrix information for a dihedral IJKL is stored as two bond lengths (IJ and KL), two angles (IJK and JKL), and the dihedral (IJKL). Conversely, ORCA prints out the z-matrix information for each atom in the order of bond, angle, and dihedral. Are there any consistent formats for this representation across different software packages?

$\endgroup$

1 Answer 1

4
$\begingroup$

CFOUR

The software uses one of the most standard formats, and one of the cleanest formats, for z-matrices.

Specification of the format

  • The first column contains a list of all of the nuclei.
  • The second column contains an index that tells us which nucleus will be used for the bond length that is displayed in the third column.
  • The fourth column contains an index that tells us which nucleus will be used for the bong angle (along with the other two nuclei that were denoted in columns 1 and 2) that is displayed in the fifth column.
  • The sixth column contains the index that tells us which nucleus will be used for the dihedral angle (along with the other three nuclei that were denoted in columns 1, 2, and 4) that is displayed in the seventh column.

More information can be found in the CFOUR documentation here, including information about "dummy nuclei" (which is mentioned later in this answer) and "ghost nuclei".

Strengths of the format used by CFOUR

CFOUR allows you to use the same nucleus label more than once (so we do not need to have C1, C2, C3, etc. for the multiple carbon nuclei in a molecule; instead we can just call them all C). CFOUR also allows the numerical bond lengths, bond angles, and dihedral angles, to easily and cleanly be represented by variables that can be set separately, unlike PySCF which would require f-strings for this (along with all of the other Python "junk" that would be required to make the z-matrix in the first place).

Weakness of CFOUR

This is more of a weakness of CFOUR rather than the format itself, but CFOUR doesn't allow bond angles that are equal to 0 degrees or 180 degrees (although dihedral angles can certainly be 180 degrees), which can be a problem for linear molecules containing more than two nuclei. "Dummy nuclei" need to be introduced for such molecules. Dummy nuclei also are needed for ring molecules such as benzene. The need for dummy nuclei introduces an inconvenience, since more lines need to be specified in the z-matrix, meaning that more angles and distances need to be determined, and the z-matrix becomes less readable/interpretable, and automatic z-matrix generators might not be able to make such z-matrices. However, sometimes a z-matrix with dummy nuclei can be more efficient for computations than the simpler version that wouldn't require the dummy nuclei.

Benzene example

The following z-matrix was used in my AI ENERGIES database, in this file, and part of it is also available in the above-linked documentation page:

X                                                                               
C 1 RCC                                                                         
C 1 RCC 2 A60                                                                   
C 1 RCC 3 A60 2 D180                                                            
C 1 RCC 4 A60 3 D180                                                            
C 1 RCC 5 A60 4 D180                                                            
C 1 RCC 6 A60 5 D180                                                            
H 1 RXH 2 A60 7 D180                                                            
H 1 RXH 3 A60 2 D180                                                            
H 1 RXH 4 A60 3 D180                                                            
H 1 RXH 5 A60 4 D180                                                            
H 1 RXH 6 A60 5 D180                                                            
H 1 RXH 7 A60 6 D180                                                            
                                                                                
RCC=2.63613014933                                                                 
RXH=4.68194765185                                                               
A60=60                                                                          
D180=180                  
$\endgroup$
1
  • $\begingroup$ By that logic would we not need a READ statement for the first line (which has 0 bond lengths, 0 bond angles, and 0 dihedral angles) too, which would mean at least four READ statements? $\endgroup$ Commented Mar 26 at 2:44

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .