Ë
    0Ò^jŽ  ã                   ó>   — d dl Zd dlmZ d dlZd dlmZ d„ Zd„ Z	d„ Z
y)é    N)Úassert_allclose)Úminimizec                  ó  — d„ } dD ]�  }t        dd«      D ]p  }t        | ddd||dœ¬«      }|j                  t        j                  d	g«      «      j                  d	d	«      }|j                  j                  «       }t        ||«       Œr Œƒ y )
Nc                 ó   — | dz  d| dz  z  fS )Né   é   © )Úxs    ús/var/www/ramen.bs-engineer-server.com/venv/lib/python3.12/site-packages/scipy/optimize/tests/test_lbfgsb_hessinv.pyÚfztest_1.<locals>.f   s   € Ø�!‰t�Q�q˜!‘t‘Vˆ|Ðó    )g:Œ0âŽyE>gê-�™—q=g#B’¡œÇ;é   é#   TúL-BFGS-B)ÚgtolÚmaxcor)ÚfunÚjacÚmethodÚx0Úoptionsé   )Úranger   Úhess_invÚnpÚarrayÚreshapeÚtodenser   )r   r   r   ÚresultÚH1ÚH2s         r   Útest_1r"      sŠ   € òð %ò $ˆÜ˜B “mò 	$ˆFÜ !¨°jÀRØ!%°Ñ8ô:ˆFð —‘¤§¡¨1¨#£Ó/×7Ñ7¸¸!Ó<ˆBØ—‘×(Ñ(Ó*ˆBä˜B Õ#ñ	$ñ$r   c            	      ó‚  ‡— ddgddggŠˆfd„} t        | dddg¬	«      }t        | d
ddg¬	«      }|j                  j                  «       }t        j                  |j                  t        j
                  ddg«      «      |j                  t        j
                  ddg«      «      f«      }t        |j                  t        j
                  ddg«      j                  dd«      «      j                  d«      |j                  t        j
                  ddg«      «      «       t        ||«       t        ||j                  dd¬«       y )Nr   r   r   é   c                 ó’   •— t        j                  | t        j                  t        j                  j	                  ‰«      | «      «      S ©N©r   ÚdotÚscipyÚlinalgÚinv©r
   ÚH0s    €r   r   ztest_2.<locals>.f   ó.   ø€ Ü�v‰v�aœŸ™¤§¡× 0Ñ 0°Ó 4°aÓ8Ó9Ð9r   r   é
   r   ©r   r   r   ÚBFGSéÿÿÿÿg{®Gáz„?g¸…ëQ¸ž?)ÚrtolÚatol)r   r   r   r   Úvstackr   r   r   )r   Úresult1Úresult2r    r!   r-   s        @r   Útest_2r8      s  ø€ Øˆaˆ&�1�a�&Ð	€Bô:ô ˜1 Z°R¸°HÔ=€GÜ˜1 V°°R°Ô9€Gà	×	Ñ	×	!Ñ	!Ó	#€Bä	�‰Ø×ÑœŸ™ 1 a &Ó)Ó*Ø×ÑœŸ™ 1 a &Ó)Ó*ð,ó 
-€Bô Ø×ÑœŸ™ 1 a &Ó)×1Ñ1°!°AÓ6Ó7×?Ñ?ÀÓCØ×ÑœŸ™ 1 a &Ó)Ó*ô,ô �B˜ÔÜ�B˜×(Ñ(¨t¸$Ö?r   c                  ó®   ‡— d„ } ddgddggŠˆfd„}t        |ddd	g¬
«      }t        |j                  j                  «        | |j                  «      «       y )Nc                 ó¦  — | j                   | j                  | j                  | j                  f\  }}}}t	        j
                  | j                  d| j                  iŽ}|}t        |«      D ]ä  }|||   d d …t        j                  f   ||   t        j                  d d …f   z  ||   z  z
  }|||   d d …t        j                  f   ||   t        j                  d d …f   z  ||   z  z
  }	t	        j                  |t	        j                  ||	«      «      ||   ||   d d …t        j                  f   z  ||   t        j                  d d …f   z  z   }Œæ |S )NÚdtype)ÚskÚykÚn_corrsÚrhor   ÚeyeÚshaper;   r   Únewaxisr(   )
ÚselfÚsÚyr>   r?   ÚI_arrÚHkÚiÚA1ÚA2s
             r   Útodense_old_implz test_3.<locals>.todense_old_impl.   s/  € Ø!ŸW™W d§g¡g¨t¯|©|¸T¿X¹XÐEÑˆˆ1ˆg�sÜ—‘˜Ÿ
™
Ð5¨$¯*©*Ñ5ˆØˆä�w“ò 	MˆAØ˜˜1™ša¤§¡˜mÑ,¨q°©t´B·J±JÂ°MÑ/BÑBÀSÈÁVÑKÑKˆBØ˜˜1™ša¤§¡˜mÑ,¨q°©t´B·J±JÂ°MÑ/BÑBÀSÈÁVÑKÑKˆBä—‘˜œBŸF™F 2 r›NÓ+¨s°1©v¸¸!¹ºQÄÇ
Á
¸]Ñ8KÑ/KØ89¸!¹¼R¿Z¹ZÊ¸]Ñ8Kñ0Lñ M‰Bð		Mð ˆ	r   r   r   r   r$   c                 ó’   •— t        j                  | t        j                  t        j                  j	                  ‰«      | «      «      S r&   r'   r,   s    €r   r   ztest_3.<locals>.f=   r.   r   r   r/   r   r0   )r   r   r   r   )rK   r   r6   r-   s      @r   Útest_3rM   ,   sZ   ø€ òð ˆaˆ&�1�a�&Ð	€Bô:ô ˜1 Z°R¸°HÔ=€GÜ�G×$Ñ$×,Ñ,Ó.Ñ0@À×AQÑAQÓ0RÕSr   )Únumpyr   Únumpy.testingr   Úscipy.linalgr)   Úscipy.optimizer   r"   r8   rM   r	   r   r   ú<module>rR      s"   ðÛ Ý )Û Ý #ò$ò@ó,Tr   