+
    LV-jN"  ã                   ó.  € R t ^ RIt^ RIHt . ROtR tR tR tR t	R t
R tR	 tR
 tR tR tR t ! R R]4      t]! 4       tR t ! R R]4      t]! 4       tR tR tR tR tR tR tR tR t ! R R]4      t]! 4       t ! R R]4      t ] ! 4       t!R# ) zHCollection of Model instances for use with the odrpack fitting package.
N)ÚModelc                 óª   € V ^ ,          V R,          r2VP                  VP                  ^ ,          ^34      pW!V,          P                  ^ R7      ,           # ©é    ºé   NN©Úaxis)ÚreshapeÚshapeÚsum)ÚBÚxÚaÚbs   &&  Úb/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/scipy/odr/_models.pyÚ_lin_fcnr   
   sC   € ØˆQ�4��2•€qØ	�	‰	�1—7‘7˜1•:˜q�/Ó"€Aà�!•�y‰y˜aˆyÓ Õ Ð ó    c                 ó  € \         P                  ! VP                  R,          \        4      p\         P                  ! W!P                  4       34      pVP                  V P                  R,          VP                  R,          34      # ©r   éÿÿÿÿ)ÚnpÚonesr   ÚfloatÚconcatenateÚravelr
   )r   r   r   Úress   &&  r   Ú_lin_fjbr      sT   € Ü
