Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Symmetry

In everyday life, symmetry operations are given by rotations, reflections, and inversions of a physical object that leaves the object unchanged, i.e., the properties of the object are invariant under these transformations.

In quantum mechanics, symmetry operations are applied to wave functions, operators, and equations, and we are concerned with the invariance of observables.

Active or passive point of view

When discussing the effect of symmetry operations, it becomes important to distinguish the active and passive points of view. In the former, symmetry operations move the system whereas, in the latter, the frame of reference is changed. An illustration of a step-by-step sequence of operations from these two points of view is presented in the figure below.

Passive and active transformations

We will adopt the active view in which the transformation of a function takes the form

R^f(r)=f(R^1r)\hat{R} f(\mathbf{r}) = f(\hat{R}^{-1}\mathbf{r})

i.e., we map function values of ff from one point in space r=R^1r\mathbf{r}' = \hat{R}^{-1}\mathbf{r} to another R^r=r\hat{R}\mathbf{r}' = \mathbf{r}.

Invariance of observables

Spectrum intensities are observables given by

σfiΨfΩ^Ψi2=ΨfΨΩ,i2\sigma_{f\leftarrow i} \propto \left| \langle \Psi_f | \hat{\Omega} | \Psi_i \rangle \right|^2 = \left| \langle \Psi_f | \Psi_{\Omega,i} \rangle \right|^2

For these to be invariant, we must have

