Ë
    7^(h©  ã                   óœ   — d dl mZmZ d dlmZ d dlmZ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  ed«      Zd	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zy)é    )ÚFloatÚpi)Úsymbols)ÚcosÚsin)ÚImmutableDenseMatrix)ÚReferenceFrameÚdynamicsymbolsÚouter©Ú_check_dyadic)ÚraisesÚAc            	      ó.  ‡— t         j                  t         j                  z  Št         j                  t         j                  z  } t         j                  t         j                  z  }‰dz  dk(  sJ ‚‰dk7  sJ ‚‰dz  dt         j                  z  t         j                  z  k(  sJ ‚‰dz  d‰z  k(  sJ ‚‰d‰z  z  dk(  sJ ‚‰| z  dk(  sJ ‚‰t         j                  z  t         j                  k(  sJ ‚‰t         j                  z  dk(  sJ ‚‰t         j                  z  t         j                  t         j                  z  k(  sJ ‚‰t         j                  z  t         j                   t         j                  z  k(  sJ ‚| t         j                  z  t         j                   t         j                  z  k(  sJ ‚t         j                  ‰z  dk(  sJ ‚t         j                  ‰z  t         j                   t         j                  z  k(  sJ ‚t         j                  ‰z  t         j                  t         j                  z  k(  sJ ‚t         j                  ‰z  t         j                  k(  sJ ‚t         j                  ‰z  dk(  sJ ‚t         j                  | z  t         j                  k(  sJ ‚‰|z  t         j                  t         j                  z  k(  sJ ‚|‰z  dk(  sJ ‚‰j	                  t         «      dk(  sJ ‚t        d«      }t        dd«      }t         j                  dd|t         j                  g«      }‰j                  |«      ‰j                  ||«      k(  sJ ‚‰j                  |«      t        |«      dz  |j                  |j                  z  z  t        |«       t        |«      z  |j                  |j                  z  z  z   t        |«       t        |«      z  |j                  |j                  z  z  z   t        |«      dz  |j                  |j                  z  z  z   k(  sJ ‚‰j                  |t         «      t        |«      |j                  t         j                  z  z  t        |«       |j                  t         j                  z  z  z   k(  sJ ‚‰j                  t         |«      t        |«      t         j                  |j                  z  z  t        |«       t         j                  |j                  z  z  z   k(  sJ ‚‰j	                  |«      | t         j                  t         j                  z  z  | t         j                  t         j                  z  z  z   k(  sJ ‚‰j                  t         «      t        g d	¢g d
¢g d
¢g«      k(  sJ ‚‰j                  t         |«      t        t        |«      t        |«       dgg d
¢g d
¢g«      k(  sJ ‚|j                  t         «      t        g d¢g d
¢g d
¢g«      k(  sJ ‚t        d«      \  }}}}}	}
|t         j                  z  |t         j                  z  z   |t         j                  z  z   }|t         j                  z  |	t         j                  z  z   |
t         j                  z  z   }|j                  |«      }|j                  t         «      t        ||z  ||	z  ||
z  g||z  ||	z  ||
z  g||z  ||	z  ||
z  gg«      k(  sJ ‚|j                  |«      }t         j                  dd|t         j                  g«      }t        |j                  t         «      |j                  t         «      z  |j                  t         «      j                   z  |j                  |«      «      D ]  \  }}||z
  j#                  «       dk(  rŒJ ‚ t%        t&        ˆfd„«       y )Nr   é   g       @g      à?Úqé   ÚBÚAxis)r   r   r   )r   r   r   )r   r   r   za, b, c, d, e, fÚCc                  ó&   •— ‰ j                  d«      S ©Nr   )Ú	applyfunc)Úd1s   €úd/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/sympy/physics/vector/tests/test_dyadic.pyú<lambda>ztest_dyadic.<locals>.<lambda>A   s   ø€ ˜bŸl™l¨1›o€ ó    )r   ÚxÚyÚzÚdtr
   Ú	orientnewÚexpressr   r   Ú	to_matrixÚMatrixr   r   ÚzipÚdcmÚTÚsimplifyr   Ú	TypeError)Úd2Úd3r   Úqdr   ÚaÚbÚcÚdÚeÚfÚv1Úv2Úd4Úd5r   ÚexpectedÚactualr   s                     @r   Útest_dyadicr:      sø  ø€ Ü	
�‰Œq�s‰s‰€BÜ	
�‰Œq�s‰s‰€BÜ	
�‰Œq�s‰s‰€BØ�‰6�QŠ;Ðˆ;Ø�Š7€Nˆ7Ø�‰6�QœŸ™‘WœqŸs™s‘]Ò"Ð"Ð"Ø�‰7�c˜B‘hÒÐÐØ��R‘‰=˜AÒÐÐØ�‰7�aŠ<Ðˆ<Ø”—‘‰8”q—s‘sŠ?Ðˆ?Ø”—‘‰8�qŠ=Ðˆ=Ø”—‘‰8”q—s‘sœQŸS™S‘yÒ Ð Ð Ø”—‘‰8œŸ™�uœqŸs™s‘{Ò"Ð"Ð"Ø”—‘‰8œŸ™�uœqŸs™s‘{Ò"Ð"Ð"Ü�3‰3�‰8�qŠ=Ðˆ=Ü�3‰3�‰8œŸ™�uœqŸs™s‘{Ò"Ð"Ð"Ü�3‰3�‰8”q—s‘sœQŸS™S‘yÒ Ð Ð Ü�3‰3�‰8”q—s‘sŠ?Ðˆ?Ü�3‰3�‰8�qŠ=Ðˆ=Ü�3‰3�‰8”q—s‘sŠ?Ðˆ?Ø�‰7”a—c‘cœAŸC™C‘iÒÐÐØ�‰7�aŠ<Ðˆ<Ø�5‰5”‹8�qŠ=Ðˆ=Ü�sÓ€AÜ	˜˜QÓ	€BÜ	�‰�C˜ !¤Q§S¡S Ó*€AØ�:‰:�a‹=˜BŸJ™J q¨!Ó,Ò,Ð,Ð,Ø�:‰:�a‹=œc !›f a™i¨A¯C©C°!·#±#©IÑ6¼3¸q»6¸'ÄCÈÃFÑ:JØ�S‰S�1—3‘3‰Yñ:ñ Ü ›F˜7¤S¨£VÑ+°·±°a·c±c±	Ñ:ñ;Ü>AÀ!»fÀa¹iØ�S‰S�1—3‘3‰Yñ>ñò ð ð ð �:‰:�aœÓ¤ A£¨1¯3©3´·±©9Ñ5¼#¸a»&¸ÀQÇSÁSÌ1Ï3É3ÁYÑ8OÑOÒOÐOÐOØ�:‰:”a˜Ó¤ A£¬1¯3©3°·±©9Ñ5¼#¸a»&¸ÄQÇSÁSÈ1Ï3É3ÁYÑ8OÑOÒOÐOÐOØ�5‰5�‹8˜˜¤§¡¤a§c¡c¡	Ñ*¨r¨c´a·c±c¼A¿C¹C±iÑ-@Ñ@Ò@Ð@Ð@à�<‰<œ‹?œf¢i²ºIÐ%FÓGÒGÐGÐGØ�<‰<œ˜1Ó¤¬#¨a«&´3°q³6°'¸1Ð)=Ú)2Ú)2ð)4ó "5ò 5ð 5ð 5ð �<‰<œ‹?œf¢i²ºIÐ%FÓGÒGÐGÐGÜÐ1Ó2Ñ€A€qˆ!ˆQ��1Ø	
ŒQ�S‰S‰�1”q—s‘s‘7Ñ	˜Q¤§¡™WÑ	$€BØ	
ŒQ�S‰S‰�1”q—s‘s‘7Ñ	˜Q¤§¡™WÑ	$€BØ	�‰�"‹€BØ�<‰<œ‹?œf q¨1¡u¨a°!©e°Q¸±UÐ&;Ø'(¨1¡u¨a°!©e°Q¸±UÐ&;Ø'(¨1¡u¨a°!©e°Q¸±UÐ&;ð&=ó >ò >ð >ð >ð 
�‰�"‹€BÜ	�‰�C˜ !¤Q§S¡S Ó*€AÜ §¡¤a£¨2¯<©<¼«?Ñ :¸Q¿U¹UÄ1»X¿Z¹ZÑ GØ "§¡¨Q£ó1ò 3Ñˆ�&à˜6Ñ!×+Ñ+Ó-°Ó2Ð2Ð2ð3ô Œ9Ó-Õ.r   c            
      óš  — t        d«      \
  } }}}}}}}}}	t        d«      }