�Š�—‘˜•œUÓ#€AÜ
�.Š.˜!ŸW™W›Y˜Ó
(€CØ�;‰;˜Ÿ™ � Q§W¡W¨R¥[Ð1Ó2Ð2r   c                 óÎ   € V R ,          p\         P                  ! W!P                  R,          3VP                  R,          ,          ^ R7      pVP                  VP                  4      # )r   r   r   )r   Úrepeatr   r
   )r   r   r   s   && r   Ú_lin_fjdr       sE   € Ø	ˆ"�€AÜ
�	Š	�!—g‘g˜b•k�^ A§G¡G¨B¥KÕ/°aÔ8€AØ�9‰9�Q—W‘WÓÐr   c                 óÐ   € \        V P                  P                  4      ^8X  d   V P                  P                  ^ ,          pM^p\        P                  ! V^,           3\
        4      # ©é   )Úlenr   r   r   r   r   )ÚdataÚms   & r   Ú_lin_estr'      sF   € ô
 ˆ4�6‰6�<‰<Ó˜AÔØ�F‰F�L‰L˜�O‰àˆä�7Š7�A˜•E�8œUÓ#Ð#r   c                 óà   € V ^ ,          V R,          rCVP                  VP                  ^ ,          ^34      pV\        P                  ! V\        P                  ! W4      ,          ^ R7      ,           # r   ©r
   r   r   r   Úpower)r   r   Úpowersr   r   s   &&&  r   Ú	_poly_fcnr,   *   sO   € ØˆQ�4��2•€qØ	�	‰	�1—7‘7˜1•:˜q�/Ó"€AàŒr�vŠv�aœ"Ÿ(š( 1Ó-Õ-°AÔ6Õ6Ð6r   c                 ó,  € \         P                  ! \         P                  ! VP                  R,          \        4      \         P
                  ! W4      P                  34      pVP                  V P                  R,          VP                  R,          34      # r   )r   r   r   r   r   r*   Úflatr
   )r   r   r+   r   s   &&& r   Ú_poly_fjacbr/   1   s`   € Ü
�.Š.œ"Ÿ'š' !§'¡'¨"¥+¬uÓ5ÜŸ(š( 1Ó-×2Ñ2ð4ó 5€Cà�;‰;˜Ÿ™ � Q§W¡W¨R¥[Ð1Ó2Ð2r   c                 óà   € V R ,          pVP                  VP                  ^ ,          ^34      pW2,          p\        P                  ! V\        P                  ! W^,
          4      ,          ^ R7      # )r   r   r)   )r   r   r+   r   s   &&& r   Ú_poly_fjacdr1   7   sO   € Ø	ˆ"�€AØ	�	‰	�1—7‘7˜1•:˜q�/Ó"€Aà	�
€Aä�6Š6�!”b—h’h˜q¨¥(Ó+Õ+°!Ô4Ð4r   c                 óf   € V ^ ,          \         P                  ! V ^,          V,          4      ,           # ©r   ©r   Úexp©r   r   s   &&r   Ú_exp_fcnr7   @   ó"   € ØˆQ�4”"—&’&˜˜1� �Ó"Õ"Ð"r   c                 óf   € V ^,          \         P                  ! V ^,          V,          4      ,          # )r   r4   r6   s   &&r   Ú_exp_fjdr:   D   r8   r   c                 ó   € \         P                  ! \         P                  ! VP                  R,          \        4      V\         P
                  ! V ^,          V,          4      ,          34      pVP                  ^VP                  R,          34      # r   )r   r   r   r   r   r5   r
   )r   r   r   s   && r   Ú_exp_fjbr<   H   sZ   € Ü
�.Š.œ"Ÿ'š' !§'¡'¨"¥+¬uÓ5°q¼2¿6º6À!ÀAÅ$ÈÅ(Ó;KÕ7KÐLÓ
M€CØ�;‰;˜˜1Ÿ7™7 2�;Ð'Ó(Ð(r   c                 ó2   € \         P                  ! R R .4      # )ç      ð?)r   Úarray©r%   s   &r   Ú_exp_estrA   M   s   € ä�8Š8�R˜�HÓÐr   c                   ó6   a a€ ] tR t^Rt oRtV 3R ltRtVtV ;t# )Ú_MultilinearModela~  
Arbitrary-dimensional linear model

.. deprecated:: 1.17.0
    `scipy.odr` is deprecated and will be removed in SciPy 1.19.0. Please use
    `pypi.org/project/odrpack/ <https://pypi.org/project/odrpack/>`_
    instead.


This model is defined by :math:`y=\beta_0 + \sum_{i=1}^m \beta_i x_i`

Examples
--------
We can calculate orthogonal distance regression with an arbitrary
dimensional linear model:

>>> from scipy import odr
>>> import numpy as np
>>> x = np.linspace(0.0, 5.0)
>>> y = 10.0 + 5.0 * x
>>> data = odr.Data(x, y)
>>> odr_obj = odr.ODR(data, odr.multilinear)
>>> output = odr_obj.run()
>>> print(output.beta)
[10.  5.]

c                ó\   <€ \         SV `  \        \        \        \
        R RRRRR/R7       R# )ÚnamezArbitrary-dimensional LinearÚequz y = B_0 + Sum[i=1..m, B_i * x_i]ÚTeXequz&$y=\beta_0 + \sum_{i=1}^m \beta_i x_i$)ÚfjacbÚfjacdÚestimateÚmetaN)ÚsuperÚ__init__r   r   r    r'   ©ÚselfÚ	__class__s   &€r   rM   Ú_MultilinearModel.__init__o   s7   ø€ Ü‰ÑÜœH¬H¼xØÐ8ØÐ;ØÐEðGð 	ö 	Hr   © ©	Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__rM   Ú__static_attributes__Ú__classdictcell__Ú__classcell__©rP   Ú__classdict__s   @@r   rC   rC   R   s   ù‡ € ñ÷8Hõ Hr   rC   c                ór  € \         P                  ! V 4      pVP                  R	8X  d   \         P                  ! ^V^,           4      pVP	                  \        V4      ^34      p\        V4      ^,           pV3R lp\        \        \        \        W13RRRRV^,
          ,          RRV^,
          ,          /R7      # )
aæ  
Factory function for a general polynomial model.

.. deprecated:: 1.17.0
    `scipy.odr` is deprecated and will be removed in SciPy 1.19.0. Please use
    `pypi.org/project/odrpack/ <https://pypi.org/project/odrpack/>`_
    instead.

Parameters
----------
order : int or sequence
    If an integer, it becomes the order of the polynomial to fit. If
    a sequence of numbers, then these are the explicit powers in the
    polynomial.
    A constant term (power 0) is always included, so don't include 0.
    Thus, polynomial(n) is equivalent to polynomial(range(1, n+1)).

Returns
-------
polynomial : Model instance
    Model instance.

Examples
--------
We can fit an input data using orthogonal distance regression (ODR) with
a polynomial model:

>>> import numpy as np
>>> import matplotlib.pyplot as plt
>>> from scipy import odr
>>> x = np.linspace(0.0, 5.0)
>>> y = np.sin(x)
>>> poly_model = odr.polynomial(3)  # using third order polynomial model
>>> data = odr.Data(x, y)
>>> odr_obj = odr.ODR(data, poly_model)
>>> output = odr_obj.run()  # running ODR fitting
>>> poly = np.poly1d(output.beta[::-1])
>>> poly_y = poly(x)
>>> plt.plot(x, y, label="input data")
>>> plt.plot(x, poly_y, label="polynomial ODR")
>>> plt.legend()
>>> plt.show()

c                 ó:   € \         P                  ! V3\        4      # )N)r   r   r   )r%   Úlen_betas   &&r   Ú	_poly_estÚpolynomial.<locals>._poly_est°   s   € ä�wŠw˜�{¤EÓ*Ð*r   rE   zSorta-general PolynomialrF   z$y = B_0 + Sum[i=1..%s, B_i * (x**i)]rG   z)$y=\beta_0 + \sum_{i=1}^{%s} \beta_i x^i$)rI   rH   rJ   Ú
extra_argsrK   rR   )
r   Úasarrayr   Úaranger
   r$   r   r,   r1   r/   )Úorderr+   r`   ra   s   &   r   Ú
polynomialrg   z   s¥   € ô\ �ZŠZ˜Ó€FØ‡|�|�rÔä—’˜1˜f q�jÓ)ˆà�^‰^œS ›[¨!Ð,Ó-€FÜ�6‹{˜Q�€Hà!)ô +ô ”¤+´[Ø#°	ØÐ9ØÐ>À(È1Å*ÕMØÐGØ! !�õ%ð&ô'ð 'r   c                   ó6   a a€ ] tR t^¼t oRtV 3R ltRtVtV ;t# )Ú_ExponentialModela[  
Exponential model

.. deprecated:: 1.17.0
    `scipy.odr` is deprecated and will be removed in SciPy 1.19.0. Please use
    `pypi.org/project/odrpack/ <https://pypi.org/project/odrpack/>`_
    instead.

