U
    ZÊ¹jŒ  ã                   @   s|   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 d dlmZ d dlmZmZmZmZ dd	„ Zd
d„ ZdS )é    )Úprod)ÚRational)Úexp)Úsqrt)ÚDaggerÚ
CommutatorÚqapply)ÚBosonOp)ÚBosonFockKetÚBosonFockBraÚBosonCoherentKetÚBosonCoherentBrac                  C   sò   t dƒ} t dƒ}t| t ƒst‚tt| ƒt ƒs0t‚| js:t‚t| ƒjrHt‚t dƒt ddƒks^t‚t dƒt dƒksrt‚t ddƒt ddƒksŠt‚t| t| ƒƒ ¡ dks¤t‚t| t|ƒƒ ¡ | t|ƒ t|ƒ|   ksÒt‚tt| ƒƒtt| ƒƒksît‚d S )NÚaÚbTÚcFé   )r	   Ú
isinstanceÚAssertionErrorr   Zis_annihilationr   Údoitr   )r   r   © r   úe/var/www/html/bwave/python/venv/lib/python3.8/site-packages/sympy/physics/quantum/tests/test_boson.pyÚtest_bosonoperator   s    
.r   c                  C   s  t dƒ} d}tdƒtdƒ  ¡ dks(t‚tdƒtdƒ  ¡ dksDt‚tt|ƒt| ƒ|  tdƒ ƒttt	d|d ƒƒƒks~t‚d\}}t
|ƒt|ƒ  ¡ dks¢t‚t
|ƒt|ƒ  ¡ dks¾t‚tt
|ƒt|ƒ  ¡ t|| d tddƒ ƒ ƒdk søt‚t| t|ƒ ƒ|t|ƒ k�st‚d S )	Nr   é   r   r   )g333333ó?g333333@é   éÿÿÿÿgê-�™—q=)r	   r   r
   r   r   r   r   r   r   Úranger   r   Úabsr   r   )r   ÚnZalpha1Zalpha2r   r   r   Útest_boson_states!   s$    ÿÿÿ
ÿr   N)Úmathr   Zsympy.core.numbersr   Z&sympy.functions.elementary.exponentialr   Z(sympy.functions.elementary.miscellaneousr   Zsympy.physics.quantumr   r   r   Zsympy.physics.quantum.bosonr	   r
   r   r   r   r   r   r   r   r   r   Ú<module>   s   