Ë
    âQ(h#  ã                   ó>   — d dl mZmZmZmZmZmZ d dlmZ dgZ	dd„Z
y)é    )ÚzerosÚasarrayÚeyeÚpoly1dÚhstackÚr_)ÚlinalgÚpadeNc                 ó¨  — t        | «      } |€!t        | «      dz
  |z
  }|dk  rt        d«      ‚|dk  rt        d«      ‚||z   }|t        | «      dz
  kD  rt        d«      ‚| d|dz    } t        |dz   |dz   | j                  ¬«      }t        |dz   |f| j                  ¬«      }t        d|dz   «      D ]  }| d| ddd…    ||d|…f<   Œ t        |dz   |dz   «      D ]  }| ||z
  | ddd…    ||dd…f<   Œ t        ||f«      }t        j                  || «      }|d|dz    }	t        d	||dz   d f   }
t        |	ddd…   «      t        |
ddd…   «      fS )
a©  
    Return Pade approximation to a polynomial as the ratio of two polynomials.

    Parameters
    ----------
    an : (N,) array_like
        Taylor series coefficients.
    m : int
        The order of the returned approximating polynomial `q`.
    n : int, optional
        The order of the returned approximating polynomial `p`. By default,
        the order is ``len(an)-1-m``.

    Returns
    -------
    p, q : Polynomial class
        The Pade approximation of the polynomial defined by `an` is
        ``p(x)/q(x)``.

    Examples
    --------
    >>> import numpy as np
    >>> from scipy.interpolate import pade
    >>> e_exp = [1.0, 1.0, 1.0/2.0, 1.0/6.0, 1.0/24.0, 1.0/120.0]
    >>> p, q = pade(e_exp, 2)

    >>> e_exp.reverse()
    >>> e_poly = np.poly1d(e_exp)

    Compare ``e_poly(x)`` and the Pade approximation ``p(x)/q(x)``

    >>> e_poly(1)
    2.7166666666666668

    >>> p(1)/q(1)
    2.7179487179487181

    Né   r   z.Order of q <m> must be smaller than len(an)-1.z&Order of p <n> must be greater than 0.z0Order of q+p <m+n> must be smaller than len(an).)Údtypeéÿÿÿÿg      ð?)r   ÚlenÚ
ValueErrorr   r   r   Úranger   r	   Úsolver   r   )ÚanÚmÚnÚNÚAkjÚBkjÚrowÚCÚpqÚpÚqs              úU/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/scipy/interpolate/_pade.pyr
   r
      s“  € ôN 
�‹€BØ€yÜ�‹G�a‰K˜!‰OˆØˆqŠ5ÜÐMÓNÐNØˆ1‚uÜÐAÓBÐBØ	ˆA‰€AØŒ3ˆr‹7�1‰9‚}ÜÐKÓLÐLØ	ˆDˆQˆq‰Sˆ€BÜ
ˆa�‰c�1�Q‘3˜bŸh™hÔ
'€CÜ
��1‘�a� §¡Ô
)€CÜ�Q˜˜!™‹}ò *ˆØ˜T˜c˜(¡D b DÑ)Ð)ˆˆC���ˆHŠð*ä�Q�q‘S˜!˜A™#‹ò ,ˆØ˜#˜a™% �}¡d¨ dÑ+Ð+ˆˆC’ˆEŠ
ð,ä��SˆzÓ€AÜ	�‰�a˜Ó	€BØ
ˆ4ˆAˆa‰Cˆ€AÜ
ˆ3��1�Q‘3�4�ˆ=Ñ€AÜ�!‘D�b�D‘'‹?œF 1¡T r T¡7›OÐ+Ð+ó    )N)Únumpyr   r   r   r   r   r   Úscipyr	   Ú__all__r
   © r   r   ú<module>r$      s   ðß 9× 9Ý àˆ(€ô<,r   