This model is defined by :math:`y=\beta_0 + e^{\beta_1 x}`

Examples
--------
We can calculate orthogonal distance regression with an exponential model:

>>> from scipy import odr
>>> import numpy as np
>>> x = np.linspace(0.0, 5.0)
>>> y = -10.0 + np.exp(0.5*x)
>>> data = odr.Data(x, y)
>>> odr_obj = odr.ODR(data, odr.exponential)
>>> output = odr_obj.run()
>>> print(output.beta)
[-10.    0.5]

c                ó\   <€ \         SV `  \        \        \        \
        R RRRRR/R7       R# )rE   ÚExponentialrF   zy= B_0 + exp(B_1 * x)rG   z$y=\beta_0 + e^{\beta_1 x}$©rI   rH   rJ   rK   N)rL   rM   r7   r:   r<   rA   rN   s   &€r   rM   Ú_ExponentialModel.__init__×   s6   ø€ Ü‰Ñœ¬¼Ü"*Ø% }Ø$Ð&=Ø'Ð)GðIð 	ö 	Jr   rR   rS   r\   s   @@r   ri   ri   ¼   ó   ù‡ € ñ÷4Jõ Jr   ri   c                 ó<   € W^ ,          ,          V ^,          ,           # r3   rR   r6   s   &&r   Ú_unilinrp   â   s   € Øˆq�T�6�A�a•D�=Ðr   c                 óh   € \         P                  ! VP                  \        4      V ^ ,          ,          # r3   )r   r   r   r   r6   s   &&r   Ú_unilin_fjdrr   æ   s    € Ü�7Š7�1—7‘7œEÓ" Q q¥TÕ)Ð)r   c                 ó¼   € \         P                  ! V\         P                  ! VP                  \        4      34      pVP                  RVP                  ,           4      # )r#   r"   ©r   r   r   r   r   r
   ©r   r   Ú_rets   && r   Ú_unilin_fjbrw   ê   s;   € Ü�>Š>˜1œbŸgšg a§g¡g¬uÓ5Ð6Ó7€DØ�<‰<˜˜qŸw™w�Ó'Ð'r   c                 ó   € R# )r>   )r>   r>   rR   r@   s   &r   Ú_unilin_estry   ï   s   € Ø€Or   c                 óf   € WV ^ ,          ,          V ^,          ,           ,          V ^,          ,           # r3   rR   r6   s   &&r   Ú
_quadraticr{   ó   s$   € Ø��!•�f�q˜•t�mÕ˜q �tÕ#Ð#r   c                 óL   € ^V,          V ^ ,          ,          V ^,          ,           # r"   rR   r6   s   &&r   Ú	_quad_fjdr}   ÷   s   € ØˆQ�3ˆq��t�8�a˜•d�?Ðr   c                 óÊ   € \         P                  ! W,          V\         P                  ! VP                  \        4      34      pVP                  RVP                  ,           4      # )é   )r   rt   ru   s   && r   Ú	_quad_fjbr€   û   s?   € Ü�>Š>˜1�3 ¤2§7¢7¨1¯7©7´EÓ#:Ð;Ó<€DØ�<‰<˜˜qŸw™w�Ó'Ð'r   c                 ó   € R# )r>   )r>   r>   r>   rR   r@   s   &r   Ú	_quad_estr‚      s   € ØÐr   c                   ó6   a a€ ] tR tRt oRtV 3R ltRtVtV ;t# )Ú_UnilinearModeli  aM  
Univariate linear model

.. deprecated:: 1.17.0
    `scipy.odr` is deprecated and will be removed in SciPy 1.19.0. Please use
    `pypi.org/project/odrpack/ <https://pypi.org/project/odrpack/>`_
    instead.

