|
| 1 | +Rotation-Adapted Features |
| 2 | +========================= |
| 3 | + |
| 4 | +Equivariance |
| 5 | +------------ |
| 6 | + |
| 7 | +Descriptors like SOAP are translation, rotation, and permutation invariant. |
| 8 | +Indeed, such invariances are extremely useful if one wants to learn an invariant target (e.g., the energy). |
| 9 | +Being already encoded in the descriptor, the learning algorithm does not have to learn such a physical requirement. |
| 10 | + |
| 11 | +The situation is different if the target is not invariant. For example, one may want to learn a dipole. The dipole rotates with a rotation of the molecule, and as such, invariant descriptors do not have the required symmetries for this task. |
| 12 | + |
| 13 | +Instead, one would need a rotation equivariant descriptor. |
| 14 | +Rotation equivariance means that, if I first rotate the structure and compute the descriptor, I obtain the same result as first computing the descriptor and then applying the rotation, i.e., the descriptor behaves correctly upon rotation operations. |
| 15 | +Denoting a structure as :math:`A`, the function computing the descriptor as :math:`f(\cdot)`, and the rotation operator as :math:`\hat{R}`, rotation equivariance can be expressed as: |
| 16 | + |
| 17 | +.. math:: |
| 18 | + :name: eq:equivariance |
| 19 | +
|
| 20 | + f(\hat{R} A) = \hat{R} f(A) |
| 21 | +
|
| 22 | +Of course, invariance is a special case of equivariance. |
| 23 | + |
| 24 | + |
| 25 | +Rotation Equivariance of the Spherical Expansion |
| 26 | +------------------------------------------------ |
| 27 | + |
| 28 | +The spherical expansion is a rotation equivariant descriptor. |
| 29 | +Let's consider the expansion coefficients of :math:`\rho_i(\mathbf{r})`. |
| 30 | +We have: |
| 31 | + |
| 32 | +.. math:: |
| 33 | +
|
| 34 | + \hat{R} \rho_i(\mathbf{r}) &= \sum_{nlm} c_{nlm}^{i} R_n(r) \hat{R} Y_l^m(\hat{\mathbf{r}}) \nonumber \\ |
| 35 | + &= \sum_{nlmm'} c_{nlm}^{i} R_n(r) D_{m,m'}^{l}(\hat{R}) Y_l^{m'}(\hat{\mathbf{r}}) \nonumber \\ |
| 36 | + &= \sum_{nlm} \left( \sum_{m'} D_{m',m}^l(\hat{R}) c_{nlm'}^{i}\right) B_{nlm}(\mathbf{r}) \nonumber |
| 37 | +
|
| 38 | +and noting that :math:`Y_l^m(\hat{R} \hat{\mathbf{r}}) = \hat{R} Y_l^m(\hat{\mathbf{r}})` and :math:`\hat{R}r = r`, equation :ref:`(1) <eq:equivariance>` is satisfied and we conclude that the expansion coefficients :math:`c_{nlm}^{i}` are rotation equivariant. |
| 39 | +Indeed, each :math:`c_{nlm}^{i}` transforms under rotation as the spherical harmonics :math:`Y_l^m(\hat{\mathbf{r}})`. |
| 40 | + |
| 41 | +Using the Dirac notation, the coefficient :math:`c_{nlm}^{i}` can be expressed as :math:`\braket{nlm\vert\rho_i}`. |
| 42 | +Equivalently, and to stress the fact that this coefficient describes something that transforms under rotation as a spherical harmonics :math:`\ket{lm}`, it is sometimes written as :math:`\braket{n\vert\rho_i;lm}`, i.e., the atomic density is "tagged" with a label that tells how it transforms under rotations. |
| 43 | + |
| 44 | + |
| 45 | +Completeness Relations of Spherical Harmonics |
| 46 | +--------------------------------------------- |
| 47 | + |
| 48 | +Spherical harmonics can be combined together using rules coming from standard theory of angular momentum: |
| 49 | + |
| 50 | +.. math:: |
| 51 | + :name: eq:cg_coupling |
| 52 | +
|
| 53 | + \ket{lm} \propto \ket{l_1 l_2 l m} = \sum_{m_1 m_2} C_{m_1 m_2 m}^{l_1 l_2 l} \ket{l_1 m_1} \ket{l_2 m_2} |
| 54 | +
|
| 55 | +where :math:`C_{m_1 m_2 m}^{l_1 l_2 l}` is a Clebsch-Gordan (CG) coefficient. |
| 56 | + |
| 57 | +Thanks to the one-to-one correspondence (under rotation) between :math:`c_{nlm}^{i}` and :math:`Y_l^m`, |
| 58 | +:ref:`(2) <eq:cg_coupling>` means that one can take products of two spherical expansion coefficients (which amounts to considering density correlations), and combine them with CG coefficients to get new coefficients that transform as a single spherical harmonics. |
| 59 | +This process is known as coupling, from the uncoupled basis of angular momentum (formed by the product of rotation eigenstates) to a coupled basis (a single rotation eigenstate). |
| 60 | + |
| 61 | +One can also write the inverse of :ref:`(2) <eq:cg_coupling>`: |
| 62 | + |
| 63 | +.. math:: |
| 64 | + :name: eq:cg_decoupling |
| 65 | +
|
| 66 | + \ket{l_1 m_1} \ket{l_2 m_2} = \sum_{l m} C_{m_1 m_2 m}^{l_1 l_2 l m} \ket{l_1 l_2 l m} |
| 67 | +
|
| 68 | +that express the product of two rotation eigenstates in terms of one. This process is known as decoupling. |
| 69 | + |
| 70 | +Example: :math:`\lambda`-SOAP |
| 71 | +----------------------------- |
| 72 | + |
| 73 | +A straightforward application of :ref:`(2) <eq:cg_coupling>` is the construction of :math:`\lambda`-SOAP features. |
| 74 | +Indeed, :math:`\lambda`-SOAP was created in order to have a rotation and inversion equivariant version of the 3-body density correlations. |
| 75 | +The :math:`\lambda` represents the degree of a spherical harmonics, :math:`Y_{\lambda}^{\mu}(\hat{\mathbf{r}})`, |
| 76 | +and it indicates that this descriptor can transform under rotations as a spherical harmonics, i.e., it is rotation equivariant. |
| 77 | + |
| 78 | +It is then obtained by considering two expansion coefficients of the atomic density, and combining them with a CG iteration to a coupled basis, |
| 79 | +as in :ref:`(2) <eq:cg_coupling>`. |
| 80 | +The :math:`\lambda`-SOAP descriptor is then: |
| 81 | + |
| 82 | +.. math:: |
| 83 | +
|
| 84 | + \braket{n_1 l_1 n_2 l_2\vert\overline{\rho_i^{\otimes 2}, \sigma, \lambda \mu}} = |
| 85 | + \frac{\delta_{\sigma, (-1)^{l_1 + l_2 + \lambda}}}{\sqrt{2 \lambda + 1}} |
| 86 | + \sum_{m} C_{m (\mu-m) \mu}^{l_1 l_2 \lambda} c_{n_1 l_1 m}^{i} c_{n_2 l_2 (\mu - m)}^{i} |
| 87 | +
|
| 88 | +where we have assumed real spherical harmonics coefficients. |
0 commit comments