U
    9%ei                     @   sP   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 Z
dd Zdd	 Zd
S )    )symbols)PointParticleReferenceFrameinertia)raiseswarns_deprecated_sympyc                     s  t d\} }}}}}}td td}td }| dksDt|jksRt|j ks`t| |_|j| kstt||_|j|ksttd}	td}
||
||	j	  |
|	||	j  tt fdd ttfd	d ||	| | |	j kst||
|	|  | | |	j ks$t|
|	||	j	  ||	| | |	j	 ksTt||
|	d
ksjt|
|	||	j  ||	| | |	j kst||
|	| | | |	j kst|
|	||	j ||	j	  ||	j   ||	| ||	j ||	j	  ||	j   kst||
|	| | ||	j ||	j   ksDt| | |_|j| | ksjt||	| |d |d  |d   d | |d  d | |d  d  | |d  d  fkstd S )Nzm m2 v1 v2 v3 r g hPP2paNOc                      s   t   S )Nr    r	   mr   j/var/www/html/Darija-Ai-API/env/lib/python3.8/site-packages/sympy/physics/mechanics/tests/test_particle.py<lambda>       ztest_particle.<locals>.<lambda>c                      s   t d  S )Nr   r   r   )r   r   r   r      r   r      )r   r   r   __str__AssertionErrorZmasspointr   Zset_posyZset_velxr   	TypeErrorZlinear_momentumZangular_momentumzZpotential_energyZkinetic_energy)m2Zv1Zv2Zv3rghr
   pr   r   r   r   r   test_particle   sJ    &$&2..r"   c            	      C   s   t d} td\}}}td}|d|| j || j  }td||}||| }t| ||d  ||d  ||d |d   | | | d}||kst	d S )Nr   zm, a, bor!   r	   r   )Zixy)
r   r   r   Z	locatenewr   r   r   Zparallel_axisr   r   )	r   r   abr#   r!   r	   ZIpZIp_expectedr   r   r   test_parallel_axis/   s    *r&   c               	   C   sJ   t d\} }}td}td|| }t  || | |  W 5 Q R X d S )Nzm g hr	   r   )r   r   r   r   Zset_potential_energy)r   r   r    r	   r!   r   r   r   $test_deprecated_set_potential_energy:   s
    r'   N)Zsympy.core.symbolr   Zsympy.physics.mechanicsr   r   r   r   Zsympy.testing.pytestr   r   r"   r&   r'   r   r   r   r   <module>   s
   (