@classmethod
def _eigvals(cls, *params):
    'Eigenvalues of the operator.\n\n        This is a *class method* that should be defined for all\n        new operations and observables that returns the eigenvalues\n        of the operator. Note that the eigenvalues are not guaranteed\n        to be in any particular order.\n\n        This private method allows eigenvalues to be computed\n        directly without instantiating the operators first.\n\n        The default implementation relies on the presence of the\n        :attr:`_matrix` method.\n\n        To return the eigenvalues of *instantiated* operators,\n        please use the :attr:`~.Operator.eigvals` property instead.\n\n        **Example:**\n\n        >>> qml.RZ._eigvals(0.5)\n        >>> array([0.96891242-0.24740396j, 0.96891242+0.24740396j])\n\n        Returns:\n            array: eigenvalue representation\n        '
    return np.linalg.eigvals(cls._matrix(*params))
Eigenvalues of the operator.

This is a *class method* that should be defined for all
new operations and observables that returns the eigenvalues
of the operator. Note that the eigenvalues are not guaranteed
to be in any particular order.

This private method allows eigenvalues to be computed
directly without instantiating the operators first.

The default implementation relies on the presence of the
:attr:`_matrix` method.

To return the eigenvalues of *instantiated* operators,
please use the :attr:`~.Operator.eigvals` property instead.

**Example:**

>>> qml.RZ._eigvals(0.5)
>>> array([0.96891242-0.24740396j, 0.96891242+0.24740396j])

Returns:
    array: eigenvalue representation
@classmethod
def _eigvals(cls, *params):
    'Eigenvalues of the operator.\n\n        This is a *class method* that should be defined for all\n        new operations and observables that returns the eigenvalues\n        of the operator. Note that the eigenvalues are not guaranteed\n        to be in any particular order.\n\n        This private method allows eigenvalues to be computed\n        directly without instantiating the operators first.\n\n        The default implementation relies on the presence of the\n        :attr:`_matrix` method.\n\n        To return the eigenvalues of *instantiated* operators,\n        please use the :attr:`~.Operator.eigvals` property instead.\n\n        **Example:**\n\n        >>> qml.RZ._eigvals(0.5)\n        >>> array([0.96891242-0.24740396j, 0.96891242+0.24740396j])\n\n        Returns:\n            array: eigenvalue representation\n        '
    return np.linalg.eigvals(cls._matrix(*params))