§
    fŠtjn  ã                   óT   — d dl Zd dlmZmZmZ d dlmZ d dl	m
Z
  G d„ d¦  «        ZdS )é    N)Úassert_allcloseÚassert_equalÚassert_almost_equal)Úraises)Ú
procrustesc                   ó8   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	dS )	ÚTestProcrustesc           
      óœ  — t          j        ddgddgddgddggd¦  «        | _        t          j        ddgddgddgddggd¦  «        | _        t          j        ddgddgddgdd	ggd¦  «        | _        t           j        d
z  }t          j        ddgddgddgddggd¦  «        t          j        d¦  «        z  | _        t          j        t          j        |¦  «        t          j	        |¦  «        gt          j        t           j        dz  |z
  ¦  «        t          j	        t           j        dz  |z
  ¦  «        gt          j        |¦  «         t          j	        |¦  «         gt          j        t           j        dz  |z
  ¦  «         t          j	        t           j        dz  |z
  ¦  «         ggd¦  «        t          j        d¦  «        z  | _
        dS )zcreates inputsé   é   é   Údé   éþÿÿÿéüÿÿÿiúÿÿÿg      @é   r   éÿÿÿÿN)ÚnpÚarrayÚdata1Údata2Údata3ÚpiÚsqrtÚdata4ÚcosÚsinÚdata5)ÚselfÚ
shiftangles     úb/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/scipy/spatial/tests/test__procrustes.pyÚsetup_methodzTestProcrustes.setup_method	   sÂ  € õ ”X  1˜v¨¨1 v°°1¨v¸¸1°vÐ>ÀÑDÔDˆŒ
õ ”X  2˜w¨¨B¨°!°R°¸1¸b¸'ÐBÀCÑHÔHˆŒ
õ
 ”X  1˜v¨¨1 v°°1¨v¸¸3°xÐ@À#ÑFÔFˆŒ
õ
 ”U˜Q‘Yˆ
Ý”X  1˜v¨¨1 v°°A¨wØ  "˜gð'Ø(+ñ-ô -Ý/1¬w°q©z¬zñ:ˆŒ
å”X¥¤ zÑ 2Ô 2µB´F¸:Ñ4FÔ4FÐGÝ!œv¥b¤e¨a¡i°*Ñ&<Ñ=Ô=Ý!œv¥b¤e¨a¡i°*Ñ&<Ñ=Ô=ð?å "¤ zÑ 2Ô 2Ð2Ý "¤ zÑ 2Ô 2Ð2ð4å "¤¥r¤u¨q¡y°:Ñ'=Ñ >Ô >Ð>Ý "¤¥r¤u¨q¡y°:Ñ'=Ñ >Ô >Ð>ð@ðAð "ñ#ô #õ &(¤W¨Q¡Z¤Zñ0ˆŒ
ˆ
ˆ
ó    c                 ó$  — t          | j        | j        ¦  «        \  }}}t          ||¦  «         t	          |d¦  «         t          | j        | j        ¦  «        \  }}}t          || j        ¦  «         t          | j        | j        ¦  «        \  }}}	d S )Ng        )	r   r   r   r   r   r   r   r   r   )
r   ÚaÚbÚ	disparityÚm4Úm5Údisp45Úm1Úm3Údisp13s
             r!   Útest_procrusteszTestProcrustes.test_procrustes%   s‰   € õ % T¤Z°´Ñ<Ô<‰ˆˆ1ˆiÝ˜˜1ÑÔÐÝ˜I rÑ*Ô*Ð*õ $ D¤J°´
Ñ;Ô;‰ˆˆB�Ý�R˜œÑ$Ô$Ð$õ $ D¤J°´
Ñ;Ô;‰ˆˆB���r#   c                 ó¾  — t          | j        | j        ¦  «        \  }}}t          | j        | j        ¦  «        \  }}}t          ||¦  «         t	          j        g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g¦  «        }t	          j        g d	¢g d
¢g d¢g d¢g d¢g d¢g d¢g d¢g¦  «        }t          ||¦  «        \  }	}
}t          ||¦  «        \  }}}t          ||¦  «         d S )N)gß�€°×ô@g­æï”ÄˆÓ?gŠ¼YAÛÃá?)gR;ËEßQÚ?g²¡zï˜O¤¿g/ß¸”cÔ¿)g¼üwKií?g¨¯c3òOö?g£Ù£ä“Ã¿)gÆ) çA	 @gÚç¼Jà?g :oÆÝÞÒ?)g½Ù‹‚3¸?gvOÃ\÷›å?g‚�â˜<Ð ?)g}v# €õ±?g½P#¡ë‚@g÷-ç@Ãú¿)gˆN	g;Ïä?go{åî1°ù?gêg=¾µšé?)g˜±Wã$å¿güŠ¹”ˆ*á?gDØ×WªÍÅ?)gUÏ“|6¼´?g’|_;œé¸?gÍ\àòX3Æ¿)gö8•ý¿g[Ôåœñ í¿g¾7~�—±ô¿)gVÞDã?så?g$ÅSÑÀõ¿gúB9×Ú?)gŠÍd«ç?g´qæ6åÉ¿glx›³Æà?)g#­)w<¹Æ?gšyÕw<5·?g¶;{™îÓ?)g„¿xi7¸Þ?g9ô’ÖJNì¿gv[¦Sjâ¿)gÕYN¾°g½¿gÕj›$Ž#À¿g^p¼ñ¤»Õ¿)g³–DîÐ�ë¿g6ét(\Ò¿g1€K[·Üî?)r   r   r   r   r   r   )r   r+   r,   r-   Úm3_2Úm1_2Údisp31Úrand1Úrand3Úres1Úres3Úres3_2Úres1_2s                r!   Útest_procrustes2zTestProcrustes.test_procrustes28   sN  € å# D¤J°´
Ñ;Ô;‰ˆˆB�Ý'¨¬
°D´JÑ?Ô?Ñˆˆd�FÝ˜F FÑ+Ô+Ð+õ ”Ð>Ð>Ð>Ø?Ð?Ð?Ø>Ð>Ð>Ø=Ð=Ð=Ø=Ð=Ð=Ø>Ð>Ð>Ø=Ð=Ð=Ø=Ð=Ð=ð?ñ @ô @ˆõ ”Ð<Ð<Ð<Ø@Ð@Ð@Ø>Ð>Ð>Ø>Ð>Ð>Ø=Ð=Ð=Ø?Ð?Ð?Ø?Ð?Ð?Ø>Ð>Ð>ð@ñ Aô Aˆõ (¨¨uÑ5Ô5Ñˆˆd�FÝ!+¨E°5Ñ!9Ô!9Ñˆ�˜Ý˜F FÑ+Ô+Ð+Ð+Ð+r#   c           
      óž   — t          t          t          t          j        ddgddgg¦  «        t          j        g d¢g d¢g¦  «        ¦  «         d S )Nr   r   r   r   )é   é   é   )r   é	   é
   ©Úassert_raisesÚ
