1 //---------------------------------------------------------------------------
2 // Controlled Rotate Gate
3 //---------------------------------------------------------------------------
6 //---------------------------------------------------------------------------
9 //---------------------------------------------------------------------------
11 class QC_crot : public QCalcUnit
16 double Theta;// Degree of rotation(Radian)
19 QC_crot(int _TargetBit,int _ControllBit,double degree);
20 static void calc(int t, int c, double theta, double R[], double I[], int N);
21 virtual void Calc(QBits *QBits);
22 virtual std::string GetName(void) const {
23 return "Controlled Rot";
27 static void calcmpi(int t1, int c1, double theta, double R[], double I[], int N);
31 //---------------------------------------------------------------------------