+
    /iW                         ^ RI t ^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RIHtH	t	H
t
 ^ RIt^ RIHt ^ RIHtHtHtHtHtHtHtHtHtHtHtHt  ! R R4      tR# )    N)pi)assert_array_almost_equalassert_equalassert_allclose)raises)DataModelODRRealDataOdrStop
OdrWarningOdrErrormultilinearexponential	unilinear	quadratic
polynomialc                   &  a  ] tR t^t o R tR tR tR tR tR t	R t
R tR	 tR
 tR tR tR tR tR tR tR tR tR tR tR tR tR tR t]P:                  P=                  RRR7      R 4       tR t R t!R t"R  t#R! t$R" t%R# t&R$ t'R%t(V t)R&# )'TestODRc                ^    \        \        \        ^^4       \        \        \        ^^4       R# )   N)assert_raises
ValueErrorr   r   )selfs   &V/var/www/html/photoedit/myenv/lib/python3.14/site-packages/scipy/odr/tests/test_odr.pytest_bad_dataTestODR.test_bad_data   s    j$1-j(Aq1    c                >    V^ ,          V,          V^,          ,           # r    r   Bxs   &&&r   empty_data_funcTestODR.empty_data_func   s    tAv!}r   c                   R R.p\        V P                  4      p\        . . 4      p\        P                  ! \
        4      ;_uu_ 4        \        W2VR7       RRR4       \        . . 4      p\        P                  ! \
        4      ;_uu_ 4        \        W2VR7       RRR4       R#   + '       g   i     LV; i  + '       g   i     R# ; i){Gz?        beta0N)r	   r%   r   pytestwarnsr   r
   r   )r   r+   linear	empty_dats   &   r   test_empty_dataTestODR.test_empty_data   s    st++,RL	\\*%%	/ & R$	\\*%%	/ &%	 &% &%%s   B$B7$B4	7C	c                    V^ ,          V^,          \         P                  ! \         P                  ! V^,          V,          4      R,
          ^4      ,          ,           pV# )r         ?)nppowerexp)r   r#   r$   rets   &&& r   explicit_fcnTestODR.explicit_fcn-   s>    dQqTBHHRVVAaDF^c%91===
r   c                    \         P                  ! V^,          V,          4      pV^,          R,          VR,
          ,          V^,          ,          V,          pV# r          @r3   )r4   r6   )r   r#   r$   eBxr7   s   &&&  r   explicit_fjdTestODR.explicit_fjd1   s@    ffQqT!VndSjCG$qt+c1
r   c                V   \         P                  ! V^,          V,          4      p\         P                  ! \         P                  ! VP                  R,          4      \         P
                  ! VR,
          ^4      V^,          R,          VR,
          ,          V,          V,          .4      pV# )r   r3   r<   )r4   r6   vstackonesshaper5   )r   r#   r$   r=   ress   &&&  r   explicit_fjbTestODR.explicit_fjb6   st    ffQqT!Vnii-#c'1-1c3s7+C/13 4 
r   c           
     <   \        V P                  V P                  V P                  \	        R RR7      R7      p\        . RO. R	O4      p\        W!. R
O. ROR7      pVP                  ^R7       VP                  ^ ^ ^ R7       VP                  4       p\        VP                  \        P                  ! . RO4      4       \        VP                  \        P                  ! . RO4      4       \        VP                  \        P                  ! . RO. RO. RO.4      4       R# )zSample Explicit ModelzODRPACK UG, pg. 39nameref)fjacbfjacdmetar+   ifixxderiv)inititerfinalN)r)   r)         @      @g      @      $@g      0@g      :@      >@g      A@g     @A@      Y@)g     ē@gfffff@g     @g     @g     @g33333@g     T@g     @gfffff@g33333@g     @g     @)     p@g      I皙)r   r      r]   r]   r]   r]   r]   r]   r]   r]   r   )g8@gLA[KgxQ})gֳ?g1X?gy?)ggC?NM=y7׿	J)r^   gq?]F f_)r_   r`   gO>)r	   r8   rF   r>   dictr   r
   set_job
