§
    OŠtjŠ
  ã                   ón   — d dl mZ d dlmZ d dlmZmZmZmZm	Z	m
Z
mZmZ d dlmZmZ d„ Zd„ Zd„ Zd„ Zd	S )
é    )Úraises)Úsymbols)Ú	RigidBodyÚParticleÚReferenceFrameÚPointÚouterÚdynamicsymbolsÚForceÚTorque)ÚgravityÚ_parse_loadc                  óJ  — t          d¦  «        } t          d¦  «        }t          || j        ¦  «        }|j        |k    sJ ‚|j        | j        k    sJ ‚|                     ¦   «         dk    sJ ‚t          |t          ¦  «        sJ ‚|d         |k    sJ ‚|d         | j        k    sJ ‚||| j        fk    sJ ‚|| j        |fk    sJ ‚||| j        | j	        z   fk    sJ ‚|t          d¦  «        | j        fk    sJ ‚t          d|¦  «        }t          || j        ¦  «        }||k    sJ ‚d S )NÚNÚPozForce(point=Po, force=N.x)r   é   ÚCoÚP)r   r   r   ÚxÚpointÚforceÚ__repr__Ú
isinstanceÚtupleÚyr   )r   r   Úf1r   Úf2s        úf/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/sympy/physics/mechanics/tests/test_loads.pyÚtest_force_defaultr   	   s-  € Ý�sÑÔ€AÝ	ˆt‰Œ€BÝ	ˆr�1”3‰Œ€BØŒ8�rŠ>ˆ>ˆ>ˆ>ØŒ8�q”sŠ?ˆ?ˆ?ˆ?Ø�;Š;‰=Œ=Ð8Ò8Ð8Ð8Ð8å�b�%Ñ Ô Ð Ð Ð ØˆaŒ5�BŠ;ˆ;ˆ;ˆ;ØˆaŒ5�A”CŠ<ˆ<ˆ<ˆ<Ø�"�a”c�Š?ˆ?ˆ?ˆ?Ø�!”#�r�Š?ˆ?ˆ?ˆ?Ø�"�a”c˜AœC‘i�Ò Ð Ð Ð Ø•%˜‘+”+˜qœsÐ#Ò#Ð#Ð#Ð#å��bÑÔ€AÝ	ˆq�!”#‰Œ€BØ�Š8ˆ8ˆ8ˆ8ˆ8ˆ8ó    c                  ó.  — t          d¦  «        } t          | | j        ¦  «        }|j        | k    sJ ‚|j        | j        k    sJ ‚|                     ¦   «         dk    sJ ‚t          |t          ¦  «        sJ ‚|d         | k    sJ ‚|d         | j        k    sJ ‚|| | j        fk    sJ ‚|| j        | fk    sJ ‚|| | j        | j        z   fk    sJ ‚|t          d¦  «        | j        fk    sJ ‚t          d| ¬¦  «        }t          || j        ¦  «        }||k    sJ ‚d S )Nr   zTorque(frame=N, torque=N.x)r   r   ÚAr   )Úframe)
r   r   r   r#   Útorquer   r   r   r   r   )r   r   Úrbr   s       r   Útest_torque_defaultr&      s+  € Ý�sÑÔ€AÝ	��1”3‰Œ€BØŒ8�qŠ=ˆ=ˆ=ˆ=ØŒ9˜œÒÐÐÐØ�;Š;‰=Œ=Ð9Ò9Ð9Ð9Ð9å�b�%Ñ Ô Ð Ð Ð ØˆaŒ5�AŠ:ˆ:ˆ:ˆ:ØˆaŒ5�A”CŠ<ˆ<ˆ<ˆ<Ø�!�Q”S�Š>ˆ>ˆ>ˆ>Ø�!”#�q�Š>ˆ>ˆ>ˆ>Ø�!�Q”S˜1œ3‘Y�ÒÐÐÐØ•. Ñ%Ô% q¤sÐ+Ò+Ð+Ð+Ð+å	�3˜aÐ	 Ñ	 Ô	 €BÝ	��A”C‰Œ€BØ�Š8ˆ8ˆ8ˆ8ˆ8ˆ8r    c                  óÀ  — t          d¦  «        } t          d¦  «        \  }}}t          d¦  «        \  }}t          d¦  «        }t	          d||¦  «        }t          d¦  «        }t          d¦  «        }	t          |j        |j        ¦  «        }
t          d|	|||
|	f¦  «        }||f|	|fg}|                     t          || j
        z  ||¦  «        ¦  «         ||f|	|f|||z  | j
        z  f|	||z  | j
        z  fg}t          t          |¦  «        ¦  «        D ]G}t          t          ||         ¦  «        ¦  «        D ]"}||         |         ||         |         k    sJ ‚Œ#ŒHd S )	Nr   zm M gzF1 F2ÚpoÚpar"   r   ÚB)r   r   r
   r   r   r	   r   r   Úextendr   r   ÚrangeÚlen)r   ÚmÚMÚgÚF1ÚF2r(   r)   r"   r   ÚIr*   Ú	forceListÚlÚiÚjs                   r   Útest_gravityr8   2   sl  € Ý�sÑÔ€AÝ�gÑÔ�G€A€qˆ!Ý˜GÑ$Ô$�F€BˆÝ	ˆt‰Œ€BÝ	�$˜˜AÑ	Ô	€BÝ�sÑÔ€AÝˆc‰
