Template Function Pennylane::Gates::getRot(U, U, U)

Function Documentation

template<class T, class U = T>
static auto Pennylane::Gates::getRot(U phi, U theta, U omega) -> std::array<std::complex<T>, 4>

Create a matrix representation of the Rot gate data in row-major format.

The gate is defined as: \(\begin{split}Rot(\phi,\theta,\omega) = RZ(\omega)RY(\theta)RZ(\phi)= \begin{bmatrix} e^{-i(\phi+\omega)/2}\cos(\theta/2) & -e^{i(\phi-\omega)/2}\sin(\theta/2) \\ e^{-i(\phi-\omega)/2}\sin(\theta/2) & e^{i(\phi+\omega)/2}\cos(\theta/2) \end{bmatrix}.\end{split}\)

Template Parameters
  • T – Required precision of gate (float or double).

  • U – Required precision of parameter (float or double).

Parameters
  • phi\(\phi\) shift angle.

  • theta\(\theta\) shift angle.

  • omega\(\omega\) shift angle.

Returns

const std::vector<std::complex<T>> Return const Rot gate data.