
    Qi                         d dl mZ d dlmZ d dlmZmZ d dlmZm	Z	m
Z
mZ d dlmZmZmZmZmZmZmZ d dlmZ  ed          Z ed          Ze                    d	d
eej        g          Zd Zd Zd Zded          dz  z  ed         z  ed         z  Z eee          Zed         dz  ej         z  ded          z  ej!        z  z   ded         z  ed         z  ej        z  z   Z" ee"e          Z#d Z$d Z%d Z&d Z'dS )    )S)Symbol)cossin)ReferenceFrameVectorPointdynamicsymbols)
divergencegradientcurlis_conservativeis_solenoidalscalar_potentialscalar_potential_difference)raisesRqPAxisc                  X   t          t          d          t                    t          d          k    sJ t          t          j        t                    t          d          k    sJ t          dt          d         dz  z  t          j        z  t                    t          d          k    sJ t          t          d         t          d         z  t          j        z  t                    t          d         t          j        z  t          d         t          j        z  z
  k    sJ t          t          d         t          d         z  t          d         z  t          j        t          j        z   t          j        z   z  t                    t          d          t          d         z  t          d         t          d         z  z   t          j        z  t          d         t          d         z  t          d         t          d         z  z
  t          j        z  z   t          d          t          d         z  t          d         t          d         z  z   t          j        z  z   k    sJ t          dt          d         dz  z  t          j        z  t                    dt          d         z  t          j        z  k    sJ t          t          d         dz  t          j        z  t          j        z   t                    dt          d         t          t                    z  t          d         t          t                    z  z   z  t          t                    z  t          j        z  k    sJ t          t          d         t          j        z  t                    t          t                    t          j        z  k    sJ d S )Nr            )
r   r   r   xyzr   r   r   r        /var/www/development/aibuddy-work/election-extract/venv/lib/python3.11/site-packages/sympy/physics/vector/tests/test_fieldfunctions.py	test_curlr"      sp   q		1****Q<<6!99$$$$!A$'	!#q!!VAYY....!QqT	!#q!!QqT!#X!QS%88888!QqT	!A$!#ac'!#+.22qTE!A$J1ad"AC'1Q4!9qtAaDy+@!#*EEqTE!A$J1ad"AC'(( ( ( ( !A$'	!#q!!QqtVACZ////!aac!1%%!SVVad3q66k)*3q661!#56 6 6 6!QS!Aqs
******r    c                     t          t          d          t                    t          j        u sJ t          t          j        t                    t          j        u sJ t          t          d         dz  t          j        z  t                    dt          d         z  k    sJ t          t          d         t          d         z  t          d         z  t          j        t          j        z   t          j        z   z  t                    t          d         t          d         z  t          d         t          d         z  z   t          d         t          d         z  z   k    sJ t          dt          d         t          d         z  t          d         z  z  t          j        t          j        z   t          j        z   z  t                    dt          d         t          d         z  t          d         dz  z  z  dt          d         t          d         dz  z  t          d         z  z  z
  dt          d         dz  t          d         z  t          d         z  z  z
  k    sJ t          d         t          j        z  t          d         t          j        z  z   t          d         t          j        z  z   } t          | t                    dk    sJ t          | t                    	                                dk    sJ t          t          d         t          j        z  t          d         t          j        z  z   t                    dt          t                    z  k    sJ d S )Nr   r   r      )r   r   r   r   Zeror   r   r   r   simplifyr   r   )vs    r!   test_divergencer)      sZ   fQii##qv----ac1''''adAgack1%%1Q4////ad1Q4i!nAC4a88Q4!9qtAaDy 1Q4!9,- - - -q!A$qt)AaD.)ac!#gack:A>>qtAaDy1q !AqtAaD!G|AaD'8$99adAgadl1Q4 !! ! ! ! 	