set_iprintrunr   betar4   arraysd_betacov_beta)r   explicit_modexplicit_datexplicit_odrouts   &    r   test_explicitTestODR.test_explicit=   s    ####2.0	
 K./ <=R681%QQa8 !HHHH ) *	

 	"KKHHPQ	
 	"LLHH ***	+ ,	
r   c                   V^,          \         P                  ! V^ ,          V^ ,          ,
          ^4      ,          RV^,          ,          V^ ,          V^ ,          ,
          ,          V^,          V^,          ,
          ,          ,           V^,          \         P                  ! V^,          V^,          ,
          ^4      ,          ,           R,
          # r;   )r4   r5   r"   s   &&&r   implicit_fcnTestODR.implicit_fcnc   s    !RXXad1Q4i++AaD!A$qt)$ad1Q4i01!RXXad1Q4i++,.12 	3r   c                   \        V P                  ^\        RRR7      R7      p\        . R
O. RO.^4      p\	        W!. ROR7      pVP                  4       p\        VP                  \        P                  ! . RO4      4       \        VP                  \        P                  ! . RO4      4       \        VP                  \        P                  ! . RO. RO. RO. RO. RO.4      RRR7       R	# )r]   zSample Implicit ModelzODRPACK UG, pg. 49rI   )implicitrN   r*   gư>g>)rtolatolN)      ?g333333?g?g(\?g(\ @zG@gQ@rw   g{Gz @gףp=
?gq=
ףp??gQѿg(\g(\gffffffg      g
ףp=
gq=
ףp	gQ)gQg333333      gffffffgRQgzG
g      g      g      g(\gzGgHzG(\rz   gp=
ףg      gQg      g(\gq=
ףp)ry   g      g
ףp=
?r(   g{Gz?)g{ 3gzJrgJ/k?g&Z薞?gkj?)g?g29?g3"͇p?g[=f?gx#+l?)g:\ @8%??'M['%GRR?)r{   gdbb @gR	<?k)r|   r   g};yWzg?
WWm&W?)r}   r   r   gK}U?$_T)r~   r   r   r   ga?)r	   rp   ra   r   r
   rd   r   re   r4   rf   rg   r   rh   )r   implicit_modimplicit_datimplicit_odrrl   s   &    r   test_implicitTestODR.test_implicith   s    2.0
 6=>
 
 <02  !HHHH 8 9	

 	"KKHH 8 9	

 	LLHH *****+ , D#	
r   c           
        VR 8  P                  4       '       d   \        h\        V^,          ,          R,          p\        P                  ! V4      p\        P
                  ! V4      p\        P                  ! R\        ,          V,          \        P                  ! V^,          ) 4      ,          V^,          4      p\        P                  ! We,          RWd,          ,           4      pV^ ,          V^,          ,
          \        P                  ! \        P                  ! \        P                  ! RWd,          ,           ^4      \        P                  ! We,          ^4      ,           4      V^,          ) 4      ,          p\        P                  ! V^,          V\        P                  ! V^,          V,          4      ,          ,           V\        P
                  ! V^,          V,          4      ,          .4      p	V	# )r)   r<   r3   )anyr   r   r4   cossinr5   r6   arctan2sqrtrB   )
r   r#   r$   thetacthetasthetaomegaphirr7   s
   &&&       r   	multi_fcnTestODR.multi_fcn   s9   G==??M1Q4
