Template Function Pennylane::Gates::getRot(const std::vector<U>&)

Function Documentation

template<class T, class U = T>
static auto Pennylane::Gates::getRot(const std::vector<U> &params) -> std::vector<std::complex<T>>

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

params – Vector of gate data. Values are expected in order of \([\phi, \theta, \omega]\).

Returns

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