def create_operators(self):

    # example with +Z
    #self.M.append(np.matrix([[1.0, 2.0], [2.0+2.0j, 3.0]]))
    # watch out: python needs 1.0 instead of just 1 to assume float variables
    #self.name.append('asd');
    #self.mutation_partners.append(['+z','+w']);
    #self.anti_operator.append('+w');

    # Operators
    alpha = math.pi / 3.0;
    da = math.pi / 10.0;

    # operator 1 +z
    self.M.append(np.matrix(
      [[math.cos(da / 2.0) - 1j * math.sin(da / 2.0), 0.0],
       [0.0, math.cos(da / 2.0) + 1j * math.sin(da / 2.0)]]))
    self.name.append('+z');
    self.mutation_partners.append(['-z', '+w', '-w']);
    self.anti_operator.append('-z');

    # operator 2 -z
    self.M.append(np.matrix(
      [[math.cos(-da / 2.0) - 1j * math.sin(-da / 2.0), 0.0],
       [0.0, math.cos(-da / 2.0) + 1j * math.sin(-da / 2.0)]]))
    self.name.append('-z');
    self.mutation_partners.append(['+z', '+w', '-w']);
    self.anti_operator.append('+z');

    # operator 3 +w
    self.M.append(np.matrix([
      [1j * math.cos(alpha) * math.sin(da / 2.0) - math.cos(da / 2.0),
       -math.sin(alpha) * math.sin(da / 2.0)],
      [math.sin(alpha) * math.sin(da / 2.0),
       math.cos(da / 2.0) + 1j * math.cos(alpha) * math.sin(da / 2.0)]]))
    self.name.append('+w');
    self.mutation_partners.append(['+z', '-z', '-w']);
    self.anti_operator.append('-w');

    # operator 4 -w
    self.M.append(np.matrix([
      [math.cos(-da / 2.0) - 1j * math.cos(alpha) * math.sin(-da / 2.0),
       -math.sin(alpha) * math.sin(-da / 2.0)],
      [math.sin(alpha) * math.sin(-da / 2.0),
       math.cos(-da / 2.0) + 1j * math.cos(alpha) * math.sin(-da / 2.0)]]))
    self.name.append('-w');
    self.mutation_partners.append(['+z', '-z', '+w']);
    self.anti_operator.append('+w');
dataset/ETHPy150Open jansel/opentuner/examples/unitary/cla_func.py/Op.create_operators/swapped operands of `-`