Bq1.!5jj%,#*<>qTAaD[BHHRWWRXXcEL6H!-LXXelA&.' &(*+A$0 0ii1"&&1c"2 22266!A$s(++- .
r   c                   \        V P                  \        R RR7      R7      p\        P                  ! . RO4      p\        P                  ! . RO. RO.4      p\        V4      p\        P                  ! ^^V3\        R	7      p\        P                  ! V\        R	7      p\        P                  ! V\        R	7      pR
VR&   R;VR&   VR&   RVR&   \        V4       F  pW(,          R8  d   ^ Wh&   MHW(,          R8:  d   M:W(,          R8:  d   RWx&   M(W(,          R8:  d   RWx&   MW(,          R8:  d   RWx&   MRWx&   W(,          R8X  g   W(,          R8X  g   Ky  RVRRV3&   K  	  \        W#R\        P                  ! V^4      ,          VR7      p	\        W. ROWvR7      p
V
P                  ^^R7       V
P                  4       p\!        VP"                  \        P                  ! . R O4      4       \!        VP$                  \        P                  ! . R!O4      4       \!        VP&                  \        P                  ! . R"O. R#O. R$O. R%O. R&O.4      4       R# )'zSample Multi-Response ModelzODRPACK UG, pg. 56rI   rN   rZ        b@     @@     @     j@dtypeg|@NNNg    f@g      9@g     @g     @g     Ar)   g-C6?wdwe)r+   delta0rP   )rR   del_initN)rY   g      I@g     Q@rZ   r   g      i@g     r@g     @@g     @r   r[   g     @@g     p@g     @g     X@r   g     L@g     @g     L@g     j@g     @r   g    OA)gzG@g^I@gI+@gx&@g~jt@gS@gOn@gʡE@gNbX9@gMb@gRQ@gX9v@gw/
@gMb
@g%C	@g/$	@gFx@gZd;@gFx@g5^I@gNbX9@gMb@gOn@)g rh?gK7A`?gMb?gA`"?gh|?5?g r?gDl?g5^I?g-?灕Cl?gjt?r   gQ?g"~?g|?5^?gRQ?gQ?gCl?gB`"?gK?g/$?g/$?gn?)r   r   r   g     )r]   r   r   )r   r]   r   )r]   r]   r   )      @r<   rW   皙?rv   )g@gNUiw@gz @gR?gFu?)gfkl,?g 1w?gAS?g@L*?g?)g?#0z?_ n=m?-Mu?G:xgTÚ?)r   gaǇ
z?4<n?gjtܪVŊ?)r   r   gHAcO?K*rԬa/??)r   r   r   gk{?y7)r   r   r   r   g
P/{7?)r	   r   ra   r4   rf   lenzerosfloatrC   intranger   r5   r
   rb   rd   r   re   rg   rh   )r   	multi_modmulti_xmulti_ynmulti_wemulti_ifixxmulti_deltai	multi_dat	multi_odrrl   s   &           r   
test_multiTestODR.test_multi   s   NN8.0
	 (( M N ((00	
  L88Q1IU3ggas+hhq.,33(5/ qAzE!!"u$v%!%w&!&x'!'!)zU"gjE&9"%1Q   d288GQ3G.G		4D3	A.mmo!HHHH 8 9	

 	"KKHH 8 9	

 	"LLHH 899:9	: 	;	
r   c                >    V^ ,          V^,          V,          ,           # r    r!   r"   s   &&&r   pearson_fcnTestODR.pearson_fcn   s    tad1f}r   c                   \         P                  ! . RO4      p\         P                  ! . RO4      p\         P                  ! . RO4      p\         P                  ! . RO4      p\        WW4R7      p\        W!WCR7      p\        V P                  \        RR7      R7      p\        WWRR.R7      p\        WgRR.R7      p	VP                  4       p
\        V
P                  \         P                  ! RR.4      4       \        V
P                  \         P                  ! RR	.4      4       \        V
P                  \         P                  ! R
R.RR..4      4       V	P                  4       p\        VP                  \         P                  ! RR.4      4       \        VP                  \         P                  ! RR.4      4       \        VP                  \         P                  ! RR.RR..4      4       R# )r)   r3   sxsyzUni-linear FitrJ   r   r*   g4ԉ.@grtA-?gc?g;޵?gk?gO&@g3
ٻl?gZ՗?gF)t?g!?N)
r)   rx   g?g@gffffff
@皙@g@gffffff@g      @g@)
g@g@r   gffffff@g      @g@ffffff@r   g333333@g      ?)
Q?r   {Gz?gQ?gQ?g)\(?gp=
ף?)\(?Gz?r3   )
r3   r   rv   gffffff?r   r   Q?r   皙?r   gv޿g=gj( g`=Lɿ)r4   rf   r   r	   r   ra   r
   rd   r   re   rg   rh   )r   p_xp_yp_sxp_syp_datpr_datp_modp_odrpr_odrrl   routs   &           r   test_pearsonTestODR.test_pearson   s   hh>?hh@AxxABxx>?d4 #t5d&&T7G-HIEB0V2b'2iik!HHHH(*=>?	
 	"KKHH(*<=>	
 	"LLHH)+>?#%679 :	
 zz|!IIHH)+>?@	
 	"LLHH(*<=>	
 	"MMHH)+>?#%78: ;	
r   c           	     D   V^ ,          V^,          ,          V^,          ,          \         P                  ! \         P                  ! W",          V^,          V^,          ,          ,
          R4      \         P                  ! V^,          V,          R4      ,           4      ,          # )r   r<   )r4   r   r5   )r   re   r$   s   &&&r   lorentzTestODR.lorentz)  sp    QQQ'"''"((13GDGO< 3"$&HHT!WQY$<3= +> > 	?r   c           	     *   \         P                  ! R .^,          4      p\         P                  ! . RO4      p\        . RO. R	OVVR7      p\        V P                  \        RR7      R7      p\        W4R
R7      pVP                  4       p\        VP                  \         P                  ! . RO4      4       \        VP                  \         P                  ! . RO4      4       \        VP                  \         P                  ! . RO. RO. RO.4      4       R# )g(\?r   zLorentz Peakr   r   r*   N)gdOO?gO?g&0G?gpt͘(G?g^"G?g eG?genBF?g8=?g-=?g`EE?g,!WsE?g01cE?g&-}Ԭ>g;vQ?gPmQ?gGus#T?gW UW?g>c?)gׁsF@g`TR'@gxN@gs@g3@gN#-@g	ϛ@gW[N@gp:@@g@gs,&6@g@g2c@gHIOG@g?@g;@gx&q@gҌEY@)i  g     t@i  i  g     |@i  g     "@g     @i  ib  g     @i  g     L@g     ,@i  g     @g     (z@g     8q@)r   r   gffffff@)gA5[Z@gO#?gF=@)g(1?gȕ6?gQ.q;0?)g\j?EGp` )r   g3<n>G!fc>)r   r   gq[cсE]>)r4   rf   r   r	   r   ra   r
   rd   r   re   rg   rh   )r   l_syl_sxl_datl_modl_odrrl   s   &      r   test_lorentzTestODR.test_lorentz-  s    xxb!xx N O
 0A
 dll>)BCE(89iik!HHHH ) *	

 	"KKHH ) *	

 	"LLHH ***	+ ,	
r   c                    R  pRR.p\         P                  ! ^ ^
4      pV! W#4      p\        V4      p\        W4RRR7      p\	        WeRR.R7      pVP                  4       p\        VP                  ^4       R# )c                 >    V ^ ,          V,          V ^,          ,           # r    r!   )cr$   s   &&r   r.   (TestODR.test_ticket_1253.<locals>.linearV  s    Q46!A$;r   r<         @r3   r   r*   N)r4   linspacer	   r   r
   rd   r   info)	r   r.   r   r$   ymodeldatajobresults	   &        r   test_ticket_1253TestODR.test_ticket_1253U  sk    	 #JKK21LfASS)$c3Z0V[[!$r   c                   . R
Op. ROp\         P                  ! \         P                  ! V\        R7      \         P                  ! V\        R7      34      p\        \         P                  ! W34      ^VR7      p\        R RR7      p\        WE\         P                  ! R.4      R7      pVP                  4       p\        WE\         P                  ! R.4      VR7      pVP                  4       p	\        VP                  V	P                  4       R	# )gGz @r   )r   fixc                 Z    VR,          V ^ ,          VR,          R,          ,          ,
          # )r]   r<   r]   r   r   r   r!   )re   r$   s   &&r   <lambda>$TestODR.test_ifixx.<locals>.<lambda>j  s    agQ!D'2+0E&Er   T)rs   r3   r*   rO   N)gGz gGzgMbPgRQ?gGz?)gףp=
@g)\(?gMbP?gV-?g
ףp=
@)r4   rB   
zeros_liker   	ones_liker   r	   r
   rf   rd   r   re   )