This model is defined by :math:`y = \beta_0 x + \beta_1`

Examples
--------
We can calculate orthogonal distance regression with an unilinear model:

>>> from scipy import odr
>>> import numpy as np
>>> x = np.linspace(0.0, 5.0)
>>> y = 1.0 * x + 2.0
>>> data = odr.Data(x, y)
>>> odr_obj = odr.ODR(data, odr.unilinear)
>>> output = odr_obj.run()
>>> print(output.beta)
[1. 2.]

c                ó\   <€ \         SV `  \        \        \        \
        R RRRRR/R7       R# )rE   zUnivariate LinearrF   zy = B_0 * x + B_1rG   z$y = \beta_0 x + \beta_1$rl   N)rL   rM   rp   rr   rw   ry   rN   s   &€r   rM   Ú_UnilinearModel.__init__  s7   ø€ Ü‰Ñœ¬¼;Ü"-Ø%Ð':Ø$Ð&9Ø'Ð)FðHð 	ö 	Ir   rR   rS   r\   s   @@r   r„   r„     s   ù‡ € ñ÷4Iõ Ir   r„   c                   ó6   a a€ ] tR tRt oRtV 3R ltRtVtV ;t# )Ú_QuadraticModeli*  ad  
Quadratic model

.. deprecated:: 1.17.0
    `scipy.odr` is deprecated and will be removed in SciPy 1.19.0. Please use
    `pypi.org/project/odrpack/ <https://pypi.org/project/odrpack/>`_
    instead.

This model is defined by :math:`y = \beta_0 x^2 + \beta_1 x + \beta_2`

Examples
--------
We can calculate orthogonal distance regression with a quadratic model:

>>> from scipy import odr
>>> import numpy as np
>>> x = np.linspace(0.0, 5.0)
>>> y = 1.0 * x ** 2 + 2.0 * x + 3.0
>>> data = odr.Data(x, y)
>>> odr_obj = odr.ODR(data, odr.quadratic)
>>> output = odr_obj.run()
>>> print(output.beta)
[1. 2. 3.]

c                ó\   <€ \         SV `  \        \        \        \
        R RRRRR/R7       R# )rE   Ú	QuadraticrF   zy = B_0*x**2 + B_1*x + B_2rG   z&$y = \beta_0 x^2 + \beta_1 x + \beta_2rl   N)rL   rM   r{   r}   r€   r‚   rN   s   &€r   rM   Ú_QuadraticModel.__init__E  s6   ø€ Ü‰ÑÜœi¬yÄ9Ø˜+ØÐ5ØÐGðIð 	ö 	Jr   rR   rS   r\   s   @@r   rˆ   rˆ   *  rn   r   rˆ   )r   ÚexponentialÚmultilinearÚ	unilinearÚ	quadraticrg   )"rX   Únumpyr   Úscipy.odr._odrpackr   Ú__all__r   r   r    r'   r,   r/   r1   r7   r:   r<   rA   rC   r�   rg   ri   rŒ   rp   rr   rw   ry   r{   r}   r€   r‚   r„   rŽ   rˆ   r�   rR   r   r   Ú<module>r“      sà   ðñã Ý $ò€ò!ò3òò
$ò7ò3ò5ò#ò#ò)ò
ô
"H˜ô "HñJ  Ó!€ò?'ôD J˜ô  JñF  Ó!€òò*ò(ò
ò$òò(ò
ô I�eô  IñF Ó€	ô J�eô  JñF Ó‚	r   