def test_Pauli(): sigma1 = Pauli(1) sigma2 = Pauli(2) sigma3 = Pauli(3) assert sigma1 == sigma1 assert sigma1 != sigma2 assert sigma1 * sigma2 == I * sigma3 assert sigma3 * sigma1 == I * sigma2 assert sigma2 * sigma3 == I * sigma1 assert sigma1 * sigma1 == 1 assert sigma2 * sigma2 == 1 assert sigma3 * sigma3 == 1 assert sigma1**0 == 1 assert sigma1**1 == sigma1 assert sigma1**2 == 1 assert sigma1**3 == sigma1 assert sigma1**4 == 1 assert sigma3**2 == 1 assert sigma1 * 2 * sigma1 == 2
def symbolic_pauli_product(*args, as_tensor_product=False): """ Return symbolic sympy object represing product of Pauli matrices. """ if as_tensor_product: tensor_product_elems = [] for arg in args: if arg == 0: tensor_product_elems.append(1) else: tensor_product_elems.append(Pauli(arg)) return TensorProduct(*tensor_product_elems) out_expr = sympy.Integer(1) for pos, arg in enumerate(args): if arg != 0: out_expr *= sympy.Symbol(['X', 'Y', 'Z'][arg - 1] + '_' + str(pos + 1), commutative=False) return out_expr
from sympy import I, symbols from sympy.physics.paulialgebra import Pauli from sympy.testing.pytest import XFAIL from sympy.physics.quantum import TensorProduct sigma1 = Pauli(1) sigma2 = Pauli(2) sigma3 = Pauli(3) tau1 = symbols("tau1", commutative=False) def test_Pauli(): assert sigma1 == sigma1 assert sigma1 != sigma2 assert sigma1 * sigma2 == I * sigma3 assert sigma3 * sigma1 == I * sigma2 assert sigma2 * sigma3 == I * sigma1 assert sigma1 * sigma1 == 1 assert sigma2 * sigma2 == 1 assert sigma3 * sigma3 == 1 assert sigma1**0 == 1 assert sigma1**1 == sigma1 assert sigma1**2 == 1 assert sigma1**3 == sigma1 assert sigma1**4 == 1
def test_physics(): for c in (Unit, meter, Pauli, Pauli(1)): check(c)
def test_sympy__physics__paulialgebra__Pauli(): from sympy.physics.paulialgebra import Pauli assert _test_args(Pauli(1))
def test_physics(): for c in (Unit, Unit("meter", "m"), Pauli, Pauli(1)): check(c)
from sympy.physics.paulialgebra import Pauli, evaluate_pauli_product from sympy.physics.matrices import mdft, mgamma, msigma, pat_matrix mdft(4) # expression of discrete Fourier transform as a matrix multiplication mgamma(2) # Dirac gamma matrix in the Dirac representation msigma(2) # Pauli matrix with (1,2,3) pat_matrix( 3, 1, 0, 0 ) # computer Parallel Axis Theorem matrix to translate the inertia matrix a distance of dx, dy, dz for a body of mass m. evaluate_pauli_product(4 * x * Pauli(3) * Pauli(2))
from sympy.physics.paulialgebra import Pauli import sympy as sym import numpy as np #np.array(Pauli(1)).astype(np.complex) p1 = sym.N(Pauli(1)) print(p1)