r   x1x2r   r   r   odr1sol1odr2sol2s
   &         r   
test_ifixxTestODR.test_ifixxe  s    /-iir5r||Bc7RSTBIIrh'1#6EPTU4bhhtn5xxz4bhhtnC@xxzTYY		*r   c                   \         P                  ! . RO4      p^
pRp\         P                  ! . RO. RO.4      pRp\         P                  ! . RO. RO.4      p\         P                  ! . RO4      pR pR p	R p
\         P                  ! ^^
V4      p\         P                  ! ^^
V4      p\         P                  ! W.4      pV! W4      pW,           pW,           p\        WV
R7      p\	        VVW5R7      p\        VVRV,          ^dR	7      pVP                  ^R
7       VP                  4       p\        VP                  ^4       \        VP                  V4       R# )r3   {Gz?g?c                 4   V ^ ,          V ^,          VR,          ,          ,           V ^,          VR,          ,          ,           pV ^,          V ^,          VR,          ,          ,           V ^,          VR,          ,          ,           p\         P                  ! W#34      # )r   r   r   )r4   rB   )re   r$   y0y1s   &&  r   func'TestODR.test_ticket_11800.<locals>.func  sm    a47QtW,,tAw4/@@Ba47QtW,,tAw4/@@B99bX&&r   c           	      b   \         P                  ! V4      ^,          p\         P                  ! V4      p\         P                  ! V4      p\         P                  ! WAR,          VR,          W3V.4      p\         P                  ! W3W4VR,          VR,          .4      p\         P
                  ! WV34      # )r]   r   r   )r4   rD   r   rC   rf   stack)re   r$   nr_measr   rC   dy0dy1s   &&     r   df_dbeta_odr/TestODR.test_ticket_11800.<locals>.df_dbeta_odr  s~    hhqk!nGHHW%E777#D((DD'1T7E%HIC((E%qw$HIC88SJ''r   c                 f   \         P                  ! V4      ^,          p\         P                  ! V4      p\         P                  ! V ^,          V,          V ^,          V,          .4      p\         P                  ! V ^,          V,          V ^,          V,          .4      p\         P                  ! WE34      # )r]   )r4   rD   rC   rf   r  )re   r$   r  rC   r  r  s   &&    r   	df_dx_odr,TestODR.test_ticket_11800.<locals>.df_dx_odr  sx    hhqk!nG777#D((DGdNDGdN;<C((DGdNDGdN;<C88SJ''r   )rL   rM   r   rx   )r+   maxitrQ   N)r3   gffffff@g?ry   g?rv   )
