Пример #1
0
 def test_hermitian_conjugate_semihermitian(self):
     op = (FermionOperator() + 2j * FermionOperator('1^ 3') +
           FermionOperator('3^ 1') * -2j + FermionOperator('2^ 2', 0.1j))
     op_hc = (FermionOperator() + FermionOperator('1^ 3', 2j) +
              FermionOperator('3^ 1', -2j) + FermionOperator('2^ 2', -0.1j))
     op = hermitian_conjugated(op)
     self.assertTrue(op.isclose(op_hc))
Пример #2
0
 def test_hermitian_conjugated_multiterm(self):
     op = FermionOperator('1^ 2') + FermionOperator('2 3 4')
     op_hc = FermionOperator('2^ 1') + FermionOperator('4^ 3^ 2^')
     self.assertTrue(op_hc.isclose(hermitian_conjugated(op)))
Пример #3
0
 def test_hermitian_conjugated_complex_const(self):
     op = FermionOperator('2^ 2', 3j)
     op_hc = FermionOperator('2^ 2', -3j)
     self.assertTrue(op_hc.isclose(hermitian_conjugated(op)))
Пример #4
0
 def test_hermitian_conjugated_simple(self):
     op = FermionOperator('0')
     op_hc = FermionOperator('0^')
     self.assertTrue(op_hc.isclose(hermitian_conjugated(op)))
Пример #5
0
 def test_hermitian_conjugated_empty(self):
     op = FermionOperator()
     self.assertTrue(op.isclose(hermitian_conjugated(op)))
Пример #6
0
 def test_hermitian_conjugate_notordered(self):
     op = FermionOperator('1 3^ 3 3^', 3j)
     op_hc = -3j * FermionOperator('3 3^ 3 1^')
     op = hermitian_conjugated(op)
     self.assertTrue(op.isclose(op_hc))
Пример #7
0
 def test_hermitian_conjugate_complex_const(self):
     op = FermionOperator('1^ 3', 3j)
     op_hc = -3j * FermionOperator('3^ 1')
     op = hermitian_conjugated(op)
     self.assertTrue(op.isclose(op_hc))
Пример #8
0
 def test_hermitian_conjugate_simple(self):
     op = FermionOperator('1^')
     op_hc = FermionOperator('1')
     op = hermitian_conjugated(op)
     self.assertTrue(op.isclose(op_hc))