a
    kŗhA  ć                   @   s,  d Z ddlmZmZ ddlmZ ddlmZ ddlm	Z	 ddl
mZ ddlmZ ddlmZ dd	lmZ dd
lmZmZmZmZ ddlmZmZ ddlmZmZmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z' ddl(m)Z) ed\Z*Z+Z,Z-Z.Z/Z0Z1ed\Z2Z3Z4Z5dd Z6edd Z7dd Z8dd Z9dS )zTests for cartesian.pyé    )ŚIŚpi)ŚS)Śsymbols)Śexp)Śsqrt)Ś
DiracDelta)ŚInterval)ŚXFAIL)ŚqapplyŚ	representŚL2ŚDagger)Ś
CommutatorŚhbar)ŚXOpŚYOpŚZOpŚPxOpŚXŚYŚZŚPxŚXKetŚXBraŚPxKetŚPxBraŚPositionKet3DŚPositionBra3D)ŚDifferentialOperatorzx,y,z,x_1,x_2,x_3,y_1,z_1zpx py px_1 px_2c                  C   sh  t jtttjtjksJ tt t 	” t
t ks6J tt tt ttt ksVJ tt ” tksjJ tt ” tks~J ttttt  	” ttt ks¦J tttt  	” tt
 t t t tdt t  ksäJ tttttt ksJ ttttt t ks"J ttjtks6J tt t  tttt  ks\J ttdt  ttt ksJ tt t  ttt ttt  ks®J tt td} | tt
 ttt   t!t ksāJ | tt t dksüJ | tt t"dksJ | tt t" dks.J tt t"  t"dtt
 ttt   t!t ksdJ d S )Né   Śy©Zbasis)#r   Śhilbert_spacer   r	   r   ŚNegativeInfinityŚInfinityr   r   Śdoitr   r   r   r   ŚxŚ
dual_classr   r   r!   r   r   Śpxr   r   r   r   Śx_1Śpositionr   Śx_2r   Śpx_1Śpx_2r   r   )Zrep_p© r/   śX/var/www/auris/lib/python3.9/site-packages/sympy/physics/quantum/tests/test_cartesian.pyŚtest_x   s6     ($’ &$
’’
&’r1   c                   C   s<   t t t  td tttt  ttt  ks8J d S )Nr!   )	r   r   r   r   r'   r   Śx_3r*   r!   r/   r/   r/   r0   Ś_text_x_broken3   s    ’r3   c                  C   sā  t jtttjtjksJ tt tt	 t	tt	 ks<J tt	 
” tksPJ tt 
” tksdJ ttttt	  ” tt	t ksJ tttt	  ” ttt t	 t tdt t  ksČJ ttt	tt	t ksäJ tt td} | t t ttt  tt ksJ | tt t dks4J | tt tdksLJ | tt t dksfJ tt t  tdt t ttt  tt ksJ ttdt  t  tdt t ttt  tt ksŽJ d S )Nr    r"   r!   ) r   r#   r   r	   r   r$   r%   r   r   r)   r(   r   r'   r   Śpyr&   r   r   r   r   r   r   r   r   r-   r   r   r*   r,   r   r   r!   )Zrep_xr/   r/   r0   Śtest_p=   s(     ("’(’
’r5   c                  C   sņ  t jtttjtjksJ tjtttjtjks8J tt	t
t} tt|  t	|  ks\J tt |  t
|  kstJ tt|  t|  ksJ ttt  |  t	t
 |  ks¬J ttt  t |  t	t
 t |  ksŌJ tt t |  t
t |  ksōJ t | ksJ t t ksJ t tks$J t ” tks6J t ” tksHJ tttt}t||   ” tt	t tt
t  ttt  ksJ | jt	ksJ | jt
ks®J | jtks¾J |jtksĪJ |jtksŽJ |jtksīJ d S )N)r   r#   r   r	   r   r$   r%   r   r   r'   r!   Śzr   r   r   r   r(   r   r*   Śy_1Śz_1r   r&   r   Z
position_xZ
position_yZ
position_z)Ztest_ketZ	other_ketr/   r/   r0   Ś
test_3dposS   s0     ( "’
r9   N):Ś__doc__Zsympy.core.numbersr   r   Zsympy.core.singletonr   Zsympy.core.symbolr   Z&sympy.functions.elementary.exponentialr   Z(sympy.functions.elementary.miscellaneousr   Z'sympy.functions.special.delta_functionsr   Zsympy.sets.setsr	   Zsympy.testing.pytestr
   Zsympy.physics.quantumr   r   r   r   r   r   Zsympy.physics.quantum.cartesianr   r   r   r   r   r   r   r   r   r   r   r   r   r   Zsympy.physics.quantum.operatorr   r'   r!   r6   r*   r,   r2   r7   r8   r)   r4   r-   r.   r1   r3   r5   r9   r/   r/   r/   r0   Ś<module>   s&   @
	