
    [h(                        S SK Jr  S SKrS SK7  \R
                  R                  r\R                  r\R                  r	\R                  r
\R                  r\R                  r\" / SQ/ SQ/ SQ/5      r/ SQr\" / SQ/ S	Q/ S
Q/ SQ/5      r/ SQr\" / SQ/ SQ/ SQ/ SQ/ SQ/5      r/ SQr\" / SQ/ SQ/ SQ/ SQ/ SQ/5      r/ SQr\" / SQ/ SQ/ SQ/5      r\" / SQ/ SQ/ SQ/5      r/ SQr\" S S!/S"S /S#S$//5      r/ S%Qr\" / S&Q/ S'Q/ S(Q/ S)Q/5      r/ S*Qr\" / S+Q/ S,Q/ S-Q/5      r/ S.Qr\" / S/Q/ S0Q/ S1Q/5      r/ S2Qr S3 r!S4 r"S5 r#S6 r$S7 r%S8 r&S9 r'S: r(S; r)S< r*\+" S=5      S> 5       r,S? r-S@ r.SA r/SB r0SC r1g)D    )divisionN)*)         )   r   r   )r   r   r   )r         )r   r   r   )r   r   r   )r   r   r   )r   r   r
   )r   r   r   r   )r   r   r   r   r   )r   r   r   r   r   )r
   r   r   r   )r   r   r   	   i)r      r   r      )r   r   r   r   2   )gQx$@g=
ףp=g        gQ롿gGz@)gNbX9gRQ?g(\@g(\B!gHzG?)gRQgQ?g rпgp=
ף"@gE)g)\#@g(\@g     @1g;On?g\(8@)gQ"g33333sA@gp=
ףS@gQ?g33333sP@)gfffff!@g
ףp=4@gGz@ffffff@gףp=
7M@)r   r   r   )r   r   r   )r   r   i)g	?gZB>@gr3܀o@)gsFZ*o@g#GGge,i9@)g}.AgR#@g(~Ƅ.)g     7@gQ/gQ@r   g      r   r   r   )r   r   r   )r   r   r   )r   r   r   )r   r   r   )r   r   r   )r   r   r   r
   )r
   r   r   )r   r   r   )r   r   g      @)
      g      /)      ?      ?       @r   )g      @g      @g      @)g      @g       @g      "@)      ?r   r   c                  $   [         R                  5       n [        n[        U 5      u  p[	        XU5      n[        X5      nU/ SQ:X  d   eU Vs/ s H  n[        US5      PM     sn/ SQ:X  d   e[        R                  5       n [        n[        U 5      u  p[	        XU5      n[        X5      nU/ SQ:X  d   eU Vs/ s H  n[        US5      PM     sn/ SQ:X  d   e[        S5      n U R                  5       n[        U SS9  X:w  d   eg s  snf s  snf )	N)r   r   r   r      )g-P@grhA@g(mUg^ \^v@g+6CV@)r   r   r
   r   )gw]@g_DP@gIϘ}X?gRxgE9r   r   )	overwrite)
A3copyb3	LU_decompL_solveU_solveroundA4b4
randmatrix)Abpyxibaks          P/var/www/auris/envauris/lib/python3.13/site-packages/mpmath/tests/test_linalg.pytest_LU_decompr/   H   s   
	A
AQ<DAaAA"#$!QE!RL!$ )K K K K
	A