Œ
€AÝˆaŒc�1”3‰Œ€AÝ�#�q˜!˜Q  A Ñ'Ô'€AØ�b�˜A˜r˜7Ð#€IØ×Ò•W˜Q ¤™W b¨!Ñ,Ô,Ñ-Ô-Ð-Ø
ˆbˆ�A�r�7˜R  Q¡¨¬¡Ð-°°1°q±5¸1¼3±;Ð/?Ð@€Aå•3�q‘6”6‰]Œ]ð .ð .ˆÝ•s˜1˜Qœ4‘y”yÑ!Ô!ð 	.ð 	.ˆAØ˜Q”< ”? a¨¤d¨1¤gÒ-Ð-Ð-Ð-Ð-ð	.ð.ð .r    c                  óê  ‡‡— t          d¦  «        Št          d¦  «        Št          t          ‰‰j        ¦  «        ¦  «        ‰‰j        fk    sJ ‚t          t          ‰‰j        ¦  «        ¦  «        ‰‰j        fk    sJ ‚t          ‰‰j        f¦  «        } t          | t          ¦  «        sJ ‚| t          ‰‰j        ¦  «        k    sJ ‚t          ‰‰j        f¦  «        }t          |t
          ¦  «        sJ ‚|t          ‰‰j        ¦  «        k    sJ ‚t          t          ˆˆfd„¦  «         t          t          ˆˆfd„¦  «         t          t          ˆˆfd„¦  «         t          t          ˆˆfd„¦  «         d S )Nr   r(   c                  óL   •— t          t          d‰¦  «        ‰ j        f¦  «        S ©Nr)   )r   r   r   ©r   r(   s   €€r   ú<lambda>z"test_parse_loads.<locals>.<lambda>Q   s    ø€ �{­H°T¸2Ñ,>Ô,>ÀÄÐ+DÑEÔE€ r    c                  óN   •— t          t          d‰‰ ¦  «        ‰ j        f¦  «        S r;   )r   r   r   r<   s   €€r   r=   z"test_parse_loads.<locals>.<lambda>R   s"   ø€ �{­I°d¸BÀÑ,BÔ,BÀAÄCÐ+HÑIÔI€ r    c                  ó>   •— t          ‰‰ j        ‰‰ j        f¦  «        S ©N©r   r   r<   s   €€r   r=   z"test_parse_loads.<locals>.<lambda>T   s   ø€ �{¨B°´°R¸¼Ð+=Ñ>Ô>€ r    c                  ó0   •— t          ‰‰ j        g¦  «        S r@   rA   r<   s   €€r   r=   z"test_parse_loads.<locals>.<lambda>V   s   ø€ �k¨2¨q¬s¨)Ñ4Ô4€ r    )r   r   r   r   Úzr   r   r   r   r   Ú
ValueErrorÚ	TypeError)r   Út1r   r(   s     @@r   Útest_parse_loadsrG   E   sp  øø€ Ý�sÑÔ€AÝ	ˆt‰Œ€BÝ•u˜R ¤‘~”~Ñ&Ô&¨2¨q¬s¨)Ò3Ð3Ð3Ð3Ý•v˜a ¤‘~”~Ñ&Ô&¨1¨a¬c¨(Ò2Ð2Ð2Ð2Ý	�b˜!œ#�YÑ	Ô	€BÝ�b�%Ñ Ô Ð Ð Ð Ø•�r˜1œ3‘”ÒÐÐÐÝ	�a˜œ�XÑ	Ô	€BÝ�b�&Ñ!Ô!Ð!Ð!Ð!Ø•˜˜1œ3‘”ÒÐÐÐå
�:ÐEÐEÐEÐEÐEÑFÔFÐFÝ
�:ÐIÐIÐIÐIÐIÑJÔJÐJå
�:Ð>Ð>Ð>Ð>Ð>Ñ?Ô?Ð?å
�9Ð4Ð4Ð4Ð4Ð4Ñ5Ô5Ð5Ð5Ð5r    N)Úpytestr   Úsympyr   Úsympy.physics.mechanicsr   r   r   r   r	   r
   r   r   Úsympy.physics.mechanics.loadsr   r   r   r&   r8   rG   © r    r   ú<module>rM      sÿ   ðØ Ð Ð Ð Ð Ð à Ð Ð Ð Ð Ð ðKð Kð Kð Kð Kð Kð Kð Kð Kð Kð Kð Kð Kð Kð Kð Kð Kð Kð Kð Kà >Ð >Ð >Ð >Ð >Ð >Ð >Ð >ðð ð ð*ð ð ð(.ð .ð .ð&6ð 6ð 6ð 6ð 6r    