g	 'D?g"u?gsfZ?gt?g	Yqog?s?gJf?g>xF}gvIxg!͒&|)
ggÚрgz7X0ت`gN77?ga5|gLl	TZj?g^1;e?g<%gwg%.hgܾ#ń?)
g!Kr?gR#?g)BgH]N?gK?gNr}?gt%?g')vU~g^'2g?))
gÊ?giP?gލho?gʐ:l?gM*gD3g\`gg֓А?g3p~?ghϬ)g>@gk_gʖ6`@g<u+g|㉘S@g2dS)r4   rf   r   r	   r   r
   rb   rd   r   r   r   re   )r   	beta_truenr_measurements	std_dev_xx_error	std_dev_yy_errorbeta_solutionr  r  r  x0_truex1_truex_truey_truex_measy_measmodel_fr   odr_objodr_outs   &                    r   test_ticket_11800TestODR.test_ticket_11800s  sB   HH<=		(( XHI J
 	(( WKL M
  "E F	'	(	( ++a_5++a_57,-i(!! 	B9CdG3?#Fa ++- 	W\\1%!',,>r   c                    \         P                  ! R R4      pRRV,          ,           p\        W4      p\        V\        4      pVP                  4       p\        VP                  RR.4       R# )r)   rV   rX   N)r4   r   r   r
   r   rd   r   re   r   r$   r   r   r-  outputs   &     r   test_multilinear_modelTestODR.test_multilinear_model  sQ    KKS!37NAzdK(!&++c{;r   c                   \         P                  ! R R4      pR\         P                  ! RV,          4      ,           p\        W4      p\	        V\
        4      pVP                  4       p\        VP                  RR.4       R# )r)   rV   rv   Ng      $)	r4   r   r6   r   r
   r   rd   r   re   r2  s   &     r   test_exponential_modelTestODR.test_exponential_model  sZ    KKS!BFF3q5M!AzdK(!&++s|<r   c                :   \         P                  ! R R4      pRRV,          ,           RV^,          ,          ,           RV^,          ,          ,           p\        ^4      p\        W4      p\	        WC4      pVP                  4       p\        VP                  . RO4       R# )r)   rV   r3   r<   r   r   N)r3   r<   r   r   )r4   r   r   r   r
   rd   r   re   )r   r$   r   
poly_modelr   r-  r3  s   &      r   test_polynomial_modelTestODR.test_polynomial_model  so    KKS!#'MC!q&L(3a<7]
Azd'!&++/CDr   c                    \         P                  ! R R4      pRV,          R,           p\        W4      p\        V\        4      pVP                  4       p\        VP                  RR.4       R# r)   rV   r3   r<   N)r4   r   r   r
   r   rd   r   re   r2  s   &     r   test_unilinear_modelTestODR.test_unilinear_model  sQ    KKS!!GcMAzdI&!&++Sz:r   c                   \         P                  ! R R4      pRV^,          ,          RV,          ,           R,           p\        W4      p\        V\        4      pVP                  4       p\        VP                  . RO4       R# )r)   rV   r3   r<   r   N)r3   r<   r   )r4   r   r   r
   r   rd   r   re   r2  s   &     r   test_quadratic_modelTestODR.test_quadratic_model  s[    KKS!!q&L37"S(AzdI&!&++?r   c           	     "   R  p^p\         P                  ! V4      p\         P                  ! V^,          VR,           VR,
          4      p\         P                  ! VR4      p\         P                  ! VR4      p\	        V4      p\        W4WVR7      p\        WRR.R7      p	V	P                  ^ R7       V	P                  4       p
V
P                  R,          p\        V
P                  V
P                  W\        V
P                  4      ,            4       R# )c                 (    V w  r#W#V,          ,           # Nr!   )parr$   b0b1s   &&  r   r  #TestODR.test_work_ind.<locals>.func  s    FBQ;r   r   r   r   r*   )fit_typesdN)r4   arangewherefullr	   r   r
   rb   rd   work_indr   rg   workr   )r   r  n_datar$   r   x_erry_errlinear_model	real_datar-  rl   sd_inds   &           r   test_work_indTestODR.test_work_ind  s    	
 IIfHHQUAGQW-$$ T{Qe6	ic3Z@#kkmd#!#++"%((63s{{;K2K"L	Nr   TzJFortran I/O prone to crashing so better not to run this test, see gh-13127)reasonc           	     $   R p\        V4      p\        \        P                  ! ^
4      ^\        P                  ! ^
4      ,          4      p\        P
                  ! 4       p\        P                  P                  VR4      p\        P                  P                  VR4      p \        W2R^.VVR7      P                  4        \        W2R^.VVRR7      P                  4        \        P                  ! V4       R#   \        P                  ! T4       i ; i)	z
Verify fix for gh-1892
c                 >    V ^ ,          V ^,          V,          ,           # r    r!   br$   s   &&r   r  0TestODR.test_output_file_overwrite.<locals>.func      Q4!A$(?"r   z	error.datz
report.datr   )r+   errfilerptfileT)r+   ra  rb  	overwriteN)r	   r   r4   rM  tempfilemkdtempospathjoinr
   rd   shutilrmtree)r   r  pr   tmp_direrror_file_pathreport_file_paths   &      r   test_output_file_overwrite"TestODR.test_output_file_overwrite  s    	# $KBIIbM2		"#56""$'',,w<77<<>	#Ry/(**-#%Ry/(D::=#% MM'"FMM'"s    ?C7 7Dc                |    R  p\        V4      pVP                  RRR7       \        VP                  RRRR/4       R# )c                 >    V ^ ,          V ^,          V,          ,           # r    r!   r]  s   &&r   r  1TestODR.test_odr_model_default_meta.<locals>.func  r`  r   zSample Model MetaODRPACKrI   rJ   rK   N)r	   set_metar   rN   )r   r  rk  s   &  r   test_odr_model_default_meta#TestODR.test_odr_model_default_meta  s;    	# $K	

+
;QVVf&95)LMr   c           
        R p^p\         P                  ! V4      p\         P                  ! V^,          VR,           VR,
          4      p\         P                  ! VR4      p\         P                  ! VR4      p\	        V4      p\        W4WVR7      p\        W4VRR7      p	\        W4VR.R7      p
\        W4V\         P                  ! ^V3R4      R7      p\        W4VR..R7      p\        W4V\         P                  ! ^^V3R4      R7      pWWW3 FK  p\        WRR.\         P                  ! VR
4      R7      pVP                  ^ ^R7       VP                  4        KM  	  R	# )z1
Verify fix for gh-18739 where del_init=1 fails.
c                 >    V ^ ,          V ^,          V,          ,           # r    r!   r]  s   &&r   r  .TestODR.test_work_array_del_init.<locals>.func  r`  r   r   r   r  )r   covyr   )r+   r   )rK  r   Nr\   )	r4   rM  rN  rO  r	   r   r
   rb   rd   )r   r  rR  r$   r   rS  rT  rU  rd0rd1rd2rd3rd4rd5rdr-  s   &               r   test_work_array_del_init TestODR.test_work_array_del_init  s%   	# IIfHHQUAGQW-$$T{q0q#.q3%0q"''1f+s*CDqdVH5qBGGQ6ND,IJSs0B"3*!#!68GOOQO3KKM 1r   c                    \         P                  ! R R4      pRV,          R,           p\        W4      p\        P                  ! V4      p?\        P
                  ! V4       R# r>  )r4   r   r   pickledumpsloadsr   r$   r   r   
obj_pickles   &    r   test_pickling_dataTestODR.test_pickling_data8  sE    KKS!!GcMAz\\$'
Z r   c                    \         P                  ! R R4      pRV,          R,           p\        W4      p\        P                  ! V4      p?\        P
                  ! V4       R# r>  )r4   r   r   r  r  r  r  s   &    r   test_pickling_real_dataTestODR.test_pickling_real_dataA  sE    KKS!!GcM~\\$'
Z r   c                f    \         P                  ! \        4      p\         P                  ! V4       R # rF  )r  r  r   r  )r   r  s   & r   test_pickling_modelTestODR.test_pickling_modelJ  s    \\),
Z r   c                    \         P                  ! R R4      pRV,          R,           p\        \        W4      \        4      p\
        P                  ! V4      p?\
        P                  ! V4       R# r>  )r4   r   r
   r   r   r  r  r  )r   r$   r   r-  r  s   &    r   test_pickling_odrTestODR.test_pickling_odrN  sL    KKS!!GcMd1j),\\'*