AQ<DAaAA"#$!QE!RL!$ )K K K K1A
&&(Ca18O8 % %s   D:Dc                      [         [        [        4 H8  n [        U 5      n[	        X-  [        U R                  5      -
  S5      S:  a  M8   e   g )Nr   g+=)A1A2A5inversemnormeyerows)r'   invs     r.   test_inverser9   ^   s?    "b\ajQUS[(!,v555     c                  .   S[         l        [        [        p[	        [        X5      5      u  p#pEU[        [        S5      [        S5      [        S5      S/S[        S5      [        S5      [        S	5      /S[        S
5      [        S5      [        S5      /S[        S5      [        S5      [        S5      //5      :X  d   eUSS[        S5      /:X  d   e[        [        US5      S5      S:X  d   e/ SQnS n/ n/ n	[        SS5       Hx  n
U" U
5      n [	        [        X5      5      u  p#pE[        U5      n[        U5      nUR                  [        US5      5        U	R                  [        [        XU5      S5      5        Mz     U Vs/ s H  n[        US5      PM     sn/ SQ:X  d   e[        [        U5      [        U	5      -
  [        5      S:  d   eS n/ n/ n[        SS5       H}  n
U" U
5      n [	        U R                  5       5      u  p#pEUR                  [        US5      5        UR                  [        [        U S S 2S U
S-
  24   X@S S 2U
S-
  4   5      S5      5        M     [        [        U5      [        U5      -
  [        5      S:  d   eg s  snf )N   z3.0z-2.0z-1.0r   g      z3.333333333333333z-2.9999999999999991z2.0z-0.66666666666666674z2.8142135623730948z-2.8284271247461898r   z-1.3333333333333333z-0.20000000000000018z4.2426406871192857r   z-1.4142135623730949r   r   gv@)gJ+Y@gy&1,M@g%C;B@g(\O8@g1Z1@gn(@gMb"@g(\@gq=
ףp@gʡE@gy&1,@g/$@c           	          / n[        SS5       H:  nUR                  [        SU S-   5       Vs/ s H  nSX#-   S-
  -  PM     sn5        M<     [        U5      $ s  snf )Nr      r   )rangeappendmatrix)nr'   r,   js       r.   coefftest_householder.<locals>.coefft   sW    q"AHHaQ@1bAEAI&@A ay As   A
r	   )gRmX.@g8hi\?g5Żڌ^?g?g A8C?vIh%<=c                     [        SU -  U 5      n[        SU -  SSSS9nUR                  S 5      n[        US S 2S4   5      U-  [        US U 2S4   5      -  nU$ )Nr   r   r   minmaxc                 4    [        S[        5       -  U -  5      $ )Ny              ?)exppir+   s    r.   <lambda>9test_householder.<locals>.hilbert_cmplx.<locals>.<lambda>   s    c"RT'!)nr:   r   )hilbertr&   applydiag)rB   r'   vs      r.   hilbert_cmplx'test_householder.<locals>.hilbert_cmplx   sc    AaCNqsA21-GG,-1Q3LN4"1"Q$=(r:   r   )mpdpsA8b8householderextendrA   mpfr#   normr?   r@   residualinfr   )r'   r(   Hr)   r+   rr*   rD   	residualsrefresrB   resrU   residuals_cmplxrefres_cmplxs                  r.   test_householderrh   c   s{   BFrqVA\*JA!	%j#f+s6{A.
3"#C(=$>s5zJ
C&',@(A	
 "	3$%c*@&A	
!	"# # # # R234444aR $6666	A IF1a[!H .
a1I1Ia$d8A!,a01  '00isE#rNi0 5# # # # y!F6N2C86AAA OL1b\! *
atAqz*D!AdqsdF)Q!AaC%!A1EF	 
 '&*>>DvMMM) 1s   Jc                  h    [        S5      n [        U 5      u  pn[        X-  X#-  -
  S5      S:  d   eg )Nr   r   gV瞯<)r&   lur5   )r'   PLUs       r.   test_factorizationrn      s5    1AeGA!qsA'''r:   c            	         [        [        [        [        [        [        5      [        5      [
        5      S:  d   e[        [        [        [        [        [        5      [        5      [
        5      S:  d   e[        [        [        [        [        [        5      [        5      [
        5      S::  d   e[        [        [        [        [        [        5      S   [        5      [
        5      S:  d   e[        [        [        [        [        [        5      S   [        5      [
        5      S:  d   e[        [        [        [        [        [        5      S   [        5      S5      S::  d   e[        [        [        [        [        [        5      [        5      S5      S:  d   e[        [        [        [        [        [        5      S   [        5      S5      S:  d   eg )Ng|=      ?go   @r   r   g333333@)r^   r_   A6lu_solveb6r`   A7b7rY   rZ   qr_solveA10b10 r:   r.   
test_solverz      s>   Xb"-r2C86AAAXb"-r2C83>>>Xb"-r2C8JFFFXb"-a0"5s;fDDDXb"-a0"5s;cAAAXb"-a0"5q9S@@@hsC0#6:VCCChsC03S91=FFFr:   c            	          [        SS/SS/SS//5      n [        S[        -   S[        * /5      n[        [        U [	        X5      U5      5      S:  d   eg )	Nr   y               @r   y              @r   r   r   g|a2U?)rA   rC   r^   r_   rr   )r'   r(   s     r.   test_solve_overdet_complexr|      sU    B!R1a&)*AAq1"~AHQNA./&888r:   c                    ^ S[         l        SS/SS//n [        [        S5      5      nSS/nSU < S	U< S
3SU< S	U< S
3SU < S	U< S
3SU< S	U< S
34 H(  m[        R
                  " [        [        4U4S j5        M*     g )Nr<   r   g333333?g?g?r   r   z	lu_solve(z, )z	qr_solve(c                     > [        T 5      $ N)eval)r,   s   r.   rO   test_singular.<locals>.<lambda>   s	    tAwr:   )rW   rX   reprzerospytestraisesZeroDivisionError
ValueError)r'   Br(   r,   s      @r.   test_singularr      sr    BF
seR[!AU1XA	
AA$%q)A+F$%q)A+FH(*5GHr:   c                  j   [         R                  [         R                  [        5      5      [         R                  / SQ/ SQ/ SQ/5      :X  d   e[         R	                  [        [
        5      n [         R                  [         R                  [        U [
        5      [         R                  5      S:X  d   eg )N)r   r   r   )r   r   r   )r   g      rp   r   )	fpcholeskyrA   A9cholesky_solveb9r^   r_   r`   rN   s    r.   test_choleskyr      sm    ;;ryy}%Iy/3Z)[[[[
"b!A772;;r1b)2662a777r:   c                  ~   [        [        5      S:X  d   e[        [        [        5      S5      S:X  d   e[        [        [        5      5      S:X  d   e[        [        [
        5      5      S:X  d   e[        [        5      S:X  d   e[        [        [        5      5      S:X  d   e[        [        S5      5      S:X  d   eg )	Nr   r      i*  iC ir   r   )	detr1   r#   r2   r   r$   r3   rq   r   ry   r:   r.   test_detr      s    r7a<<R""""R>T!!!R>W$$$r7a<<R>X%%%uQx=Ar:   c                      S[         l        [        SS/SS//5      n [        U S 5      [	        S5      :X  d   e[        U S 5      [	        S5      :X  d   e[        U S	 5      [	        S
5      :X  d   eg )Nr<   g6?gꕲq?ga2U0*?gBiq?c                     [        U S5      $ )Nr   r5   rN   s    r.   rO   test_cond.<locals>.<lambda>   s
    U1QZr:   z327065209.73817754c                 "    [        U [        5      $ r   )r5   r`   rN   s    r.   rO   r      s
    U1S\r:   c                     [        U S5      $ )NFr   rN   s    r.   rO   r      s
    U1S\r:   z249729266.80008656)rW   rX   rA   condr]   r'   s    r.   	test_condr      sv    BF 66"234A'(C0D,EEEE)*c2F.GGGG)*c2F.GGGGr:   r   c                  j    [        SS5      n [        [        [        U 5      5      U -
  S5      S:  d   eg )Nr   r   gj7֖6)r&   r5   r4   r   s    r.   test_precisionr      s1    2rA$q(!,v555r:   c                     S[         l        S[        l        [        R                  / SQ/ SQ/ SQ/5      n [        R                  / SQ5      n[        R	                  X5      nUS   R
                  S:  d   eUS   R
                  S:  d   eUS	   R
                  S:  d   eS
US   ;   d   eSUS   ;   d   eSUS	   ;   d   eg )Nr<   )z0.1z0.3z1.0)z7.1z5.5z4.8)z3.2z4.4z5.6)4z0.6z0.5r   rF   r   r   giE'n@gFxlbO*g'ɮ@)rW   rX   ivrA   rr   delta)ar(   cs      r.   test_interval_matrixr      s    BFBF
		&':;NOPA
		#$A
AAQ4::Q4::Q4::$!,,,$!,,,$!,,,r:   c                      [        S5      n [        U 5      nU R                  [        U 5      :X  d   eSU S'   U R                  b   eg )Nr   )r   r   )r&   r    _LU)r'   LUs     r.   test_LU_cacher      sA    1A	1B55IaL   AcF55==r:   c                      [        SSSS9n [        SSSSS9n[        X5      [        SSSS	S9-   n[        XU5      n[        [	        XU5      S
5      [        [	        XU5      S
5      :  d   eg )Nr   g#B;g@xDrH   r   r   i  gh㈵gh㈵>r   )r&   rr   improve_solutionr^   r_   )r'   r(   x1x2s       r.   test_improve_solutionr      so    1%T*A1aU-A	!*Qu%@	@B	!	#B"A&hqa.@!)DDDDr:   c            	      @   [        S5       H  n SnSnX-   [        l        SnSn[        SUS-   5      n[        U5      n[        U Vs/ s H  n[	        U5      PM     sn5      n[        U5      S:  a'  [        U5      n	[        U	5      n[        U5      S:  a  M'  W	U-  n	U	S-  U-  U	-  n
U	S-  U-  U	-  nU[        l        [        U
SS9nX-   [        l        X-
  nU[        l        [        U[        5      R                  S5      (       a  M   e   S[        l        g s  snf )	Nr   r<   r   r   g{Gz?r   pade)method)r?   rW   rX   rS   rL   absr&   r   expmr^   r`   ae)r,   rX   extradmNdgr   r+   expama1e2e1ds                 r.   test_exp_pader      s   1X1QqS\HR(RSVR() "gn1AQB "gn bDUQY]UT\A"V$GAs|q!!!!1 2 BF# )s   D
c            	         S[         l        Sn SnSnSn[        S5      n[        SS5       GHW  nSnS	n[	        US
-  5      n[        U[        5       -  5      n[        U[        5       -  5      n	[        [        X5      5      n
[        [        X5      5      n[         R                  X5      nU(       aq  SnSn[        SU5       H\  n[        SU
5       HI  n[        XU -
  [        5       -  -   5      n[        XU -
  [        5       -  -   5      n[        UU5      XU4'   MK     M^     OTSnSn[        SU5       H@  n[        SU
5       H-  n[        XU -
  [        5       -  -   5      n[        U5      XU4'   M/     MB     [        XUS9u  nn[        S5      n[        UUU-  -
  5      nUU::  d   eUS:X  aX  [        [        U
5      UR                  U-  -
  5      nUU::  d   e[        [        U
5      UUR                  -  -
  5      nUU::  d   eUS:X  d  GM  [        [        U
5      UR                  UR!                  5       -  -
  5      nUU::  d   e[        [        U
5      UR!                  5       UR                  -  -
  5      nUU::  a  GMX   e   g )Nr<   ir   r
   Fz0.0r   r   fullr   complexTreal)edpsz1.0E-11)rW   rX   r]   xrangeboolnintrandintrJ   rI   rA   mpcqrr^   r6   T	conjugate)lowlimituplimitmaxmflgzerokexdpsmodenum1num2r   rB   r'   dtyperC   r,   valval2QRmaxnormn1s                         r.   test_qrr     sT   BFHGD
Cu:DAb\1q5k DK DK D D  IIaN CEAa[!Ax8+;TV*CCDCH,<df+D DED d^AcF % ! CEAa[!Ax8+;TV*CCDC XAcF % ! !%(1 i.!a!e)_W}}F?c!fqssQw&'B= =c!fq133w&'B= =Ic!fqssQ[[]223B= =c!fq{{}qss223B= =y r:   )2
__future__r   r   mpmathlibmpbackendr   rW   r    r!   r"   r[   r   rA   r1   b1r2   b2r   r   r$   r%   r3   rq   rs   rt   ru   rY   rZ   r   r   rw   rx   r/   r9   rh   rn   rz   r|   r   r   r   r   extradpsr   r   r   r   r   r   ry   r:   r.   <module>r      s      			 LL	
**
**nn&& Y     !!!!!	# $
 33333	5 6
 &\  //9; < 'aYV!W  Y  \  $  ,6
5Nn(
G9
H8
H 
"6 6-E8D!r:   