R^ΨfΨΩ,i=R^ΨfR^ΨΩ,i=ΨfR^R^ΨΩ,i={ΨfΨΩ,i(1)ΨfΨΩ,i(2)\hat{R} \langle \Psi_f | \Psi_{\Omega,i} \rangle = \langle \hat{R} \Psi_f | \hat{R} \Psi_{\Omega,i} \rangle = \langle \Psi_f | \hat{R}^\dagger \hat{R} | \Psi_{\Omega,i} \rangle = \left\{ \begin{split} & \langle \Psi_f | \Psi_{\Omega,i} \rangle \quad (1)\\ \rule{0pt}{14pt} & \langle \Psi_f | \Psi_{\Omega,i} \rangle^* \quad (2) \end{split} \right.
  1. R^\hat{R} is unitary with R^R^=E^\hat{R}^\dagger \hat{R} = \hat{E}, where E^\hat{E} is the identity operator

  2. R^\hat{R} is anti-unitary

The spatial transformations of concern are unitary transformations, whereas an example of an anti-unitary operation is time-reversal.

We can separate the action of the symmetry operator on the operator and the wave function according to

R^ΨΩ,i=R^Ω^Ψi=(R^Ω^R^1)R^Ψi\hat{R} | \Psi_{\Omega,i} \rangle = \hat{R} \hat{\Omega} | \Psi_i \rangle = \left( \hat{R} \hat{\Omega} \hat{R}^{-1} \right) \hat{R} | \Psi_i \rangle

In most cases, we are concerned with spatial symmetry operations that leave the Hamiltonian invariant

R^H^R^1=H^\hat{R} \hat{H} \hat{R}^{-1} = \hat{H}

or

[R^,H^]=0\left[ \hat{R}, \hat{H} \right] = 0

Time reversal symmetry

Considering the motion of a classical particle within a time interval T<t<T-T < t < T where the particle is observed at time tt with position r(t)\mathbf{r}(t) and velocity v(t)\mathbf{v}(t). Applying the time reversal operator yields the following relations for the time-reversed position and velocity

rT(t)=r(t)vT(t)=v(t)\begin{align*} \mathbf{r}_T(t) & = \mathbf{r}(-t) \\ \mathbf{v}_T(t) & = -\mathbf{v}(-t) \end{align*}

Moreover, according to the Lorentz force, which represents the total derivative of mechanical momentum (itself proportional to vT\mathbf{v}_T and thus changing sign under time reversal),

FT(t)=dπT(t)dt=q[ET(t)+vT(t)×BT(t)]\mathbf{F}_T(t) = {d\mathbf{\pi}_T(t) \over dt} = q[\mathbf{E}_T(t) + \mathbf{v}_T(t)\times \mathbf{B}_T(t)]

electric and magnetic fields within the system must satisfy

ET(t)=E(t)BT(t)=B(t)\begin{align*} \mathbf{E}_T(t) & = \mathbf{E}(-t) \\ \mathbf{B}_T(t) & = -\mathbf{B}(-t) \end{align*}

The total and angular momenta should change sign as well. However, if these fields are introduced as external perturbations, they both remain unaffected by time symmetry.

Turning to the quantum-mechanical case and the description of an electronic system described by the wave function Ψ(t)\Psi(t), we have Norman et al. (2018)

ΨT(t)=T^Ψ(t)=K^TΨ(t)\Psi_T(t) = \hat{\mathcal{T}} \Psi(t) = \hat{\mathcal{K}}_T \Psi(-t)

Spatial symmetry

By limiting ourselves to spatial symmetry, symmetry operations are restricted to geometric actions that leave the nuclear framework invariant. There are five different kinds of spatial symmetry operations:

  1. The identity operation, E^\hat{E}, does nothing.

  2. The rotation operation, C^n\hat{C}_n, rotates the system of an angle 2π/n2\pi/n about an axis. If the molecules possesses several rotation axes, the one with the largest nn is referred to as the principal axis.

  3. The reflection operation, σ^\hat{\sigma}, reflects the system in a plane. If a plane is perpendicular to the principal axis, the operation is denoted σ^h\hat{\sigma}_h. If, on the other hand, it contains the principal axis, it is denoted σ^v\hat{\sigma}_v. Finally, if the plane bisects the angle between two C2C_2-axes, it is denoted σ^d\hat{\sigma}_d.

  4. The inversion operation, i^\hat{i}, inverts space through the origin.

  5. The improper rotation (or rotoreflection) operation, S^n=σ^hC^n\hat{S}_n = \hat{\sigma}_h \hat{C}_n, performs a combination of a rotation and a reflection in a plane perpendicular to the rotation axis.

It is noted that some symmetry operations are equivalent, e.g., S^2=i^\hat{S}_2 = \hat{i}.

Spatial symmetry operations are linear. The application of spatial symmetry operators on spatial orbitals, such as atomic orbitals, χ(r)\chi(\mathbf{r}), results in simple matrix multiplications

R^χ=χD(R)\hat{R} | \overline{\chi} \rangle = | \overline{\chi} \rangle \mathbf{D}(R)

where D(R)\mathbf{D}(R) is called the representative of the operation. It is said that there is a homomorphism between the set operators and the ensemble of their representatives. When choosing an orthonormal space, operations preserve orthonormality and all transformations are carried out by unitary matrices.

The set of symmetry operations that commute with the Hamiltonian form a group, G\mathbf{G}. A group is a fundamental structure consisting of elements joined by a multiplication rule and with the following properties:

  1. The set of operations contains E^\hat{E}, which leaves all elements unchanged

    E^R^=R^E^=R^\hat{E}\hat{R} = \hat{R}\hat{E} = \hat{R}
  2. Closure

    R^,Q^GR^Q^G & R^Q^G\forall \hat{R}, \hat{Q} \in \mathbf{G} \Rightarrow \hat{R}\hat{Q} \in \mathbf{G}\ \&\ \hat{R}\hat{Q} \in \mathbf{G}
  3. Associativity

    R^(Q^P^)=(R^Q^)P^\hat{R}(\hat{Q}\hat{P}) = (\hat{R}\hat{Q})\hat{P}
  4. The inverse for all operations belongs to the group

    R^R^1=R^1R^=E^\hat{R}\hat{R}^{-1} = \hat{R}^{-1}\hat{R} = \hat{E}

A group G\mathbf{G} of gg elements is said to be of order gg.

A group is completely determined only by the products R^Q^\hat{R}\hat{Q}, combined in the multiplication table. It is however not necessary to store the whole multiplication table to know everything about the group. A more compact way uses the generators, a minimal set of elements capable of generating the whole group. Furthermore, symmetry operations of the same type, R^\hat{R} and R^\hat{R}', belong to the same class if there is an element of the group F^\hat{F} such that

R^=F^1R^F^\hat{R}' = \hat{F}^{-1}\hat{R}\hat{F}

A symmetry element (different from a group element) is a geometrical entity, e.g., a point, line, or plane, about which an action takes place. For every operation there is an associated element. At least one point in space is left unchanged for all symmetry operations and we refer to such groups as point groups to distinguish them from crystal groups that also possess translational symmetry.

Abelian groups, subgroups, and cyclic groups

Abelian groups are groups with a commutative multiplication rule

R^,Q^GR^Q^=Q^R^\forall \hat{R}, \hat{Q} \in \mathbf{G} \Rightarrow \hat{R}\hat{Q} = \hat{Q}\hat{R}

The multiplication table of an Abelian group is therefore symmetric about the diagonal. Moreover, the unitary transformations used to determine the classes of the group always return the element on which they are acting, making each element its own class.

A subgroup H\mathbf{H} of G\mathbf{G}, denoted HG\mathbf{H} \subset \mathbf{G}, is a subset of elements of G\mathbf{G} that satisfies all the group properties. Trivial subgroups contain the identity alone, i.e. C1={E^}C_1 = \{\hat{E}\} and the group G\mathbf{G} itself.

Consider the example of an ammonia molecule, associated with the following group: {E^,C^3,C^32,σ^v,σ^v,σ^v}\{\hat{E}, \hat{C}_3, \hat{C}_3^2, \hat{\sigma}_v, \hat{\sigma}_v', \hat{\sigma}_v''\}. In this case, there are four nontrivial subgroups, namely, {E^,C^3,C^32}\{\hat{E}, \hat{C}_3, \hat{C}_3^2\} and three equivalent {E^,σ^v}\{\hat{E}, \hat{\sigma}_v\} with the different reflexion planes. The order of a subgroup is a divisor of the order of the group. Therefore, groups with an order that is a prime number have no nontrivial subgroups.

Forming a subgroup can involve taking the successive powers of an element. Owing to the finite size of a group, elements may become redundant, leading to A^n=E^\hat{A}^n = \hat{E} for a generator AA. Cyclic groups, usually denoted CnC_n, are groups with only one generator. All cyclic groups are Abelian, since the products of elements give rise to a sum of powers which is commutative

C^iC^j=C^i+j=C^j+i=C^jC^i\hat{C}^i\hat{C}^j = \hat{C}^{i+j} = \hat{C}^{j+i} = \hat{C}^j\hat{C}^i

Point groups

Identifying the point group for a molecule can be achieved with use of the following flowchart.

All molecules with the same set of elements belong to the same group. The name of the group is therefore determined by its set of elements. The Schoenflies notation is here adopted as it is more common to use for molecular point groups, whereas the Hermann–Mauguin notation (or international notation) is used for crystal groups.

Knowledge of the point group of a molecule can immediately give information regarding its properties:

  • As a permanent dipole moment is the result of an asymmetric charge distribution, it is not possible to have a dipole moment along any other axis than a CnC_n-axis that, moreover, has no reflection perpendicular to it. As a result, only molecules belonging to the point groups CnC_n, CnvC_{nv}, and CsC_s can have a permanent dipole moment.

  • A molecule that cannot be superimposed on its mirror image is said to be chiral. This is exemplified by the inability of the left hand to be superimposed on the right hand, and it has the physical effect of rotating the plane of polarized light in opposite directions for the two different enantiomers. For a molecule to be chiral, it cannot contain a SnS_n-axis, an axis often implied by the presence of other symmetry elements (e.g. σ^\hat{\sigma} is equivalent to S^1\hat{S}_1).

While the above decision tree provides a straightforward approach on paper, complexities arise when dealing with imperfectly symmetric conformations. The SymmetryAnalyzer class in VeloxChem provides a tolerance-based function to assess the point groups of nearly symmetric molecules starting from their Cartesian coordinates.

For a molecule with MM atoms with masses MAM_A at positions Rk\mathbf{R}_k, the inertia tensor is constructed as follows

Imolecule=A=1M[MA(RARA)IRARA]\mathbf{I}^{\text{molecule}} = \sum_{A=1}^M \Big[ M_A (\mathbf{R}_A \cdot \mathbf{R}_A) \,\mathbf{I} - \mathbf{R}_A \otimes \mathbf{R}_A \Big]

where I\mathbf{I} is the identity matrix in 3D. The principal moments and axes of inertia are found by diagonalizing the inertia tensor. The degeneracy of these moments allows for the classification of the symmetry groups:

  • linear molecules have one zero eigenvalue

  • asymmetric top molecules have non-degenerate eigenvalues

  • symmetric top molecules have doubly degenerate eigenvalues

  • cubic (or spherical top) molecules have triply degenerate eigenvalues

The aforementioned principal axes of a molecule correspond to the principal axes of inertia. In other words, a symmetry axis or plane must contain at least one eigenvector of the inertia tensor, since an operation must leave the molecule unchanged, and so its inertia tensor. This can then be used to follow the detection tree in an efficient way.

As a first example, we consider an ammonia molecule for analyzing the symmetry.

import veloxchem as vlx

ammonia_str = "N"
molecule = vlx.Molecule.read_smiles(ammonia_str)
molecule.show()
Loading...

The point group is assessed by the identify_pointgroup method of the SymmetryAnalyzer class. The results are then printed using print_symmetry_results. In addition to the point group, this function returns all the symmetry elements associated with the operations that form the group and provides a list of Abelian subgroups, which will be discussed below.

pg = vlx.SymmetryAnalyzer()

pg_results = pg.identify_pointgroup(molecule, tolerance="very tight")
pg.print_symmetry_results(pg_results)

The available tolerance thresholds can be provided with print_tolerance_keywords:

pg.print_tolerance_keywords()

Symmetrizer algorithm

The subsequent step in the SymmetryAnalyzer is the perfect symmetrization of the input structure and its reorientation according to the conventions of group theory. The symmetrization is achieved by the symmetrize_pointgroup object, which implements the procedure outlined in the following flowchart. If one chooses C1C_1 as the new point group, the molecule is simply reoriented.

As an illustration, let us consider a nearly symmetric water molecule rotated and translated from the origin of the reference frame.

water = """3 

O       12.0448432299       -3.9158679908        0.9692506110
H       11.2081241979       -4.3238710922        1.0042469492
H       12.4653859253       -4.3498515284        0.2216705986
"""

molecule = vlx.Molecule.read_xyz_string(water)

pg_results_verytight = pg.identify_pointgroup(molecule, tolerance="very tight")
print("Tolerance: very tight")
pg.print_symmetry_results(pg_results_verytight, symmetry_info=False)

pg_results_loose = pg.identify_pointgroup(molecule, tolerance="loose")
print("\nTolerance: loose")
pg.print_symmetry_results(pg_results_loose, symmetry_info=False)
symmetrized_molecule = pg.symmetrize_pointgroup(pg_results_loose)

symmetrized_coords = symmetrized_molecule.get_coordinates_in_angstrom()
print("Symmetrized coordinates:")
print(symmetrized_coords, "\n")

pg_symmetrized_results = pg.identify_pointgroup(symmetrized_molecule, tolerance="very tight")
pg.print_symmetry_results(pg_symmetrized_results, symmetry_info=False)

Character tables

A matrix representation of a group is a set of matrices that represents all the operations of the group. These representations are typically in the form of block diagonal matrices. There is a limited set of representations, known as irreducible representations (or irreps), from which any other representation can be deduced. They are brought together in a character table.

A character table lists all the symmetry operations of a point group as columns and the irreducible representations as rows. The number of irreps in a group is equal to the number of conjugacy classes. For Abelian groups, the number of irreps is equal to the number of group elements, and all irreps are one-dimensional. Characters are simply the traces of the representatives

χ(R)=iDii(R).\chi(R) = \sum_i D_{ii}(R).

Since traces of matrices are invariant under unitary transformations, characters literally characterize the representations. For a given representation, elements within the same conjugacy class have identical characters.

The irreducible representation satisfy the Great Orthogonality Theorem (GOT). Let Γ\Gamma and Γ\Gamma' be two irreducible representations of a group G\mathbf{G}, and consider vectors formed by taking elements ijij and klkl from the respective representatives for every element of the group. These vectors are orthogonal to each other, and their squared norm is equal to the order of the group gg, divided by the dimension of the irrep \ell

RGDijΓ(R)DklΓ(R)=gΓδΓ,Γδikδjl\sum_{R\in\mathbf{G}}D^{*\Gamma}_{ij}(R)D^{\Gamma'}_{kl}(R) = {g\over\ell_\Gamma}\delta_{\Gamma,\Gamma'}\delta_{ik}\delta_{jl}

The highest dimensionality of the irreps of the group corresponds to the maximum degree of degeneracy in the group, e.g., the maximum degeneracy of the orbitals and quantum eigenstates of a molecule belonging to that group.

Other relations can be deduced from the GOT. For i=ji=j and k=lk=l, consider two irreps Γ\Gamma and Γ\Gamma' with their strings of characters arranged in vectors. The character theorem states that the squared norm of a character string equals the order of the group if and only if the characters are from an irrep. The scalar product of character strings from different irreps is zero

χΓχΓ=RGχˉΓ(R)χΓ(R)=gδΓ,Γ\langle\chi^{\Gamma}|\chi^{\Gamma'}\rangle = \sum_{R\in \mathbf{G}}\bar{\chi}^{\Gamma}(R)\chi^{\Gamma'}(R) = g\delta_{\Gamma,\Gamma'}

In chemical applications, irreps are denoted by labels indicating their degeneracy. One-dimensional irreps are labeled AA and BB, representing symmetric and antisymmetric states with respect to the principal element. Two- and three-dimensional representations are labeled EE and TT, respectively. In some icosahedral groups, four- and five-dimensional irreps are labeled GG and HH. Further subscripts, such as gg and uu, distinguish between even (gerade) and odd (ungerade) symmetries with respect to spatial inversion. Primes and double primes indicate behavior concerning a σh\sigma_h plane. Numerical indices are used when multiple representations share the same label.

The irreps spanned by orbitals on a central atom under symmetry operations are typically listed on the right-hand side of the character table. A1A_1 is always present and is referred to as the totally symmetric irreducible representation.

Below are examples of character tables for various groups.

C2v_\mathsf{2v}

IrrepE^\hat{E}C^2z\hat{C}_2^zσ^vxz\hat{\sigma}_v^{xz}σ^vyz\hat{\sigma}_v^{yz}Operation
A1A_11111zz
A2A_{2}11-1-1RzR_z
B1B_{1}1-11-1RyR_y, xx
B2B_{2}1-1-11RxR_x, yy
Loading...

C2h_\mathsf{2h}

IrrepE^\hat{E}C^2z\hat{C}_2^zi^\hat{i}σ^h\hat{\sigma}_hOperation
AgA_g1111RzR_z
BgB_{g}1-11-1RxR_x, RyR_y
AuA_{u}11-1-1zz
BuB_{u}1-1-11xx, yy
Loading...

D2h_\mathsf{2h}

IrrepE^\hat{E}C^2z\hat{C}_2^zC^2y\hat{C}_2^yC^2x\hat{C}_2^xi^\hat{i}σ^xy\hat{\sigma}^{xy}σ^xz\hat{\sigma}^{xz}σ^yz\hat{\sigma}^{yz}Operation
AgA_g11111111
B1gB_{1g}11-1-111-1-1RzR_z
B2gB_{2g}1-11-11-11-1RyR_y
B3gB_{3g}1-1-111-1-11RxR_x
AuA_{u}1111-1-1-1-1
B1uB_{1u}11-1-1-1-111zz
B2uB_{2u}1-11-1-11-11yy
B3uB_{3u}1-1-11-111-1xx
Loading...

Td_\mathsf{d}

IrrepE^\hat{E}8C^38\hat{C}_33C^23\hat{C}_26S^46\hat{S}_46σ^d6\hat{\sigma}_{d}Operation
A1A_111111
A2A_2111-1-1
EE2-1200
T1T_130-11-1(Rx,Ry,Rz)(R_x, R_y, R_z)
T2T_230-1-11x,y,zx, y, z
Loading...
basis = vlx.MolecularBasis.read(molecule, "6-311G*", ostream=None)

scf_drv = vlx.ScfRestrictedDriver()
scf_drv.ostream.mute()

scf_results = scf_drv.compute(molecule, basis)

mo_energy = scf_results["E_alpha"]

print("Number of orbitals:", len(mo_energy))
print("\nMO energies (au):\n", mo_energy)
Number of orbitals: 30

MO energies (au):
 [-11.20882348  -0.94196013  -0.5453617   -0.54536042  -0.54535953
   0.16113805   0.23756109   0.23756137   0.23756154   0.42836509
   0.42836568   0.42836636   0.74942      0.81643931   0.81643962
   0.81644079   0.98831673   1.51918071   1.51918102   1.78539525
   1.78539549   1.78539578   2.57006486   2.75828059   2.75828446
   2.75828704   3.48944059   3.48944171   3.48944641  24.55021359]

C3_\mathsf{3}

IrrepE^\hat{E}C^3z\hat{C}_3^zC^32,z\hat{C}_3^{2, z}Operation
AA111zz, RzR_z
EE1ϵ\epsilonϵ\epsilon^*(x,y)(x, y), (Rx,Ry)(R_x, R_y)
1ϵ\epsilon^*ϵ\epsilon
Loading...
basis = vlx.MolecularBasis.read(molecule, "6-31G", ostream=None)

scf_drv = vlx.ScfRestrictedDriver()
scf_drv.ostream.mute()

scf_results = scf_drv.compute(molecule, basis)

mo_energy = scf_results["E_alpha"]

print("Number of orbitals:", len(mo_energy))
print("\nMO energies (au):\n", mo_energy)
Number of orbitals: 93

MO energies (au):
 [-15.54578849 -11.25090355 -11.25090355 -11.25087358 -11.21246683
 -11.21246653 -11.21246653  -1.21131333  -1.02510881  -1.02510881
  -0.95516387  -0.84457492  -0.84457492  -0.76156233  -0.63980813
  -0.63980813  -0.61995786  -0.58982172  -0.58982172  -0.54558603
  -0.52774456  -0.51291914  -0.51291914  -0.50152399  -0.4839755
  -0.4839755   -0.4473856   -0.4473856   -0.33930113   0.23557939
   0.24581183   0.24581183   0.27338951   0.29363159   0.29363159
   0.30611874   0.31534336   0.31534336   0.33506903   0.33506903
   0.34579136   0.36436004   0.38908878   0.38908878   0.40390215
   0.42832684   0.42832684   0.45960101   0.45960101   0.4814887
   0.73810901   0.73810901   0.76078307   0.77961338   0.77961338
   0.80202299   0.82977804   0.82977804   0.83162343   0.92269428
   0.95025505   0.95025505   0.95533729   0.98746581   0.98746581
   1.07603196   1.07603196   1.11600443   1.12617684   1.19648957
   1.20455251   1.20455251   1.22181746   1.22181746   1.22709025
   1.24353097   1.2508069    1.2508069    1.26259608   1.26259608
   1.29418576   1.32269348   1.32269348   1.35323599   1.4345424
   1.44579073   1.44579073   1.64418987   1.64418987   1.77919534
   1.92026477   1.92026477   2.06059262]

Wave function symmetry

In view of the characters listed in the table, it is straightforward to identify to which irrep molecular orbitals (MOs) belong, Γ(ϕi)\Gamma(\phi_i). Since we are here concerned with spatial operations the symmetry of spin orbitals, Γ(ψi)\Gamma(\psi_i), is equal to the symmetry of the associated MOs.

The symmetry of many-electron functions composed of Slater determinants is equal to the direct product of the irreps of the spin orbitals

Γ(Ψ)=Γ(ψ1)Γ(ψ2)Γ(ψN)\Gamma(\Psi) = \Gamma(\psi_1) \otimes \Gamma(\psi_2) \otimes \cdots \otimes \Gamma(\psi_N)

For double electron occupied MOs, we get

Γ(ψiψiˉ)=Γ(ψi)Γ(ψiˉ)=Γ(ϕi)Γ(ϕi)=Γ(E^)\Gamma(\psi_i \psi_{\bar{i}}) = \Gamma(\psi_i) \otimes \Gamma(\psi_{\bar{i}}) = \Gamma(\phi_i) \otimes \Gamma(\phi_i) = \Gamma(\hat{E})

This gives us the result that closed-shell determinants belong to the all-symmetric irrep, Γ(E^)\Gamma(\hat{E}), and the symmetry of open-shell determinants equals the direct product of the irreps of the single electron occupied MOs.

References
  1. Norman, P., Ruud, K., & Saue, T. (2018). Principles and practices of molecular properties. John Wiley & Sons, Ltd.