Z r   c                    \         P                  ! R R4      pRV,          R,           p\        \        W4      \        4      P
                  p\        P                  ! V4      p?\        P                  ! V4       R# r>  )	r4   r   r
   r   r   rd   r  r  r  )r   r$   r   r3  r  s   &    r   test_pickling_outputTestODR.test_pickling_outputW  sR    KKS!!GcMT!Z+//\\&)
Z r   c                   \         P                  ! ^ ^
^
4      pRRV,          ,           p\        W4      p\        p\	        \
        4      ;_uu_ 4        \        W4^R7      pVP                  4        RRR4       R#   + '       g   i     R# ; i)z3
Verify fix for gh-23763 that ODR doesn't segfault
r<   r   )r   N)r4   r   r   r   r   r   r
   rd   )r   r$   r   r   r   odrs   &     r   %test_explicit_model_with_implicit_job-TestODR.test_explicit_model_with_implicit_job`  sb     KK2r"#'MAz 8$$dq)CGGI %$$$s   A99B
	r!   N)*__name__
__module____qualname____firstlineno__r   r%   r0   r8   r>   rF   rm   rp   r   r   r   r   r   r   r   r   r  r/  r4  r7  r;  r?  rB  rX  r,   markskipifro  rv  r  r  r  r  r  r  r  __static_attributes____classdictcell__)__classdict__s   @r   r   r      s     2

0
"
L3
.
dH
Z,
b?&
P% +F?P<=E;@N0 [[ &J K#K#*N:!!!!! r   r   )r  rd  ri  rf  numpyr4   r   numpy.testingr   r   r   r,   r   r   	scipy.odrr   r	   r
   r   r   r   r   r   r   r   r   r   r   r!   r   r   <module>r     sI       	  , ,  *. . . .
Z	 Z	r   