!QS1Q48ad13h&Aaq    a$$&&!++++ad13h1ac)1--3q66999999r    c                     t          d          } t          dt                    t          d          k    sJ t          t          d         t                    t          j        k    sJ t          t          d         t          d         z  t          d         z  t                    t          d         t          d         z  t          j        z  t          d         t          d         z  t          j        z  z   t          d         t          d         z  t          j        z  z   k    sJ t          dt          d         dz  z  t                    dt          d         z  t          j        z  k    sJ t          | t          t          d                   z  t          d         z  t                    |  t          t          d                   z  t          d         dz  z  t          j        z  | t          t          d                   z  t          d         z  t          j        z  z   k    sJ t          t          d         t          d         z  t                    t          d          t          t                    z  t          d         t          t                    z  z   t          t                    z  t          d         t          t                    z  t          d         t          t                    z  z   t          t                    z  z
  t          j        z  t          d          t          t                    z  t          d         t          t                    z  z   t          t                    z  t          d         t          t                    z  t          d         t          t                    z  z   t          t                    z  z   t          j        z  z   k    sJ t          t          d         t          d         z  t                    t          d         t          j        z  t          d         t          j        z  z   k    sJ d S )Nar   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   )r+   s    r!   test_gradientr,   -   s   sAAq>>VAYY&&&&AaD!####AaD1IadNA&&Q4!9QS=1Q4!9QS=(1Q4!9QS=89 9 9 9AadAgIq!!QqtVACZ////Ac!A$iiK!$a((3s1Q4yy=1q $qQqT{1Q4'7';;< < < <AaD1Iq!!dU3q66\AaDQK'Q/1Q4A;1c!ff3LcRSff2TTVWVYYdU3q66\AaDQK'Q/1Q4A;1c!ff3LcRSff2TTVWVYYZZ Z Z Z AaD1Iq!!QqT!#X!QS%8888888r    r   r   r%      c                  0   t          d          du sJ t          t          j                  du sJ t          dt          j        z  dt          j        z  z   dt          j        z  z             du sJ t          t          d         t          d         z  t          j        z  t          d         t          d         z  t          j        z  z   t          d         t          d         z  t          j        z  z             du sJ t          t          d         t          j        z            du sJ t          t
                    du sJ t          t                    du sJ t          dt          d         z  t          d         z  t          d         z  t          j        z  dt          d         dz  z  t          d         z  t          j        z  z             du sJ t          t          d         t          j        z  t          d         t          j        z  z             du sJ d S )Nr   Tr   r%   r   r   F)r   r   r   r   r   
