| Both sides previous revision Previous revision Next revision | Previous revision |
| molecular_geometry [2025/11/10 14:34] – [Z-matrix input] doll | molecular_geometry [2026/03/26 09:56] (current) – put;nocompress peterk |
|---|
| Variable names, and in general expressions that are linear in all dependent variables, may be used as well as fixed numerical values for the parameters $r$, $\alpha$ and $\beta$. These expressions are evaluated as late as possible, so that it is possible, for example, to set up loops in which these parameters are changed; the geometry optimizer also understands this construction, and will optimize the energy with respect to the value of the variables. Non-linear expressions should not be used, because the geometry optimization module is unable to differentiate them. | Variable names, and in general expressions that are linear in all dependent variables, may be used as well as fixed numerical values for the parameters $r$, $\alpha$ and $\beta$. These expressions are evaluated as late as possible, so that it is possible, for example, to set up loops in which these parameters are changed; the geometry optimizer also understands this construction, and will optimize the energy with respect to the value of the variables. Non-linear expressions should not be used, because the geometry optimization module is unable to differentiate them. |
| |
| Once the reorientation has been done, the program then looks for symmetry ($D_{2h}$ and subgroups), unless the ''NOSYM'' option has been given. It is possible to request that reduced symmetry be used by using appropriate combinations of the options ''%%X,Y,Z,XY,XZ,YZ,XYZ%%''. These specify symmetry operations, the symbol defining which coordinate axes change sign under the operation. The point group is constructed by taking all combinations of specified elements. If symmetry is explicitly specified in this way, the program checks to see that the group requested can be used, swapping the coordinate axes if necessary. This provides a mechanism for ensuring that the same point group is used, for example, at all points in the complete generation of a potential energy surface, allowing the safe re-utilization of neighbouring geometry molecular orbitals as starting guesses, etc.. | Once the reorientation has been done, the program then looks for symmetry ($D_{2h}$ and subgroups), unless the ''NOSYM'' option has been given. It is possible to request that reduced symmetry be used by using appropriate combinations of the options ''%%X,Y,Z,XY,XZ,YZ,XYZ%%''. These specify symmetry operations, the symbol defining which coordinate axes change sign under the operation. The point group is constructed by taking all combinations of specified elements. If symmetry is explicitly specified in this way, the program checks to see that the group requested can be used, swapping the coordinate axes if necessary. This provides a mechanism for ensuring that the same point group is used, for example, at all points in the complete generation of a potential energy surface, allowing the safe re-utilization of neighbouring geometry molecular orbitals as starting guesses, etc.. When there is point-group symmetry, it is important to ensure that the dependence of the Z-matrix geometry on variables is such that the symmetry cannot be broken by any variation of those variables form their initial values; for example, for the water molecule in C2v symmetry, the two O-H distances should be specified using the same variable. Otherwise, numerical noise accumulated during geometry optimisation can cause the symmetry to break, leading to undefined behaviour. |
| |
| Note that symmetry is not implemented in density fitting methods, and in these cases the NOSYM option is implied automatically. | Note that symmetry is not implemented in density fitting methods, and in these cases the NOSYM option is implied automatically. |
| ==== XYZ input ==== | ==== XYZ input ==== |
| |
| Simple cartesian coordinates in Ångstrom units can be read as an alternative to a Z matrix, either directly from the input stream, or from a file (see section [[molecular geometry#geometry files|geometry files]]).). This facility is triggered by setting the Molpro variable ''GEOMTYP'' to the value ''XYZ'' before the geometry specification is given, but usually this does not need to be done, as a geometry specification where the first line is a single integer will be recognized as XYZ format, as will the case of the first line consisting of a chemical symbol followed by three cartesian coordinates. The geometry block should then contain the cartesian coordinates in XYZ format (Minnesota Supercomputer Center, Inc.). Variable names, and in general expressions that are linear in all dependent variables, may be used as well as fixed numerical values. Non-linear expressions should not be used, because the geometry optimization module is unable to differentiate them. | Simple cartesian coordinates in Ångstrom units can be read as an alternative to a Z matrix, either directly from the input stream, or from a file (see section [[molecular geometry#geometry files|geometry files]]).). This facility is triggered by setting the Molpro variable ''GEOMTYP'' to the value ''XYZ'' before the geometry specification is given, but usually this does not need to be done, as a geometry specification where the first line is a single integer will be recognized as XYZ format, as will the case of the first line consisting of a chemical symbol followed by three cartesian coordinates. The geometry block should then contain the cartesian coordinates in XYZ format (Minnesota Supercomputer Center, Inc.). Only fixed numerical values are allowed. In contrast to z-matrix input, expressions containing variables are not permitted. Note that it is possible to present cartesian coordinates using expressions, via the cartesian variant of z-matrix input described above. |
| |
| The XYZ file format consists of two header lines, the first of which contains the number of atoms, and the second of which is a title. The remaining lines each specify the coordinates of one atom, with the chemical symbol in the first field, and the $x$, $y$, $z$ coordinates following. A sequence number may be appended to the chemical symbol; it is then interpreted as the atomic group number, which can be used when different basis sets are wanted for different atoms of the same kind. The basis set is then specified for this group number rather than the atomic symbol. As a further extension, the first two header lines can be omitted. | The XYZ file format consists of two header lines, the first of which contains the number of atoms, and the second of which is a title. The remaining lines each specify the coordinates of one atom, with the chemical symbol in the first field, and the $x$, $y$, $z$ coordinates following. A sequence number may be appended to the chemical symbol; it is then interpreted as the atomic group number, which can be used when different basis sets are wanted for different atoms of the same kind. The basis set is then specified for this group number rather than the atomic symbol. As a further extension, the first two header lines can be omitted. |
| |
| Note that for XYZ input the default is not to reorient the molecule. Orientation can be forced, however, by the ''MASS'' or ''CHARGE'' options on the ''ORIENT'' directive. | Note that for XYZ input the default is not to reorient the molecule. Orientation can be forced, however, by the ''MASS'' or ''CHARGE'' options on the ''ORIENT'' directive. If orientation is requested, any approximately-obeyed point-group symmetry is discovered, and the geometry refined to obey that symmetry as closely as possible, as described in [[https://doi.org/10.1007/s10910-021-01302-x|J. Math. Chem. 60, 161-171 (2022)]]. |
| |
| <code - examples/h2o_xyzinput.inp> | <code - examples/h2o_xyzinput.inp> |
| * **''NOVARIABLES''** Skip output of Molpro variables | * **''NOVARIABLES''** Skip output of Molpro variables |
| * **''KEEPSPH''** Express orbitals in terms of spherical-harmonic functions rather than converting to cartesian | * **''KEEPSPH''** Express orbitals in terms of spherical-harmonic functions rather than converting to cartesian |
| | * **''NOCOMPRESS''** By default the orbitals are stored with lossy compression (approximately 32-bit precision) on a separate binary sidecar file. This option forces instead the full writing of the orbitals in ASCII to the xml stream |
| |
| If //style// is ''TREXIO'', then the geometry and orbitals are written to a [[https://github.com//trex-coe/trexio|TREXIO]] file. As with ''XML'', the orbitals can be controlled or omitted using the ''NOORBITALS'' and ''NOSKIPVIRT'' options. | If //style// is ''TREXIO'', then the geometry and orbitals are written to a [[https://github.com//trex-coe/trexio|TREXIO]] file. As with ''XML'', the orbitals can be controlled or omitted using the ''NOORBITALS'' and ''NOSKIPVIRT'' options. |