
    Ed                         d Z ddlmZ ddlmZ ddlmZ d Zd Z	ddZ
 ed	          Z ed
dd          d             ZdS )z!Known matrices related to physics    )I)MutableDenseMatrix)
deprecatedc                     | dk    rd}n2| dk    rdt            ft           dff}n| dk    rd}nt          d          t          |          S )a  Returns a Pauli matrix `\sigma_i` with `i=1,2,3`.

    References
    ==========

    .. [1] https://en.wikipedia.org/wiki/Pauli_matrices

    Examples
    ========

    >>> from sympy.physics.matrices import msigma
    >>> msigma(1)
    Matrix([
    [0, 1],
    [1, 0]])
       ))r   r   r   r      r      )r   )r   zInvalid Pauli index)r   
IndexErrorMatrix)imats     6lib/python3.11/site-packages/sympy/physics/matrices.pymsigmar      st    " 	Av 0
 
a 0GF
 
a 0

 .///#;;    c                     | |z  }| |z  }| |z  }|dz  }|dz  }|dz  }	||	z   ||f|||	z   |f||||z   ff}
| t          |
          z  S )a  Returns the Parallel Axis Theorem matrix to translate the inertia
    matrix a distance of `(dx, dy, dz)` for a body of mass m.

    Examples
    ========

    To translate a body having a mass of 2 units a distance of 1 unit along
    the `x`-axis we get:

    >>> from sympy.physics.matrices import pat_matrix
    >>> pat_matrix(2, 1, 0, 0)
    Matrix([
    [0, 0, 0],
    [0, 2, 0],
    [0, 0, 2]])

    r	   )r   )mdxdydzdxdydydzdzdxdxdxdydydzdzr   s              r   
pat_matrixr   -   s    $ 3r6D3r6D3r6Dq5Dq5Dq5D4Kt$$+t$$t$&C VC[[=r   Fc                    | dvrt          d          | dk    rd}nM| dk    rd}nD| dk    r-dddt           fddt          dfdt          ddft           dddff}n| dk    rd	}n| d
k    rd}t          |          }|r| dv r| }|S )a  Returns a Dirac gamma matrix `\gamma^\mu` in the standard
    (Dirac) representation.

    Explanation
    ===========

    If you want `\gamma_\mu`, use ``gamma(mu, True)``.

    We use a convention:

    `\gamma^5 = i \cdot \gamma^0 \cdot \gamma^1 \cdot \gamma^2 \cdot \gamma^3`

    `\gamma_5 = i \cdot \gamma_0 \cdot \gamma_1 \cdot \gamma_2 \cdot \gamma_3 = - \gamma^5`

    References
    ==========

    .. [1] https://en.wikipedia.org/wiki/Gamma_matrices

    Examples
    ========

    >>> from sympy.physics.matrices import mgamma
    >>> mgamma(1)
    Matrix([
    [ 0,  0, 0, 1],
    [ 0,  0, 1, 0],
    [ 0, -1, 0, 0],
    [-1,  0, 0, 0]])
    )r   r   r	   r
      zInvalid Dirac indexr   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r	   r
   )r&   r$   r(   r"   r    )r&   r%   r!   r"   )r   r	   r
   r    )r   r   r   )mulowerr   r   s       r   mgammar+   K   s    > 
  0.///	Qw "

 
q 

 
q 
1qbM1aL1aLRAqM	
 
q 

 
q 

 	sA  	AHr   )r!   r'   r#   r$   zk
    The sympy.physics.matrices.mdft method is deprecated. Use
    sympy.DFT(n).as_explicit() instead.
    z1.9zdeprecated-physics-mdft)deprecated_since_versionactive_deprecations_targetc                 H    ddl m}  ||                                           S )z
    .. deprecated:: 1.9

       Use DFT from sympy.matrices.expressions.fourier instead.

       To get identical behavior to ``mdft(n)``, use ``DFT(n).as_explicit()``.
    r   )DFT)"sympy.matrices.expressions.fourierr/   
as_mutable)nr/   s     r   mdftr3      s0      7666663q66r   N)F)__doc__sympy.core.numbersr   sympy.matrices.denser   r   sympy.utilities.decoratorr   r   r   r+   minkowski_tensorr3    r   r   <module>r:      s    ' '             = = = = = = 0 0 0 0 0 0" " "J  <H H H HX 6      #8  	 	 	 	 	r   