|
j                  |
j                  z  }d| z  d|z  z   |z  }|
j                  |z  |
j                  z  | |z   | |z  z  k7  sJ ‚|j                  «       }|
j                  |z  |
j                  z  | |z   | |z  z  k(  sJ ‚|	dz  |dz  z  dt        z  |z  |dz  z  z  |z  }|j                  «       }|
j                  |z  |
j                  z  |	dz  |dz  z  dt        z  |z  |dz  z  z  k(  sJ ‚dd| z  z   ddd| z  z   z  z
  dd| z  z   z  |z  }|j                  «       }|
j                  |z  |
j                  z  dk(  sJ ‚d| z  |dz  z  d|dz  z  z
  d| dz  z  |z  z
  | |z   dz  z  |z  }|j                  «       }|
j                  |z  |
j                  z  d	|z  k(  sJ ‚y )
Nzx, y, z, k, n, m, w, f, s, AÚNr   r   é   é   r   éüÿÿÿéþÿÿÿ)r   r	   r   r)   r   )r   r   r    ÚkÚnÚmÚwr3   Úsr   r<   ÚdyÚtest1Útest2Útest3Útest4s                   r   Útest_dyadic_simplifyrK   D   sû  € Ü#*Ð+IÓ#JÑ €A€qˆ!ˆQ��1�a˜˜A˜qÜ�sÓ€Aà	
�‰ˆq�s‰s‰€BØ�‰U�Q˜‘U‰]˜bÑ €EØ�C‰C�%‰K˜!Ÿ#™#Ñ 1 q¡5¨Q°©UÑ"3Ò3Ð3Ð3Ø�N‰NÓ€EØ�C‰C�%‰K˜!Ÿ#™#Ñ 1 q¡5¨Q°©UÑ"3Ò3Ð3Ð3à�‰T�A�q‘D‰[˜A¤™F Q™J¨¨A©Ñ-Ñ.°"Ñ4€EØ�N‰NÓ€EØ�C‰C�%‰K˜!Ÿ#™#Ñ 1 a¡4¨!¨Q©$¡;°!´b±&¸1±*¸qÀ!¹tÑ2CÑ#DÒEÐEÐEà�!�a‘%‰i˜!˜q 1 q¡5™y™/Ñ)¨a°!°a±%©iÑ8¸BÑ>€EØ�N‰NÓ€EØ�C‰C�%‰K˜!Ÿ#™#Ñ !Ò#Ð#Ð#à�1‰f�q˜!‘t‰m˜a ! Q¡$™hÑ&¨¨Q°©T©°A©Ñ5¸!¸a¹%À!¹ÑCÀrÑI€EØ�N‰NÓ€EØ�C‰C�%‰K˜!Ÿ#™#Ñ " q¡&Ò(Ð(Ñ(r   c                  óÌ   — t        d«      } t        d«      }|| j                  | j                  z  z  }|j                  |di«      d| j                  | j                  z  z  k(  sJ ‚y )Nr<   rE   r   )r	   r   r   Úsubs)r<   rE   r.   s      r   Útest_dyadic_subsrN   [   sT   € Ü�sÓ€AÜ�‹€AØ	ˆ1�3‰3�—‘‰9‰€AØ�6‰6�1�a�&‹>˜Q §¡ a§c¡c¡	™]Ò*Ð*Ñ*r   c                  ó&   — t        t        d„ «       y )Nc                  ó   — t        d«      S r   r   © r   r   r   z#test_check_dyadic.<locals>.<lambda>c   s   € œm¨AÓ.€ r   )r   r*   rQ   r   r   Útest_check_dyadicrR   b   s   € Ü
Œ9Ñ.Õ/r   c                  ó@  — t        d«      } t        | j                  | j                  z  z  }|j                  d«      t	        dd«      | j                  | j                  z  z  k(  sJ ‚t        d«      }d|z  t        z  | j                  | j                  z  z  }|j                  d«      t	        dd«      t	        dd«      z  |z  | j                  | j                  z  z  k(  sJ ‚|j                  d|d	i¬
«      t	        dd«      | j                  | j                  z  z  k(  sJ ‚y )Nr<   r>   z3.1416rE   é   r   Ú5é	   gåÐ"Ûù~@)rM   z80.48760378)r	   r   r   Úevalfr   r   )r<   r.   rE   s      r   Útest_dyadic_evalfrX   f   sì   € Ü�sÓ€AÜ
ˆa�c‰c�A—C‘C‰iÑ€AØ�7‰7�1‹:œ˜x¨Ó+¨q¯s©s°Q·S±S©yÑ9Ò9Ð9Ð9Ü�‹€AØ	ˆA‰”‰
�Q—S‘S˜1Ÿ3™3‘YÑ€AØ�7‰7�1‹:œ˜s A›¬¨x¸Ó);Ñ;¸aÑ?À1Ç3Á3ÈÏÉÁ9ÑMÒMÐMÐMØ�7‰7�1˜A˜u˜:ˆ7Ó&¬%°¸qÓ*AÀQÇSÁSÈ1Ï3É3ÁYÑ*OÒOÐOÑOr   c                  ó  ‡‡‡— t        d«      \  ŠŠ} t        d«      }t        |j                  |j                  «      }‰‰z  |z  Š‰j	                  ‰t        ‰«      i«      t        ‰«      ‰z  |z  k(  sJ ‚‰j	                  ‰‰z  t        i«      t        |z  k(  sJ ‚‰‰z  | z  |z  Š‰j	                  ‰‰z  | z  di«      |k(  sJ ‚‰j	                  ‰d| di«      |k(  sJ ‚t        t        ˆfd„«       t        t        ˆˆˆfd„«       y )Nzx y zr<   r   r   c                  ó$   •— ‰ j                  «       S ©N©Úxreplace)Úvs   €r   r   z&test_dyadic_xreplace.<locals>.<lambda>z   s   ø€ ˜aŸj™j›l€ r   c                  ó*   •— ‰ j                  ‰‰g«      S r[   r\   )r^   r   r   s   €€€r   r   z&test_dyadic_xreplace.<locals>.<lambda>{   s   ø€ ˜aŸj™j¨!¨Q¨Ó0€ r   )	r   r	   r   r   r]   r   r   r   r*   )r    r<   ÚDr^   r   r   s      @@@r   Útest_dyadic_xreplacera   p   sô   ú€ Ü�gÓ�G€A€qˆ!Ü�sÓ€AÜˆa�c‰c�1—3‘3‹€AØ	ˆ!‰ˆa‰€AØ�:‰:�qœ3˜q›6�lÓ#¤s¨1£v¨a¡x°!¡|Ò3Ð3Ð3Ø�:‰:�q˜‘sœR�jÓ!¤R¨!¡VÒ+Ð+Ð+Ø	
ˆ1‰ˆq‰�1‰€AØ�:‰:˜˜!™˜a‘x !�nÓ%¨Ò*Ð*Ð*Ø�:‰:�q˜˜A˜a�jÓ! QÒ&Ð&Ð&Ü
Œ9Ó*Ô+Ü
Œ9Õ0Õ1r   N)Úsympy.core.numbersr   r   Úsympy.core.symbolr   Ú(sympy.functions.elementary.trigonometricr   r   Úsympy.matrices.immutabler   r%   Úsympy.physics.vectorr	   r
   r   Úsympy.physics.vector.dyadicr   Úsympy.testing.pytestr   r   r:   rK   rN   rR   rX   ra   rQ   r   r   ú<module>ri      sG   ðß *Ý %ß ?Ý Cß FÑ FÝ 5Ý 'á�3Ó€ò5/òp)ò.+ò0òPó2r   