ValueErrorr   r   r   ©r   s    r!   Útest_procrustes_shape_mismatchz-TestProcrustes.test_procrustes_shape_mismatchT   sV   € Ý•j¥*Ý”h  A ¨¨A¨Ð/Ñ0Ô0Ý”h 	 	 	¨:¨:¨:Ð6Ñ7Ô7ñ	9ô 	9ð 	9ð 	9ð 	9r#   c                 óh   — t          j        g g¦  «        }t          t          t          ||¦  «         d S )N)r   r   rA   rB   r   )r   Úemptys     r!   Ú"test_procrustes_empty_rows_or_colsz1TestProcrustes.test_procrustes_empty_rows_or_colsY   s+   € Ý”˜"˜‘”ˆÝ•j¥*¨e°UÑ;Ô;Ð;Ð;Ð;r#   c           
      óž   — t          t          t          t          j        ddgddgg¦  «        t          j        ddgddgg¦  «        ¦  «         d S )Né*   é-   r@   rC   s    r!   Útest_procrustes_no_variationz+TestProcrustes.test_procrustes_no_variation]   sV   € Ý•j¥*Ý”h  R ¨2¨r¨(Ð3Ñ4Ô4Ý”h  R ¨2¨r¨(Ð3Ñ4Ô4ñ	6ô 	6ð 	6ð 	6ð 	6r#   c           
      ó0  — t          t          t          t          j        g d¢¦  «        t          j        ddgddgg¦  «        ¦  «         t          t          t          t          j        g d¢¦  «        t          j        g d¢¦  «        ¦  «         t          t          t          t          j        d¦  «        t          j        d¦  «        ¦  «         t          t          t          t          j        dgdggg¦  «        t          j        dd	ggg¦  «        ¦  «         d S )
N)r   r   r   r   r;   r   r   r   r   r   r=   é   r;   é   r@   rC   s    r!   Ú(test_procrustes_bad_number_of_dimensionsz7TestProcrustes.test_procrustes_bad_number_of_dimensionsb   sú   € å•j¥*Ý”hÐ1Ð1Ð1Ñ2Ô2Ý”h  A ¨¨A¨Ð/Ñ0Ô0ñ	2ô 	2ð 	2õ
 	•j¥*Ý”hÐ1Ð1Ð1Ñ2Ô2Ý”hÐ1Ð1Ð1Ñ2Ô2ñ	4ô 	4ð 	4õ
 	•j¥*­b¬h°q©k¬k½2¼8ÀB¹<¼<ÑHÔHÐHõ 	•j¥*Ý”h " ¨ s ˜}Ñ-Ô-Ý”h ! R  	˜{Ñ+Ô+ñ	-ô 	-ð 	-ð 	-ð 	-r#   N)
Ú__name__Ú
__module__Ú__qualname__r"   r.   r9   rD   rG   rK   rO   © r#   r!   r	   r	      s}   € € € € € ð0ð 0ð 0ð8<ð <ð <ð&,ð ,ð ,ð89ð 9ð 9ð
<ð <ð <ð6ð 6ð 6ð
-ð -ð -ð -ð -r#   r	   )Únumpyr   Únumpy.testingr   r   r   Úpytestr   rA   Úscipy.spatialr   r	   rS   r#   r!   ú<module>rX      s�   ðØ Ð Ð Ð Ø LÐ LÐ LÐ LÐ LÐ LÐ LÐ LÐ LÐ LØ *Ð *Ð *Ð *Ð *Ð *à $Ð $Ð $Ð $Ð $Ð $ðk-ð k-ð k-ð k-ð k-ñ k-ô k-ð k-ð k-ð k-r#   