Esempio n. 1
0
 def test_bloch_derivative_all(self):
     ham = la.CartesianSpinOperator((0, 0, 0, 1))
     rho = la.CartesianSpinOperator((0.5, 0, 0.5, 0))
     bd_c = bloch_derivative(rho, ham, gdiss=0., gdeph=1.)
     ud = unitary_derivative(rho, ham)
     nud = -1 * la.CartesianSpinOperator((0, 0, 0.5, 0))
     bd_e = ud + nud
     self.assertEqual(bd_c, bd_e)
Esempio n. 2
0
 def test_bloch_derivative_no_unitary_part(self):
     ham = la.CartesianSpinOperator((0, 0, 0, 0))
     rho = la.CartesianSpinOperator((0.5, 0, 0.5, 0))
     bd_c = bloch_derivative(rho, ham, gdiss=0., gdeph=1.)
     bd_e = -1 * la.CartesianSpinOperator((0, 0, 0.5, 0))
     self.assertEqual(bd_c, bd_e)
Esempio n. 3
0
 def test_bloch_derivative_unitary_consistency(self):
     ham = la.CartesianSpinOperator((0, 0, 0, 1))
     rho = la.CartesianSpinOperator((0.5, 0, 0.5, 0))
     ud = unitary_derivative(rho, ham)
     bd = bloch_derivative(rho, ham, gdiss=0, gdeph=0)
     self.assertEqual(ud, bd)