grad_field
curl_fieldr   r   r    r!   test_conservativer1   B   s   1%%%%134''''1qs7QW,q13w6774????1Q4!9QS=1Q4!9QS=81Q4!9QS=HII   1Q4!#:&&%////:&&$....:&&%////1QqT6!A$;qt+AC/!AaD!G)AaD.2DDEE ! ! ! !1Q48ad13h.//4777777r    c                     t          d          du sJ t          t          j                  du sJ t          dt          j        z  dt          j        z  z   dt          j        z  z             du sJ t          t          d         t          d         z  t          j        z  t          d         t          d         z  t          j        z  z   t          d         t          d         z  t          j        z  z             du sJ t          t          d         t          j        z            du sJ t          t
                    du sJ t          t                    du sJ t          dt          d         z  dz   t          j        z            du sJ t          t          t                    t          j        z  t          t                    t          j        z  z   t          t                    t          j        z  z             du sJ t          t          d         t          j        z  t          d         t          j        z  z             du sJ d S )	Nr   Tr   r%   r   r   Fr   )r   r   r   r   r   r/   r0   r   r   r   r   r   r    r!   test_solenoidalr3   P   s   t####%%%%QS1qs7*QW455====1ad131ad1361ad13FGG   1$$----$$----$$,,,,"QqT'A+qs*++t3333Qc!ffQSj03q66!#:=>>$FFFF1acAaDH,--555555r    c                  n   t          dt                    dk    sJ t          t          j        t                    t          d         k    sJ t          t          j        t                    t          d         k    sJ t          t          j        t                    t          d         k    sJ t          t          d         t          d         z  t          j        z  t          d         t          d         z  t          j        z  z   t          d         t          d         z  t          j        z  z   t                    t          d         t          d         z  t          d         z  k    sJ t          t
          t                    t          k    sJ t          t          d         t          j        z  t          d         t          j        z  z   t                    t          d         t          d         z  t          t                    z  t          d         t          d         z  t          t                    z  z   k    sJ t          t          d         t          j        z  t          d         t          j        z  z   t                    t          d         t          d         z  k    sJ t          t          d            d S )Nr   r   r   c                  \    t          t          d         t          j        z  t                    S )Nr   )r   r   r   r   r    r!   <lambda>z'test_scalar_potential.<locals>.<lambda>i   s    /!qs
A>> r    )r   r   r   r   r   r/   scalar_fieldr   r   r   r   r   
ValueErrorr   r    r!   test_scalar_potentialr9   ^   s   Aq!!Q&&&&AC##qt++++AC##qt++++AC##qt++++AaD1IacMAaD1IacM9aD1IacM*+,. .121ad1Q4@ @ @ @J**l::::AaDHqtACx/33Q4!9SVVad1Q4iA../ / / /AaDHqtACx/33qtAaDy@@@@
:>>?????r    c                     t          d          } |                     ddt          j        z  dt          j        z  z   dt          j        z  z             }|                     ddt          j        z  dt          j        z  z   d	t          j        z  z             }|                     d
t          d         t          j        z  t          d         t          j        z  z   t          d         t          j        z  z             }|                     dt          d         t          j        z  t          d         t          j        z  z   t          d         t          j        z  z             }t          t          j	        t          |||           dk    sJ t          t          t          | ||           t          k    sJ t          t          t          | ||           t          k    sJ t          t          t          |||           dk    sJ t          t          d         t          d         z  t          j        z  t          d         t          d         z  t          j        z  z   t          d         t          d         z  t          j        z  z   t          |||           t          d         t          d         z  t          d         z  d	z
  k    sJ dt          d         z  t          d         t          t                    z  t          d         t          t                    z  z   z  t          d         t          t                    z  t          d         t          t                    z  z
  dz  z  }t          t          t          | ||                                           |k    sJ d S )NOP1r   r   r%   P2r   r-      RPr   PPi  )r	   	locatenewr   r   r   r   r   r   r   r&   r7   r/   r   r   r   r'   )originpoint1point2genericpointRgenericpointPpotential_diff_Ps         r!    test_scalar_potential_differencerH   l   s   3ZZFdAacEAacEMAacE$9::FdAacEAacEMAacE$9::F$$T1Q48ad13h+>1ac+IJJM$$T1Q48ad13h+>1ac+IJJM&qvq&&'-/ /234 4 4 4&|Q'4f> >'34 4 4 4 'z1f'4f> >'34 4 4 4 'z1ff'-/ /256 6 6 6&qtAaDy}qtAaDy}'D'(tAaDy}(567'4f> > ()tAaDy1~'9: : : : 1vqtCFF{QqT#a&&[89!SVVad3q66k1A56&z1f'4'-/ //7xzz'78 8 8 8 8 8r    N)(sympy.core.singletonr   sympy.core.symbolr   (sympy.functions.elementary.trigonometricr   r   sympy.physics.vectorr   r   r	   r
   #sympy.physics.vector.fieldfunctionsr   r   r   r   r   r   r   sympy.testing.pytestr   r   r   	orientnewr   r   r"   r)   r,   r7   r/   r   r   vector_fieldr0   r1   r3   r9   rH   r   r    r!   <module>rQ      s!   " " " " " " $ $ $ $ $ $ ? ? ? ? ? ? ? ?           3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 ( ' ' ' ' 'N3N3KKVaX&&+ + +: : :9 9 9 1qy1~ad"XlA&&
tQwqs{QqtVACZ'!AaD&1+ac/9T,""
8 8 86 6 6@ @ @8 8 8 8 8r    