ó
9­\c           @   sË  d  d l  m Z m Z m Z m Z m Z m Z m Z m Z m	 Z	 m
 Z
 m Z m Z m Z m Z m Z m Z m Z m Z m Z m Z m Z m Z m Z m Z m Z m Z m Z m Z m Z m Z m Z m  Z  m! Z! m" Z" m# Z# m$ Z$ m% Z% m& Z& m' Z' d  d l( m) Z) m* Z* m+ Z+ m, Z, m- Z- m. Z. m/ Z/ m0 Z0 m1 Z1 m2 Z2 m3 Z3 m Z m4 Z4 d  d l5 m6 Z6 d  d l7 m8 Z8 m9 Z9 m: Z: m; Z; m< Z< e" d ƒ \ Z= Z> Z? Z@ ZA ZB ZC ZD ZE ZF ZG e" d d eH ƒ\ ZI ZJ ZK ZL e d ƒ ZM e d	 ƒ ZN e d
 ƒ ZO d „  ZP d „  ZQ d „  ZR d „  ZS d „  ZT d „  ZU d „  ZV d „  ZW d „  ZX e; d „  ƒ ZY d „  ZZ d „  Z[ e8 d „  ƒ Z\ d „  Z] d „  Z^ e; d „  ƒ Z_ e; d „  ƒ Z` e; d „  ƒ Za d „  Zb d „  Zc d „  Zd d  „  Ze d! „  Zf d" „  Zg d# „  Zh d$ „  Zi d% „  Zj e; d& „  ƒ Zk e; e8 d' „  ƒ ƒ Zl d( „  Zm e; d) „  ƒ Zn d* „  Zo d+ „  Zp d, „  Zq d- „  Zr d. „  Zs e; d/ „  ƒ Zt d0 „  Zu e8 d1 „  ƒ Zv d2 „  Zw d3 „  Zx d4 „  Zy d5 „  Zz d6 „  Z{ e; d7 „  ƒ Z| d8 „  Z} d9 „  Z~ e8 e; d: „  ƒ ƒ Z e8 d; „  ƒ Z€ e8 d< „  ƒ Z d= „  Z‚ e; d> „  ƒ Zƒ d? „  Z„ e8 d@ „  ƒ Z… e; dA „  ƒ Z† e; dB „  ƒ Z‡ dC „  Zˆ dD „  Z‰ dE „  ZŠ dF „  Z‹ dG „  ZŒ dH „  Z dI „  ZŽ dJ „  Z dK „  Z dL „  Z‘ dM „  Z’ dN „  Z“ dO „  Z” e; dP „  ƒ Z• dQ „  Z– dR „  Z— dS „  Z˜ dT „  Z™ dU „  Zš dV „  Z› dW „  Zœ dX „  Z dY „  Zž e; dZ „  ƒ ZŸ d[ „  Z  d\ „  Z¡ d] „  Z¢ d^ „  Z£ d_ „  Z¤ e8 d` „  ƒ Z¥ da „  Z¦ e; db „  ƒ Z§ e8 dc „  ƒ Z¨ dd „  Z© de „  Zª e; df „  ƒ Z« dg „  Z¬ dh „  Z­ di „  Z® dj „  Z¯ dk „  Z° dl „  Z± dm „  Z² dn „  Z³ do „  Z´ e; dp „  ƒ Zµ dq „  Z¶ dr „  Z· ds „  Z¸ dt „  Z¹ du „  Zº e8 dv „  ƒ Z» dw „  Z¼ e8 dx „  ƒ Z½ dy „  Z¾ e8 dz „  ƒ Z¿ e8 d{ „  ƒ ZÀ e8 d| „  ƒ ZÁ d} „  ZÂ d~ „  ZÃ d S(€   iÿÿÿÿ('   t   acost   acosht   asinht   atant   cost
   Derivativet   difft   dsolvet   Dummyt   Eqt   Net   erft   erfit   expt   Functiont   It   Integralt   LambertWt   logt   Ot   pit   Rationalt   rootoft   St   simplifyt   sint   sqrtt   Subst   Symbolt   tant   asint   sinht	   Piecewiset   symbolst   Polyt   sect   Eit   ret   im(   t    _undetermined_coefficients_matcht   checkodesolt   classify_odet   classify_sysodet   constant_renumbert   constantsimpt   homogeneous_ordert   infinitesimalst   checkinfsolt   checksysodesolt	   solve_icsR   t   get_numbered_constants(   t	   ode_order(   t   XFAILt   skipt   raisest   slowt	   ON_TRAVISs   C0:11s   u,x:zt   realt   ft   gt   hc          C   s!  t  d d t ƒ\ }  } } t  d d t ƒ\ } } } } t d ƒ } t  d d t ƒ\ } }	 t t |  | ƒ | ƒ d | | ƒ ƒ t t | | ƒ | ƒ d |  | ƒ ƒ f }
 t |  | ƒ d t t d	 t d
 ƒ | ƒ d t	 t d t d
 ƒ | ƒ ƒ t | | ƒ d	 t d
 ƒ t t d	 t d
 ƒ | ƒ d	 t d
 ƒ t	 t d t d
 ƒ | ƒ ƒ g } t
 |
 | ƒ t d d g f k sŠt ‚ t t |  | ƒ | ƒ d |  | ƒ d | | ƒ ƒ t t | | ƒ | ƒ d |  | ƒ d | | ƒ ƒ f } t |  | ƒ d t t | t d ƒ d t d ƒ d ƒ d t	 t | t d ƒ d t d ƒ d ƒ ƒ t | | ƒ t t d ƒ d t d ƒ d t | t d ƒ d t d ƒ d ƒ t	 t d ƒ d t d ƒ d t | t d ƒ d t d ƒ d ƒ ƒ g } t
 | | ƒ t d d g f k s*t ‚ t t |  | ƒ | ƒ |  | ƒ | | ƒ ƒ t t | | ƒ | ƒ d |  | ƒ d | | ƒ ƒ f } t |  | ƒ t t t d ƒ | d ƒ t	 t t d ƒ | d ƒ t d
 | d ƒ ƒ t | | ƒ t t d ƒ t t d ƒ | d ƒ d t t d ƒ | d ƒ d t	 t t d ƒ | d ƒ d t d ƒ t t d ƒ | d ƒ d t d
 | d ƒ ƒ g } t
 | | ƒ t d d g f k sÀt ‚ t t |  | ƒ | ƒ |  | ƒ | | ƒ d ƒ t t | | ƒ | ƒ d |  | ƒ d | | ƒ d ƒ f } t |  | ƒ t t | t d	 ƒ d
 ƒ t	 t | t d	 ƒ d
 ƒ t d ƒ d
 ƒ t | | ƒ t d t d	 ƒ t | t d	 ƒ d
 ƒ t	 t d	 ƒ d t | t d	 ƒ d
 ƒ t d ƒ d
 ƒ g } t
 | | ƒ t d d g f k s t ‚ t t |  | ƒ | ƒ |  | ƒ | | ƒ d ƒ t t | | ƒ | ƒ d |  | ƒ | | ƒ d ƒ f } t |  | ƒ t t t d ƒ | ƒ t	 t t d ƒ | ƒ t | ƒ t d ƒ d
 ƒ t | | ƒ t d ƒ t t t d ƒ | ƒ t d ƒ t	 t t d ƒ | ƒ t | ƒ t d ƒ d
 ƒ g } t
 | | ƒ t d d g f k svt ‚ t t |  | ƒ | ƒ d | |  | ƒ d | | ƒ ƒ t t | | ƒ | ƒ d |  | ƒ d | | | ƒ ƒ f } t |  | ƒ t t d | ƒ t	 t d | ƒ t t d ƒ d | d ƒ ƒ t | | ƒ t t d | ƒ t	 t d | ƒ t t d ƒ d | d ƒ ƒ g } t | ƒ } t
 | | ƒ t d d g f k s¿t ‚ t t |  | ƒ | ƒ d | |  | ƒ | d | | ƒ ƒ t t | | ƒ | ƒ | d |  | ƒ d | | | ƒ ƒ f } t |  | ƒ t t | d
 d
 ƒ t	 t | d
 d
 ƒ t t d ƒ d | d ƒ ƒ t | | ƒ t t | d
 d
 ƒ t	 t | d
 d
 ƒ t t d ƒ d | d ƒ ƒ g } t
 | | ƒ t d d g f k s
t ‚ t t |  | ƒ | ƒ d | |  | ƒ | d | | ƒ ƒ t t | | ƒ | ƒ | d |  | ƒ d | d | d | | ƒ ƒ f } t |  | ƒ t t t d ƒ d t d ƒ d | d
 d
 ƒ t	 t t d ƒ d t d ƒ d | d
 d
 ƒ t t d ƒ d | d ƒ ƒ t | | ƒ t t d ƒ d t d ƒ d t t d ƒ d t d ƒ d | d
 d
 ƒ t	 t d ƒ d t d ƒ d t t d ƒ d t d ƒ d | d
 d
 ƒ t t d ƒ d | d ƒ ƒ g } t
 | | ƒ t d d g f k s#t ‚ t t |  | ƒ | ƒ d | |  | ƒ | d | | ƒ ƒ t t | | ƒ | ƒ d | d |  | ƒ d | d | d | | ƒ ƒ f } t |  | ƒ t | | ƒ t	 | | ƒ t | d t t d | | ƒ ƒ t t d | d d | | ƒ ƒ | | ƒ d | ƒ ƒ t | | ƒ t |	 | ƒ t	 |	 | ƒ t | d t t d | | ƒ ƒ t t d | d d | | ƒ ƒ | | ƒ d | ƒ t t d | | ƒ ƒ t t d | d d | | ƒ ƒ | | ƒ ƒ g } t | ƒ } | | k st ‚ d  S(   Ns   x, y, zt   clss
   k, l, m, nt   Integert   ts   x0, y0i	   i   i   i   iúÿÿÿi    i   i   i)   i±  i+   i'   iþÿÿÿi   i   i   i   iQ   i:   i¹   iM   i   (   R!   R   t   TrueR   R	   R   t   C1R   R   t   C2R0   t   AssertionErrorR   R   R   R   R   (   t   xt   yt   zt   kt   lt   mt   nR?   t   x0t   y0t   eq1t   sol1t   eq2t   sol2t   eq3t   sol3t   eq4t   sol4t   eq5t   sol5t   eq6t   sol6t   st   eq7t   sol7t   eq8t   sol8t   eq10t   sol10(    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_linear_2eq_order1   s^    PNh'lkQQ'dXRa'lUx'hVq'tNT'}V]'‰=RYu'Œƒ~Oc              s~   t  t t t ƒ t ƒ t t ƒ t t ƒ d t ƒ t  t t t ƒ t ƒ t t ƒ t t ƒ ƒ g ‰  t t ‡  f d †  ƒ d  S(   Ni   c              s
   t  ˆ  ƒ S(   N(   R   (    (   t   e(    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   <lambda>Y   t    (   R	   R   R:   RD   R;   R6   t   NotImplementedError(    (    (   Ra   s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt&   test_linear_2eq_order1_nonhomog_linearV   s    31c              s„   t  t t t ƒ t ƒ t t ƒ t t ƒ ƒ t  t t t ƒ t ƒ t t ƒ t t ƒ t t t ƒ ƒ g ‰  t t ‡  f d †  ƒ d  S(   Nc              s
   t  ˆ  ƒ S(   N(   R   (    (   Ra   (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   `   Rc   (   R	   R   R:   RD   R   R;   R6   Rd   (    (    (   Ra   s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_linear_2eq_order1_nonhomog\   s    +?c          C   sÍ   t  t t t ƒ t ƒ t t ƒ d ƒ t  t t t ƒ t ƒ t t ƒ d ƒ g }  t  t t ƒ t t t ƒ d ƒ t  t t ƒ t t t ƒ t d t d ƒ g } t |  | ƒ t	 d d g f k sÉ t
 ‚ d  S(   Ni   i   i   i    (   R	   R   R:   RD   R;   RA   R   RB   R0   R@   RC   (   Ra   t   s1(    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt"   test_linear_2eq_order1_type2_degenc   s    %+Rc          C   sš  t  t t t ƒ t ƒ t t ƒ ƒ t  t t t ƒ t ƒ t t ƒ ƒ g }  t  t t ƒ t t t ƒ ƒ t  t t ƒ t t t ƒ ƒ g } t |  | ƒ t	 d d g f k s­ t
 ‚ t  t t t ƒ t ƒ d t t ƒ ƒ t  t t t ƒ t ƒ d t t ƒ d t t ƒ ƒ g }  t  t t ƒ d t t d t ƒ ƒ t  t t ƒ d t t d t ƒ d t t d t ƒ ƒ g } t |  | ƒ t	 d d g f k s–t
 ‚ d  S(   Ni    i   i   i   iûÿÿÿi   (   R	   R   R:   RD   R;   RA   R   RB   R0   R@   RC   (   Ra   Rg   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt-   test_dsolve_linear_2eq_order1_diag_triangularj   s    !'>'%9$@c          C   s  t  t t t ƒ t ƒ d t t t ƒ d t t ƒ ƒ t  t t t ƒ t ƒ d t t t ƒ ƒ g }  t  t t ƒ d t t d t t ƒ d t t d t t ƒ ƒ t  t t ƒ d t t t d t t ƒ ƒ g } t	 |  | ƒ t
 d d g f k st ‚ d  S(   Ni÷ÿÿÿi   iüÿÿÿi   i    (   R	   R   R:   RD   R   R;   RA   R   RB   R0   R@   RC   (   Ra   Rg   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt*   test_sysode_linear_2eq_order1_type1_D_lt_0w   s
    7/B2c          C   sá   t  t t t ƒ t ƒ d t t t ƒ ƒ t  t t t ƒ t ƒ d t t t ƒ ƒ g }  t  t t ƒ d t t t d t t ƒ ƒ t  t t ƒ d t t t d t t ƒ ƒ g } t	 |  | ƒ t
 d d g f k sÝ t ‚ d  S(   Ni÷ÿÿÿiüÿÿÿiûÿÿÿi   i    (   R	   R   R:   RD   R   R;   RB   R   RA   R0   R@   RC   (   Ra   Rg   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt1   test_sysode_linear_2eq_order1_type1_D_lt_0_b_eq_0€   s    )/^c          C   sg  t  d ƒ }  d d	 d
 d d d d d t f t d d t f d t d d f d t t d f g	 } t t |  ƒ t ƒ t t |  ƒ t ƒ g t t |  ƒ t t |  ƒ ƒ t t |  ƒ t ƒ g t t |  ƒ t t |  ƒ t t |  ƒ t ƒ g t t |  ƒ t ƒ t t |  ƒ t t |  ƒ g t t |  ƒ t ƒ t t |  ƒ t t |  ƒ ƒ g t t |  ƒ t d t t |  ƒ ƒ t t |  ƒ t d t t t |  ƒ ƒ g t t |  ƒ d t t t t |  ƒ ƒ t t |  ƒ d t t t t |  ƒ ƒ g t t |  ƒ t t t t |  ƒ t t |  ƒ t ƒ g t t |  ƒ t t t t |  ƒ t t t t |  ƒ ƒ t t |  ƒ t t t t |  ƒ t t t t |  ƒ ƒ g g	 } xÀ t | | ƒ D]¯ \ } } t t	 t |  ƒ |  ƒ | d t |  ƒ | d t |  ƒ ƒ t t	 t |  ƒ |  ƒ | d t |  ƒ | d t |  ƒ ƒ g } t
 | | ƒ t d d g f k s°t ‚ q°Wd  S(   NR?   i    i   iÿÿÿÿi   iþÿÿÿi   (   i    i    i    i    (   i   i    i    i    (   i    i   i    i    (   i    i    i   i    (   i    i    i    i   (   R   R   R	   R:   RA   R;   RB   R   t   zipR   R0   R@   RC   (   R?   t   corner_casesRg   t   rt   solt   eq(    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt(   test_sysode_linear_2eq_order1_many_zerosˆ   s$    	4'2//2OT7;D;Ac          C   sx  t  d ƒ }  t t t t ƒ t ƒ d t t ƒ t t ƒ ƒ t t t t ƒ t ƒ |  t t ƒ ƒ f } t t t ƒ t t t t t	 d |  d ƒ d d ƒ t
 t t t	 d |  d ƒ d d ƒ t d |  d d ƒ f t t
 t t d t t	 d |  d ƒ d d d ƒ f d t	 d |  d ƒ d d t f ƒ t t t	 d |  d ƒ d d ƒ t f ƒ ƒ t t t ƒ t t t	 d |  d ƒ d d t t t	 d |  d ƒ d d ƒ t
 t	 d |  d ƒ d d t t t	 d |  d ƒ d d ƒ t d |  d d ƒ f t t	 d |  d ƒ d d t
 t t	 d |  d ƒ d d t d t t	 d |  d ƒ d d d ƒ f d t f ƒ t t t	 d |  d ƒ d d ƒ t f ƒ ƒ g } t | ƒ | k sÚt ‚ g  | D] } | j | j f ^ qá} x‹ d d d d t d	 d t g D]h } | d j | ƒ j |  | ƒ j ƒ  j ƒ  sXt ‚ | d j | ƒ j |  | ƒ j ƒ  j ƒ  s!t ‚ q!Wt d
 ƒ \ } } } }	 }
 } t d ƒ } t d ƒ } | | t | | ƒ | ƒ | | ƒ | | ƒ | | } |	 | t | | ƒ | ƒ |	 |
 t | | ƒ | ƒ | | ƒ |	 | } t | | f ƒ } t d „  | Dƒ ƒ stt ‚ d  S(   Nt   ui   i   i   i    i   iÖÿÿÿi   i   s   i, r1, c1, r2, c2, tt   x1t   x2c         s   s   |  ] } | j  t ƒ Vq d  S(   N(   t   hasR    (   t   .0RY   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pys	   <genexpr>¼   s    (   R   R	   R   R:   RD   R;   R    RA   R   R   RB   R
   R@   R   RC   t   lhst   rhsR   t   subst   doitR   R!   R   R   t   all(   Rr   Rp   Rg   RH   RY   t   vt   it   r1t   c1t   r2t   c2R?   Rs   Rt   RM   RO   Ro   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt&   test_dsolve_linsystem_symbol_piecewisež   s0    /+6IIHDRF.B%(159Jc          C   s&2  t  d d t ƒ\ }  } } t  d d t ƒ\ } } } } t  d ƒ \ } } t  d d t ƒ\ } }	 t t |  | ƒ | | ƒ d |  | ƒ d | | ƒ ƒ t t | | ƒ | | ƒ |  | ƒ d	 | | ƒ ƒ f }
 t |  | ƒ d t t | t | d
 d | d d d ƒ ƒ d t t | t | d
 d | d d d ƒ ƒ d t	 t | t | d
 d | d d d ƒ ƒ d t
 t | t | d
 d | d d d ƒ ƒ ƒ t | | ƒ t t | d
 d | d d d ƒ d d t | t | d
 d | d d d ƒ ƒ t t | d
 d | d d d ƒ d d t | t | d
 d | d d d ƒ ƒ t	 t | d
 d | d d d ƒ d d t | t | d
 d | d d d ƒ ƒ t
 t | d
 d | d d d ƒ d d t | t | d
 d | d d d ƒ ƒ ƒ g } t |
 ƒ | k s7t ‚ t t |  | ƒ | | ƒ d |  | ƒ d | | ƒ d ƒ t t | | ƒ | | ƒ d	 |  | ƒ d | | ƒ d ƒ f } t |  | ƒ d t t | t | d
 d | d d d ƒ ƒ d t t | t | d
 d | d d d ƒ ƒ d t	 t | t | d
 d | d d d ƒ ƒ d t
 t | t | d
 d | d d d ƒ ƒ t d ƒ d ƒ t | | ƒ t t | d
 d | d d d ƒ d d t | t | d
 d | d d d ƒ ƒ t t | d
 d | d d d ƒ d d t | t | d
 d | d d d ƒ ƒ t	 t | d
 d | d d d ƒ d d t | t | d
 d | d d d ƒ ƒ t
 t | d
 d | d d d ƒ d d t | t | d
 d | d d d ƒ ƒ t d ƒ d ƒ g } t | ƒ | k s3t ‚ t t |  | ƒ | | ƒ d	 t | | ƒ | ƒ d |  | ƒ d ƒ t t | | ƒ | | ƒ d	 t |  | ƒ | ƒ d | | ƒ d ƒ f } t |  | ƒ t t | t d	 ƒ d t d ƒ d ƒ t t | t d	 ƒ d t d ƒ d ƒ t	 t | t d ƒ d t d	 ƒ d ƒ t
 t | t d ƒ d t d	 ƒ d ƒ ƒ t | | ƒ t t | t d	 ƒ d t d ƒ d ƒ t t | t d	 ƒ d t d ƒ d ƒ t	 t | t d ƒ d t d	 ƒ d ƒ t
 t | t d ƒ d t d	 ƒ d ƒ ƒ g } t | ƒ | k sNt ‚ t | | ƒ t d d g f k sut ‚ t t |  | ƒ | | ƒ d	 | t | | ƒ | ƒ d	 | | ƒ ƒ t t | | ƒ | | ƒ d | t |  | ƒ | ƒ d |  | ƒ ƒ f } t |  | ƒ t	 | | t d	 t t d t d ƒ | d d ƒ d	 t t d t d ƒ | d d ƒ | d | ƒ ƒ t | | ƒ t
 | | t d t d ƒ t t d t d ƒ | d d ƒ d t d ƒ t t d t d ƒ | d d ƒ | d | ƒ ƒ g } t | ƒ | k s)
t ‚ t | | ƒ t d d g f k sP
t ‚ t t |  | ƒ | | ƒ t | ƒ | d t |  | ƒ | ƒ t | ƒ | d d t | | ƒ | ƒ ƒ t t | | ƒ | | ƒ t | ƒ | d d t |  | ƒ | ƒ t | ƒ | d d	 t | | ƒ | ƒ ƒ f } t |  | ƒ t d ƒ t t t t d ƒ d t | d t | ƒ | ƒ ƒ | ƒ t t	 t t t d ƒ d t | d t | ƒ | ƒ ƒ | ƒ t
 t d ƒ d t t t t d ƒ d t | d t | ƒ | ƒ ƒ | ƒ t t d ƒ d t	 t t t d ƒ d t | d t | ƒ | ƒ ƒ | ƒ t
 d ƒ t | | ƒ t d ƒ t t t t d ƒ d t | d t | ƒ | ƒ ƒ | ƒ t t	 t t t d ƒ d t | d t | ƒ | ƒ ƒ | ƒ t
 d ƒ g } t | ƒ | k s"t ‚ t | | ƒ t d d g f k sIt ‚ t t |  | ƒ | | ƒ t | ƒ | t | | ƒ | ƒ t | ƒ | | ƒ ƒ t t | | ƒ | | ƒ t | ƒ | t |  | ƒ | ƒ t | ƒ |  | ƒ ƒ f } t |  | ƒ t	 | | t t t t | t | ƒ | ƒ ƒ t t t | t | ƒ | ƒ ƒ | d | ƒ ƒ t | | ƒ t
 | | t t t t | t | ƒ | ƒ ƒ t t t | t | ƒ | ƒ ƒ | d | ƒ ƒ g } t | ƒ | k sçt ‚ t | | ƒ t d d g f k st ‚ t t |  | ƒ | | ƒ t | ƒ | t |  | ƒ | ƒ |  | ƒ t | ƒ | t | | ƒ | ƒ | | ƒ ƒ t t | | ƒ | | ƒ | d | t |  | ƒ | ƒ |  | ƒ | | t | | ƒ | ƒ | | ƒ ƒ f } t |  | ƒ t	 | | t t | | ƒ t | | ƒ t | t | ƒ t t | d | ƒ ƒ t t | t | ƒ | ƒ ƒ | | ƒ d | ƒ | d | ƒ ƒ t | | ƒ t
 | | t t |	 | ƒ t |	 | ƒ t | t | ƒ t t | d | ƒ ƒ t t | t | ƒ | ƒ ƒ | | ƒ d | ƒ t t | d | ƒ ƒ t t | t | ƒ | ƒ ƒ | | ƒ | d | ƒ ƒ g } t | ƒ | k sˆt ‚ t t |  | ƒ | | ƒ | d
 |  | ƒ d	 | | ƒ ƒ t t | | ƒ | | ƒ | d |  | ƒ d | | ƒ ƒ f } d } t t | ƒ ƒ | k s&t ‚ t t |  | ƒ | | ƒ | d
 t |  | ƒ | ƒ d	 t | | ƒ | ƒ ƒ t t | | ƒ | | ƒ | d t |  | ƒ | ƒ d t | | ƒ | ƒ ƒ f } t |  | ƒ t d ƒ d
 t t t t d ƒ d t | | ƒ ƒ | ƒ d
 t d
 t	 t t d  t d ƒ t | | ƒ ƒ | ƒ d
 t
 d  t d ƒ t t t t d ƒ d t | | ƒ ƒ | ƒ t t d ƒ d t	 t t d  t d ƒ t | | ƒ ƒ | ƒ t
 d! ƒ t | | ƒ t d ƒ t t t t d ƒ d t | | ƒ ƒ | ƒ t t	 t t d  t d ƒ t | | ƒ ƒ | ƒ t
 d" ƒ g } t | ƒ | k sxt ‚ t | | ƒ t d d g f k sŸt ‚ | d t |  | ƒ | | ƒ d | t |  | ƒ | ƒ d
 | t | | ƒ | ƒ d |  | ƒ d	 | | ƒ | d t | | ƒ | | ƒ d | t |  | ƒ | ƒ d | t | | ƒ | ƒ d |  | ƒ d | | ƒ f } t |  | ƒ t d# t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d( d t d) t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d d* d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ t t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d d t d) t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d d* d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d t | ƒ ƒ t d# t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d( d t d) t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d d* d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ t t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d d t d) t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d d* d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d t | ƒ ƒ t	 | d t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d t d# t d% ƒ d
 d t d& ƒ d' t d ƒ d d d* d t d% ƒ d
 d t d& ƒ d' t d ƒ d d+ t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ ƒ d d t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d( d t d# t d% ƒ d
 d t d& ƒ d' t d ƒ d d d* d t d% ƒ d
 d t d& ƒ d' t d ƒ d d+ t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ ƒ t
 | t d# t d% ƒ d
 d t d& ƒ d' t d ƒ d d d* d t d% ƒ d
 d t d& ƒ d' t d ƒ d d+ t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ ƒ d d t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d d# t d# t d% ƒ d
 d t d& ƒ d' t d ƒ d d d* d t d% ƒ d
 d t d& ƒ d' t d ƒ d d+ t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ ƒ d t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d( ƒ t | | ƒ t t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d d t d) t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d d* d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d d t d) t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d d* d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ t t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d d t d) t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d d* d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d t | ƒ ƒ t t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d t d) t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d d* d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d d t d) t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d d* d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d d t t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d d t d) t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d d* d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d t | ƒ ƒ t	 | d t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d t d# t d% ƒ d
 d t d& ƒ d' t d ƒ d d d* d t d% ƒ d
 d t d& ƒ d' t d ƒ d d+ t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ ƒ d t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ t d# t d% ƒ d
 d t d& ƒ d' t d ƒ d d d* d t d% ƒ d
 d t d& ƒ d' t d ƒ d d+ t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ ƒ d d t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d t d# t d% ƒ d
 d t d& ƒ d' t d ƒ d d d* d t d% ƒ d
 d t d& ƒ d' t d ƒ d d+ t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ ƒ d d t
 | t d# t d% ƒ d
 d t d& ƒ d' t d ƒ d d d* d t d% ƒ d
 d t d& ƒ d' t d ƒ d d+ t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ ƒ d d t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d t d# t d% ƒ d
 d t d& ƒ d' t d ƒ d d d* d t d% ƒ d
 d t d& ƒ d' t d ƒ d d+ t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ ƒ t d# t d% ƒ d
 d t d& ƒ d' t d ƒ d d d* d t d% ƒ d
 d t d& ƒ d' t d ƒ d d+ t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ ƒ d d t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d d t d$ d t d% ƒ d
 d t d& ƒ d' t d ƒ d d
 d t d% ƒ d
 d t d& ƒ d' t d ƒ d ƒ d ƒ g } t | ƒ | k s"2t ‚ d  S(,   Ns   x, y, zR=   s
   k, l, m, nR>   s   t, ls   x0, y0i   i+   i	   i   i   i   i    i   i   i   i   i   i   i   i   iµ   i·   im   iýÿÿÿi   iX   i,   i   s  [Eq(x(t), -sqrt(133)*((-sqrt(133) - 1)*(C2*(133*t**8/24 - t**3/6 + sqrt(133)*t**3/2 + 1) + C1*t*(sqrt(133)*t**4/6 - t**3/12 + 1) + O(t**6)) - (-1 + sqrt(133))*(C2*(-sqrt(133)*t**3/6 - t**3/6 + 1) + C1*t*(-sqrt(133)*t**3/12 - t**3/12 + 1) + O(t**6)) - 4*C2*(133*t**8/24 - t**3/6 + sqrt(133)*t**3/2 + 1) + 4*C2*(-sqrt(133)*t**3/6 - t**3/6 + 1) - 4*C1*t*(sqrt(133)*t**4/6 - t**3/12 + 1) + 4*C1*t*(-sqrt(133)*t**3/12 - t**3/12 + 1) + O(t**6))/3192), Eq(y(t), -sqrt(133)*(-C2*(133*t**8/24 - t**3/6 + sqrt(133)*t**3/2 + 1) + C2*(-sqrt(133)*t**3/6 - t**3/6 + 1) - C1*t*(sqrt(133)*t**4/6 - t**3/12 + 1) + C1*t*(-sqrt(133)*t**3/12 - t**3/12 + 1) + O(t**6))/266)]i…   iÿÿÿÿix  i
  iþÿÿÿi¦þÿÿií  i‘ä7i$   i   iäþÿÿiZ  i  (   R!   R   R@   R	   R   RA   R   R   RB   t   C3t   C4R   RC   R   R   R   R   R0   R   R   t   str(   RD   RE   RF   RG   RH   RI   RJ   R?   RK   RL   RM   RN   RO   RP   RQ   RR   RS   RT   RU   RV   RW   RX   RZ   R[   R\   R]   t   eq9t   sol9R^   R_   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_linear_2eq_order2¿   sÂ    nÎÿ azÜÿ wŒŠ:³'Œ{•'€Zÿ 1˜'¤9n;'pn6eYzžÿ |'ouÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ žÿ oÿ wÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ Ëÿ oÿ ÿ Öc          C   sE  t  d d t ƒ\ }  } } t d ƒ } t t |  | ƒ | ƒ d |  | ƒ ƒ t t | | ƒ | ƒ d |  | ƒ d | | ƒ ƒ t t | | ƒ | ƒ d |  | ƒ d | | ƒ d	 | | ƒ ƒ f } t |  | ƒ t t d | ƒ ƒ t | | ƒ d t t d | ƒ d
 t t d | ƒ ƒ t | | ƒ d t t d | ƒ d d t t d | ƒ d t t d	 | ƒ ƒ g } t	 | | ƒ t
 d d d g f k s¤t ‚ t t |  | ƒ | ƒ d | | ƒ d | | ƒ ƒ t t | | ƒ | ƒ d | | ƒ d |  | ƒ ƒ t t | | ƒ | ƒ d |  | ƒ d | | ƒ ƒ f } t |  | ƒ d t t d ƒ t t t d ƒ | ƒ d t d d t d t t d ƒ | ƒ ƒ t | | ƒ d t t d ƒ t t t d ƒ | ƒ d t d d t d t t d ƒ | ƒ ƒ t | | ƒ d t t d ƒ d t d d t d t t d ƒ | ƒ d t d t t t d ƒ | ƒ ƒ g } t	 | | ƒ t
 d d d g f k s«t ‚ t d t |  | ƒ | ƒ d! | | ƒ | | ƒ ƒ t d t | | ƒ | ƒ d" | | ƒ |  | ƒ ƒ t d t | | ƒ | ƒ d# |  | ƒ | | ƒ ƒ f } t |  | ƒ t d t d ƒ t t d t d ƒ | ƒ d t d d t d t d t d ƒ | ƒ ƒ t | | ƒ t d t d ƒ t t d t d ƒ | ƒ d t d d t d t d t d ƒ | ƒ ƒ t | | ƒ t d t d ƒ d t d d t d t d t d ƒ | ƒ d t d d t d t d t d ƒ | ƒ ƒ g }	 t	 | |	 ƒ t
 d d d g f k sÒt ‚ | d t | ƒ }
 | d t | ƒ } t t |  | ƒ | ƒ d |
 | |  | ƒ |
 | | ƒ d |
 | | ƒ ƒ t t | | ƒ | ƒ d |
 |  | ƒ |
 | | | ƒ d |
 | | ƒ ƒ t t | | ƒ | ƒ d |
 |  | ƒ |
 | | ƒ d |
 | | | ƒ ƒ f } t |  | ƒ t t d  t | d t | ƒ | ƒ ƒ t t d ƒ t t d ƒ t | d t | ƒ | ƒ ƒ d t t d ƒ t | d t | ƒ | ƒ ƒ d t t t d ƒ t | d t | ƒ | ƒ ƒ d t d ƒ t t d ƒ t | d t | ƒ | ƒ ƒ d t t | d t | ƒ | ƒ ƒ ƒ t | | ƒ t t d ƒ t t d ƒ t | d t | ƒ | ƒ ƒ d t t d ƒ t | d t | ƒ | ƒ ƒ d t t t d ƒ t | d t | ƒ | ƒ ƒ d t d ƒ t t d ƒ t | d t | ƒ | ƒ ƒ d t t | d t | ƒ | ƒ ƒ ƒ t | | ƒ t t d  t | d t | ƒ | ƒ ƒ t t t d ƒ t | d t | ƒ | ƒ ƒ t t t d ƒ t | d t | ƒ | ƒ ƒ t t | d t | ƒ | ƒ ƒ ƒ g } t | ƒ | k sõ	t ‚ t t |  | ƒ | ƒ d |  | ƒ | | ƒ ƒ t t | | ƒ | ƒ d |  | ƒ d | | ƒ | | ƒ ƒ t t | | ƒ | ƒ d |  | ƒ | | ƒ ƒ f } t |  | ƒ t t d | ƒ t | t d | ƒ t t d | ƒ t | d t d | ƒ d t | t d | ƒ t t d | ƒ ƒ t | | ƒ t t d | ƒ t | t d | ƒ t t d | ƒ t | d t d | ƒ d t | t d | ƒ ƒ t | | ƒ d t t d | ƒ d t | t d | ƒ t t d | ƒ t | d t d | ƒ t | t d | ƒ t t d | ƒ ƒ g } t	 | | ƒ t
 d d d g f k sbt ‚ t t |  | ƒ | ƒ d |  | ƒ | | ƒ d | | ƒ ƒ t t | | ƒ | ƒ d |  | ƒ | | ƒ d | | ƒ ƒ t t | | ƒ | ƒ d |  | ƒ d | | ƒ ƒ f } t |  | ƒ t t d | ƒ t t | ƒ d d t | ƒ d t d t | ƒ d t | ƒ d ƒ t | | ƒ t t | ƒ d d t | ƒ d t d t | ƒ d t | ƒ d ƒ t | | ƒ t t d | ƒ t t | ƒ t t | ƒ ƒ g } t	 | | ƒ t
 d d d g f k sAt ‚ d  S($   Ns   x, y, zR=   R?   i   i   i   i   i   i	   i   iÑ   iØ   i   i    i   i³   iM   i‚   iÆÿÿÿiùÿÿÿi   i   i   i¤   i   iÍÿÿÿi
   i÷ÿÿÿi   i   iýÿÿÿiþÿÿÿi   i   i   (   R!   R   R   R	   R   RA   R   RB   Rƒ   R0   R@   RC   t   C0R   R   R   R   R   R   (   RD   RE   RF   R?   RM   RN   RO   RP   RQ   RR   R:   R;   RS   RT   RU   RV   RW   RX   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_linear_3eq_order1Z  sJ    ŸZZ*Ÿddv*Ÿll†*íÅlkl1±¡Ž|˜*³iWBc              s£   t  t t t ƒ t ƒ d t t ƒ d t t ƒ ƒ t  t t t ƒ t ƒ d t t ƒ ƒ t  t t t ƒ t ƒ t t ƒ t t ƒ ƒ g ‰  t t ‡  f d †  ƒ d  S(   Ni÷ÿÿÿi   iüÿÿÿc              s
   t  ˆ  ƒ S(   N(   R   (    (   Ra   (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   Œ  Rc   (	   R	   R   R:   RD   R;   R<   R   R6   Rd   (    (    (   Ra   s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_linear_3eq_order1_nonhomogˆ  s    3%1c          C   s  t  t t t ƒ t ƒ t t ƒ ƒ t  t t t ƒ t ƒ t t ƒ ƒ t  t t t ƒ t ƒ t t ƒ ƒ g }  t  t t ƒ t t t ƒ ƒ t  t t ƒ t t t ƒ ƒ t  t t ƒ t	 t t ƒ ƒ g } t
 |  ƒ } | | k sá t ‚ t |  | ƒ t d d d g f k st ‚ d  S(   Ni    (   R	   R   R:   RD   R;   R<   RA   R   RB   Rƒ   R   RC   R0   R@   (   Ra   Rg   RY   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_linear_3eq_order1_diagonal  s    !!'Zc          C   sŠ
  t  d d t ƒ\ }  } } t d ƒ } t t |  | ƒ | ƒ |  | ƒ | | ƒ d ƒ t t | | ƒ | ƒ | | ƒ d ƒ f } t |  | ƒ t t d d t d | t d ƒ d ƒ ƒ t | | ƒ d d t d | t d ƒ d ƒ t |  | ƒ t t d d d t d | t d ƒ d ƒ ƒ t | | ƒ d d t d | t d ƒ d ƒ t |  | ƒ t t t	 d d t d | t d ƒ d ƒ ƒ t | | ƒ t	 d d t d | t d ƒ d ƒ t |  | ƒ t t t	 d d t d | t d ƒ d ƒ ƒ t | | ƒ t	 d d t d | t d ƒ d ƒ g } t
 | ƒ | k s_t ‚ t | | ƒ t d	 d	 g f k s†t ‚ t t |  | ƒ | ƒ t d |  | ƒ ƒ | | ƒ d ƒ t t | | ƒ | ƒ | | ƒ d ƒ f } t |  | ƒ t t d d d t d | t d ƒ d ƒ d ƒ t | | ƒ d d t d | t d ƒ d ƒ t |  | ƒ t t d d d t d | t d ƒ d ƒ d ƒ t | | ƒ d d t d | t d ƒ d ƒ t |  | ƒ t t d t	 d d t d | t d ƒ d ƒ d ƒ t | | ƒ t	 d d t d | t d ƒ d ƒ t |  | ƒ t t d t	 d d t d | t d ƒ d ƒ d ƒ t | | ƒ t	 d d t d | t d ƒ d ƒ g } t
 | ƒ | k sæt ‚ t | | ƒ t d	 d	 g f k st ‚ t t |  | ƒ | ƒ | | ƒ |  | ƒ ƒ t t | | ƒ | ƒ |  | ƒ d ƒ f } t d
 ƒ d }	 t |  | ƒ d |	 d t t t ƒ t | d
 ƒ t t ƒ |	 ƒ t | | ƒ t t t t t t ƒ t | d
 ƒ d
 ƒ d ƒ g }
 t
 | ƒ |
 k st ‚ t t |  | ƒ | ƒ |  | ƒ | | ƒ t | ƒ d
 ƒ t t | | ƒ | ƒ | | ƒ d
 t | ƒ d
 ƒ f } t t |  | ƒ d t t ƒ t t t ƒ | t d
 | ƒ d
 ƒ t | | ƒ d t | t d
 | ƒ d
 ƒ g ƒ } t
 | ƒ | k st ‚ t |  | ƒ | t |  | ƒ | ƒ t |  | ƒ | ƒ t | | ƒ | ƒ ƒ t | | ƒ | t | | ƒ | ƒ t | | ƒ | ƒ d
 ƒ f } t t |  | ƒ t t t | ƒ t | | ƒ t d
 t | ƒ g ƒ } t
 | ƒ | k st ‚ t | | ƒ t d	 d	 g f k s,t ‚ t t |  | ƒ | ƒ |  | ƒ d
 | | ƒ d ƒ t t | | ƒ | ƒ | | ƒ d ƒ f } t |  | ƒ d t d d d t d | t d ƒ d ƒ t | | ƒ d d t d | t d ƒ d ƒ t |  | ƒ d t d d t d | t d ƒ d ƒ t | | ƒ d d t d | t d ƒ d ƒ t |  | ƒ d t t	 d d t d | t d ƒ d ƒ t | | ƒ t	 d d t d | t d ƒ d ƒ t |  | ƒ d t t	 d d t d | t d ƒ d ƒ t | | ƒ t	 d d t d | t d ƒ d ƒ g } t
 | ƒ | k s_
t ‚ t | | ƒ t d	 d	 g f k s†
t ‚ d  S(   Ns   x, y, zR=   R?   i   i   iÿÿÿÿi   i   i    i   i   iþÿÿÿ(   R!   R   R   R	   R   RA   R   RB   R   R   R   RC   R0   R@   R   R   R   R   t   set(   RD   RE   RF   R?   RM   RN   RO   RP   RQ   t   ttRR   RS   RT   RU   RV   RW   RX   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_nonlinear_2eq_order1›  s^    Z;1>0?5>:'dC1C0G5G:'VEFrxH'^<190<5<:c          C   sN$  t  d d t ƒ\ }  } } t d ƒ } t t |  | ƒ | ƒ d | | ƒ ƒ t t | | ƒ | ƒ d |  | ƒ ƒ f } t |  | ƒ d t t d t d ƒ | ƒ d t t d t d ƒ | ƒ ƒ t | | ƒ d t d ƒ t t d t d ƒ | ƒ d t d ƒ t t d t d ƒ | ƒ ƒ g } t	 | | ƒ t
 d	 d	 g f k sTt ‚ t t |  | ƒ | ƒ d
 |  | ƒ d | | ƒ ƒ t t | | ƒ | ƒ d |  | ƒ d | | ƒ ƒ f } t |  | ƒ d t t | t d ƒ d
 t d ƒ d
 ƒ d t t | t d ƒ d
 t d ƒ d
 ƒ ƒ t | | ƒ t t d ƒ d
 t d ƒ d
 t | t d ƒ d
 t d ƒ d
 ƒ t t d ƒ d
 t d ƒ d
 t | t d ƒ d
 t d ƒ d
 ƒ ƒ g } t	 | | ƒ t
 d	 d	 g f k sôt ‚ t t |  | ƒ | ƒ |  | ƒ | | ƒ ƒ t t | | ƒ | ƒ d |  | ƒ d
 | | ƒ ƒ f } t |  | ƒ t t t d ƒ | d
 ƒ t t t d ƒ | d
 ƒ t d | d
 ƒ ƒ t | | ƒ t d
 t d ƒ t d
 t t d ƒ | d
 ƒ t d ƒ t d
 t d
 t t d ƒ | d
 ƒ t d | d
 ƒ ƒ g } t	 | | ƒ t
 d	 d	 g f k sat ‚ t t |  | ƒ | ƒ |  | ƒ | | ƒ d ƒ t t | | ƒ | ƒ d
 |  | ƒ d | | ƒ d ƒ f } t |  | ƒ t t | t d ƒ d ƒ t t | t d ƒ d ƒ t d ƒ d ƒ t | | ƒ t t d ƒ d
 t | t d ƒ d ƒ t d
 t d ƒ t | t d ƒ d ƒ t d ƒ d ƒ g } t	 | | ƒ t
 d	 d	 g f k sÁt ‚ t t |  | ƒ | ƒ |  | ƒ | | ƒ d ƒ t t | | ƒ | ƒ d |  | ƒ | | ƒ d ƒ f } t |  | ƒ t t t d
 ƒ | ƒ t t t d
 ƒ | ƒ t | ƒ t d ƒ d ƒ t | | ƒ t d
 ƒ t t t d
 ƒ | ƒ t d
 ƒ t t t d
 ƒ | ƒ t | ƒ t d ƒ d ƒ g } t	 | | ƒ t
 d	 d	 g f k st ‚ t t |  | ƒ | ƒ d | |  | ƒ d
 | | ƒ ƒ t t | | ƒ | ƒ d
 |  | ƒ d | | | ƒ ƒ f } t |  | ƒ t t t d
 | ƒ j ƒ  ƒ t t t d
 | ƒ j ƒ  ƒ t t d | | ƒ j ƒ  ƒ ƒ t | | ƒ t t t d
 | ƒ j ƒ  ƒ t t t d
 | ƒ j ƒ  ƒ t t d | | ƒ j ƒ  ƒ ƒ g } t	 | | ƒ t
 d	 d	 g f k sƒt ‚ t t |  | ƒ | ƒ d | |  | ƒ | d
 | | ƒ ƒ t t | | ƒ | ƒ | d
 |  | ƒ d | | | ƒ ƒ f } t |  | ƒ t t t | d
 | ƒ j ƒ  ƒ t t t | d
 | ƒ j ƒ  ƒ t t d | | ƒ j ƒ  ƒ ƒ t | | ƒ t t t | d
 | ƒ j ƒ  ƒ t t t | d
 | ƒ j ƒ  ƒ t t d | | ƒ j ƒ  ƒ ƒ g } t	 | | ƒ t
 d	 d	 g f k s
t ‚ t t |  | ƒ | ƒ d | |  | ƒ | d
 | | ƒ ƒ t t | | ƒ | ƒ | d
 |  | ƒ d | d | d
 | | ƒ ƒ f } t |  | ƒ t t t d ƒ d
 t d ƒ d
 t | d
 | ƒ j ƒ  ƒ t t t d ƒ d
 t d ƒ d
 t | d
 | ƒ j ƒ  ƒ t t d | | ƒ j ƒ  ƒ ƒ t | | ƒ t t d ƒ d
 t d ƒ d
 t t d ƒ d
 t d ƒ d
 t | d
 | ƒ j ƒ  ƒ t t d ƒ d
 t d ƒ d
 t t d ƒ d
 t d ƒ d
 t | d
 | ƒ j ƒ  ƒ t t d | | ƒ j ƒ  ƒ ƒ g } t	 | | ƒ t
 d	 d	 g f k sCt ‚ t t |  | ƒ | | ƒ d |  | ƒ d | | ƒ ƒ t t | | ƒ | | ƒ |  | ƒ d | | ƒ ƒ f } t t d ƒ d ƒ } t t d ƒ d ƒ } t t d ƒ d ƒ } t t d ƒ d ƒ }	 t |  | ƒ d t t | | ƒ d t t | | ƒ d t t | | ƒ d t t | |	 ƒ ƒ t | | ƒ t | d
 d t | | ƒ t | d
 d t | | ƒ t | d
 d t | | ƒ t |	 d
 d t | |	 ƒ ƒ g } t	 | | ƒ t
 d	 d	 g f k s&t ‚ t t |  | ƒ | | ƒ d |  | ƒ d | | ƒ d ƒ t t | | ƒ | | ƒ d |  | ƒ d | | ƒ d ƒ f } t t d ƒ d
 t d ƒ d
 ƒ } t t d ƒ d
 t d ƒ d
 ƒ } t t d ƒ d
 t d ƒ d
 ƒ } t t d ƒ d
 t d ƒ d
 ƒ }	 t |  | ƒ d t t | | ƒ d t t | | ƒ d t t | | ƒ d t t | |	 ƒ t d ƒ d ƒ t | | ƒ t | d
 d t | | ƒ t | d
 d t | | ƒ t | d
 d t | | ƒ t |	 d
 d t | |	 ƒ t d  ƒ d ƒ g } t	 | | ƒ t
 d	 d	 g f k sit ‚ t t |  | ƒ | | ƒ d t | | ƒ | ƒ d |  | ƒ d	 ƒ t t | | ƒ | | ƒ d t |  | ƒ | ƒ d | | ƒ d	 ƒ f } t |  | ƒ t t | t d ƒ d
 t d ƒ d
 ƒ t t | t d ƒ d
 t d ƒ d
 ƒ t t | t d ƒ d
 t d ƒ d
 ƒ t t | t d ƒ d
 t d ƒ d
 ƒ ƒ t | | ƒ t t | t d ƒ d
 t d ƒ d
 ƒ t t | t d ƒ d
 t d ƒ d
 ƒ t t | t d ƒ d
 t d ƒ d
 ƒ t t | t d ƒ d
 t d ƒ d
 ƒ ƒ g } t	 | | ƒ t
 d	 d	 g f k s“t ‚ t t |  | ƒ | | ƒ d | t | | ƒ | ƒ d | | ƒ ƒ t t | | ƒ | | ƒ d | t |  | ƒ | ƒ d |  | ƒ ƒ f } t d ƒ d t d! ƒ d t t ƒ t t d ƒ d t d! ƒ d | d
 ƒ d
 t d t d ƒ | d
 d
 ƒ | }
 t d ƒ d t d! ƒ d t t ƒ t t d ƒ d t d! ƒ d | d
 ƒ d
 t d" t d ƒ | d
 d
 ƒ | } t |  | ƒ t | | d t |
 d t | ƒ t | | ƒ t | | d t d ƒ t |
 d t d ƒ t | ƒ g } t	 | | ƒ t
 d	 d	 g f k s¹t ‚ t t |  | ƒ | ƒ d# |  | ƒ ƒ t t | | ƒ | ƒ d$ |  | ƒ d | | ƒ ƒ t t | | ƒ | ƒ d |  | ƒ d | | ƒ d | | ƒ ƒ f } t |  | ƒ t t d# | ƒ ƒ t | | ƒ d$ t t d# | ƒ d% t t d | ƒ ƒ t | | ƒ d& t t d# | ƒ d' d t t d | ƒ d t t d | ƒ ƒ g } t	 | | ƒ t
 d	 d	 d	 g f k s6t ‚ t t |  | ƒ | ƒ d | | ƒ d( | | ƒ ƒ t t | | ƒ | ƒ d | | ƒ d |  | ƒ ƒ t t | | ƒ | ƒ d( |  | ƒ d | | ƒ ƒ f } t |  | ƒ d t t d) ƒ t t t d) ƒ | ƒ d t d d* t d t t d) ƒ | ƒ ƒ t | | ƒ d( t t d) ƒ t t t d) ƒ | ƒ d+ t d d t d t t d) ƒ | ƒ ƒ t | | ƒ d t t d) ƒ d, t d d( t d t t d) ƒ | ƒ d( t d t t t d) ƒ | ƒ ƒ g } t	 | | ƒ t
 d	 d	 d	 g f k s=t ‚ t d t |  | ƒ | ƒ d4 | | ƒ | | ƒ ƒ t d t | | ƒ | ƒ d5 | | ƒ |  | ƒ ƒ t d t | | ƒ | ƒ d6 |  | ƒ | | ƒ ƒ f } t |  | ƒ t d t d
 ƒ t t d t d
 ƒ | ƒ d t d d- t d t d t d
 ƒ | ƒ ƒ t | | ƒ t d t d
 ƒ t t d t d
 ƒ | ƒ d. t d/ d t d t d t d
 ƒ | ƒ ƒ t | | ƒ t d t d
 ƒ d0 t d1 d2 t d1 t d t d
 ƒ | ƒ d t d d t d t d t d
 ƒ | ƒ ƒ g } t	 | | ƒ t
 d	 d	 d	 g f k sdt ‚ t t |  | ƒ | ƒ d |  | ƒ | | ƒ ƒ t t | | ƒ | ƒ d
 |  | ƒ d
 | | ƒ | | ƒ ƒ t t | | ƒ | ƒ d |  | ƒ | | ƒ ƒ f } t |  | ƒ t t d
 | ƒ t | t d
 | ƒ t t d
 | ƒ t | d
 t d
 | ƒ d
 t | t d
 | ƒ t t d
 | ƒ ƒ t | | ƒ t t d
 | ƒ t | t d
 | ƒ t t d
 | ƒ t | d
 t d
 | ƒ d
 t | t d
 | ƒ ƒ t | | ƒ d
 t t d
 | ƒ d
 t | t d
 | ƒ t t d
 | ƒ t | d
 t d
 | ƒ t | t d
 | ƒ t t d
 | ƒ ƒ g } t	 | | ƒ t
 d	 d	 d	 g f k sÑt ‚ t t |  | ƒ | ƒ d |  | ƒ | | ƒ d
 | | ƒ ƒ t t | | ƒ | ƒ d
 |  | ƒ | | ƒ d
 | | ƒ ƒ t t | | ƒ | ƒ d |  | ƒ d | | ƒ ƒ f } t |  | ƒ t t d
 | ƒ t t | ƒ d t | ƒ t d t | ƒ t | ƒ ƒ t | | ƒ t t | ƒ d t | ƒ t d t | ƒ t | ƒ ƒ t | | ƒ t t d
 | ƒ d t t | ƒ d t t | ƒ ƒ g } t	 | | ƒ t
 d	 d	 d	 g f k s˜t ‚ t t |  | ƒ | ƒ |  | ƒ | | ƒ d ƒ t t | | ƒ | ƒ | | ƒ d ƒ f } t |  | ƒ t t d3 d t d | t d! ƒ d ƒ ƒ t | | ƒ d3 d t d | t d! ƒ d ƒ t |  | ƒ t t d3 d3 d t d | t d! ƒ d ƒ ƒ t | | ƒ d3 d t d | t d! ƒ d ƒ t |  | ƒ t t t d3 d t d | t d! ƒ d ƒ ƒ t | | ƒ t d3 d t d | t d! ƒ d ƒ t |  | ƒ t t t d3 d t d | t d! ƒ d ƒ ƒ t | | ƒ t d3 d t d | t d! ƒ d ƒ g } t	 | | ƒ t
 d	 d	 g f k sß t ‚ t t |  | ƒ | ƒ t d |  | ƒ ƒ | | ƒ d ƒ t t | | ƒ | ƒ | | ƒ d ƒ f } t |  | ƒ t t d d3 d t d | t d! ƒ d ƒ d ƒ t | | ƒ d3 d t d | t d! ƒ d ƒ t |  | ƒ t t d d3 d t d | t d! ƒ d ƒ d ƒ t | | ƒ d3 d t d | t d! ƒ d ƒ t |  | ƒ t t d t d3 d t d | t d! ƒ d ƒ d ƒ t | | ƒ t d3 d t d | t d! ƒ d ƒ t |  | ƒ t t d t d3 d t d | t d! ƒ d ƒ d ƒ t | | ƒ t d3 d t d | t d! ƒ d ƒ g } t	 | | ƒ t
 d	 d	 g f k sN#t ‚ t |  | ƒ | t |  | ƒ | ƒ t |  | ƒ | ƒ t | | ƒ | ƒ ƒ t | | ƒ | t | | ƒ | ƒ t | | ƒ | ƒ d
 ƒ f } t t |  | ƒ t t t | ƒ t | | ƒ t d
 t | ƒ g ƒ } t	 | | ƒ t
 d	 d	 g f k sJ$t ‚ d  S(7   Ns   x, y, zR=   R?   i	   i   iúÿÿÿi   i   i    i   i   i)   i±  i+   i'   iþÿÿÿi   i   i   i   iQ   i:   i¹   iM   i/   i   i   im   i   iµ   i   i·   i   iýÿÿÿi   i   i   iÑ   iØ   i   i³   i‚   iÆÿÿÿiùÿÿÿi¤   iÍÿÿÿi
   i÷ÿÿÿi   i   iÿÿÿÿi   i   i   (   R!   R   R   R	   R   RA   R   R   RB   R0   R@   RC   R   R   R   R   Rz   Rƒ   R„   R   R   R   R‰   R   R   R   (   RD   RE   RF   R?   Rp   Ro   t   root0t   root1t   root2t   root3t   I1t   I2(    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_checksysodesolØ  sÖ    PNh'lTWb'dXN<'lDl'hVp'tFHD'}MMG'‰I]f'nf€'z&%%$tŽ'Œ¸³'Œz{~'ŸZZ*Ÿddv*Ÿll†*¡Ž|˜*³Y‘*Zlntx'dts|'Hc          C   s©  t  d d t ƒ\ }  } } t  d ƒ \ } } d t |  | ƒ | ƒ d | | ƒ | | ƒ d t | | ƒ | ƒ | | ƒ |  | ƒ d t | | ƒ | ƒ |  | ƒ | | ƒ f } t d t d t d	 | d d t t ƒ t d	 | d d t t ƒ | |  | ƒ f ƒ t t d
 ƒ | d
 ƒ t d t d t d | d t d t ƒ t d | d t d t ƒ | | | ƒ f ƒ t t d ƒ | d ƒ t d t d t d | d d t t ƒ t d | d d t t ƒ | | | ƒ f ƒ t t d ƒ | d ƒ g } g  t	 t
 | ƒ | ƒ D] \ } } | j | ƒ ^ q*sQt ‚ d t |  | ƒ | ƒ d | | ƒ | | ƒ t | ƒ d t | | ƒ | ƒ | | ƒ |  | ƒ t | ƒ d t | | ƒ | ƒ |  | ƒ | | ƒ t | ƒ f }	 t d t d t d | d t d t ƒ t d | d t d t ƒ | |  | ƒ f ƒ t t d ƒ t | ƒ d ƒ t d t d t d	 | d d t t ƒ t d	 | d d t t ƒ | | | ƒ f ƒ t t d
 ƒ t | ƒ d
 ƒ t d t d t d | d d t t ƒ t d | d d t t ƒ | | | ƒ f ƒ t t d ƒ t | ƒ d ƒ g }
 g  t	 t
 |	 ƒ |
 ƒ D] \ } } | j | ƒ ^ q~s¥t ‚ d  S(   Ns   x, y, zR=   s   t ui   i   i   i   i   iüÿÿÿi   iúÿÿÿi
   iöÿÿÿi   (   R!   R   R   R	   R   R   RA   RB   Rƒ   Rl   R   t   dummy_eqRC   R   R   (   RD   RE   RF   R?   Rr   RM   RN   R}   t   jRO   RP   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_nonlinear_3eq_order1Y  s    ˆ[`TP=¦^cZVc          C   s  d d l  m }  t t d „  ƒ t t d „  ƒ t t t ƒ j t ƒ t t t t	 ƒ t ƒ ƒ t
 t t ƒ j t ƒ t t t	 ƒ j t ƒ d f k sœ t ‚ t t t ƒ j t ƒ t t t ƒ t ƒ ƒ t k	 sÕ t ‚ t t t ƒ j t ƒ t t t ƒ t ƒ ƒ t
 d f k st ‚ t t t ƒ d d t t ƒ d t t ƒ t d	 ƒ } t t | j t ƒ | ƒ t d	 f k szt ‚ t t | j t ƒ t t t ƒ ƒ | ƒ t d	 f k s·t ‚ t t | j t d ƒ | ƒ t d	 f k sçt ‚ t t | j t d ƒ t t t ƒ ƒ | ƒ t d	 f k s't ‚ t t | j t d
 ƒ | ƒ t d	 f k sWt ‚ t t | j t d
 ƒ t t t ƒ ƒ | ƒ t d	 f k s—t ‚ t t | j t d
 ƒ t t t ƒ t t t ƒ ƒ ƒ t
 d t d t t ƒ d d t t ƒ t t ƒ d t t ƒ d d t d t t ƒ d d f k s>t ‚ t t t t t ƒ ƒ t t ƒ t t t t t ƒ ƒ t ƒ ƒ t d	 f k s’t ‚ t t t t t ƒ ƒ t t ƒ t t t t t ƒ ƒ t ƒ d t
 ƒt d	 f k sìt ‚ t t t ƒ j t d ƒ t t t ƒ t t t ƒ t t t ƒ t t t ƒ t t t ƒ t t t t d ƒ g ƒ t d	 f t d	 f t
 t f g k sŠt ‚ t t t ƒ j t d ƒ t t t t ƒ t t t ƒ t t t ƒ t t t ƒ t t t ƒ t t t t d ƒ g ƒ ƒ t t d	 f t d	 f t
 t f g ƒ k s4t ‚ t t t ƒ j t ƒ d t t ƒ d t t t ƒ d t ƒ ƒ t d	 f t d	 f g k s•t ‚ t t t ƒ j t ƒ t t ƒ t t t t ƒ t t ƒ ƒ ƒ t d	 f k sèt ‚ t t t t ƒ t ƒ t t ƒ t t t ƒ j t ƒ } t t t ƒ t t t t ƒ t ƒ ƒ } t | | ƒ d j t t ƒ ƒ svt ‚ t t t t t t ƒ t ƒ t ƒ t t t ƒ ƒ } t t t ƒ t t t t ƒ t t ƒ |  t ƒ ƒ } t | | d d d t
 ƒd	 st ‚ d  S(   Niÿÿÿÿ(   R$   c           S   s1   t  t t t ƒ j t ƒ t t t t ƒ t ƒ ƒ S(   N(   R(   R:   RD   RE   R   R	   (    (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   s  Rc   c           S   s:   t  t t ƒ j t ƒ t t t t ƒ t ƒ t t t ƒ ƒ S(   N(   R(   R:   RD   R   R	   RE   (    (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   t  s   $i   i   i   i   i    i   i<   i   i	   t   solve_for_funct   order(   t   sympyR$   R6   t
   ValueErrorR(   R:   RD   R   R	   RE   t   FalseRC   R@   Rw   R   R   RA   RB   R   Ru   R   (   R$   RN   RQ   RR   t   eqnRo   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_checkodesoln  sH    -?9?9-=0@0@4p??2B*5E0@!S;*)57c             sI  t  t t  ƒ j t  ƒ t t  ƒ ‰  t ˆ  d d ƒ}  t ˆ  d d d t ƒ} t ˆ  d d ƒ} d d d d d	 d
 d d d d d d d d d d d d d g } d d	 d d d d d d d d d g } t |  j ƒ  ƒ | k sã t ‚ |  d t ˆ  t t  ƒ ƒ k st ‚ |  d t	 t t  ƒ t
 t  ƒ k s1t ‚ t ˆ  d d ƒt	 t t  ƒ t
 t  ƒ k sbt ‚ |  d d k sxt ‚ |  d d k sŽt ‚ |  d j t ƒ s¨t ‚ |  d j t ƒ sÂt ‚ |  d j t ƒ sÜt ‚ |  d j t ƒ söt ‚ |  d
 j t ƒ st ‚ |  d j t ƒ s*t ‚ |  d j t ƒ sCt ‚ |  d j t ƒ s\t ‚ |  d	 j t ƒ sut ‚ |  d j t ƒ sŽt ‚ |  d j t ƒ s§t ‚ t | j ƒ  ƒ | k sÅt ‚ | d t ˆ  t t  ƒ ƒ k sêt ‚ | d t	 t t  ƒ t
 t  ƒ k st ‚ t ˆ  d d d t ƒt	 t t  ƒ t
 t  ƒ k sJt ‚ | d d k s`t ‚ | d d k svt ‚ |  d | d k st ‚ |  d | d k sªt ‚ |  d
 | d
 k sÄt ‚ | d j t ƒ sÞt ‚ | d j t ƒ søt ‚ | d j t ƒ st ‚ | d j t ƒ s,t ‚ | d
 j t ƒ sFt ‚ | d j t ƒ s`t ‚ | d j t ƒ syt ‚ | d j t ƒ s’t ‚ | d	 j t ƒ s«t ‚ | d j t ƒ sÄt ‚ | d j t ƒ sÝt ‚ t | j ƒ  ƒ | k sût ‚ t t ‡  f d †  ƒ t t ‡  f d †  ƒ t t t  ƒ j t  ƒ d t t  ƒ d d d ƒd t t t  ƒ j t  ƒ d t t  ƒ d d d ƒk s—t ‚ t t t  ƒ t t  ƒ j t  ƒ t t  ƒ j t  ƒ d t t  ƒ d d ƒt	 t t  ƒ t
 t t t  ƒ j t  ƒ d t t d t  ƒ ƒ t  ƒ t t d t  ƒ ƒ ƒ k sEt ‚ d  S(   Nt   hintR{   R   t   all_Integralt	   1st_exactt   1st_exact_Integralt   1st_homogeneous_coeff_bestt(   1st_homogeneous_coeff_subs_dep_div_indept1   1st_homogeneous_coeff_subs_dep_div_indep_Integralt(   1st_homogeneous_coeff_subs_indep_div_dept1   1st_homogeneous_coeff_subs_indep_div_dep_Integralt
   1st_lineart   1st_linear_Integralt   almost_lineart   almost_linear_Integralt   bestt	   best_hintt   defaultt	   lie_groupt   nth_linear_euler_eq_homogeneousR›   t	   separablet   separable_Integralc              s   t  ˆ  d d ƒS(   NR¡   t   notarealhint(   R   (    (   Rp   (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   Ø  Rc   c              s   t  ˆ  d d ƒS(   NR¡   t	   Liouville(   R   (    (   Rp   (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   Ù  Rc   i   i   (   RD   R:   R   R   Rž   t   sortedt   keysRC   R3   R	   RA   Ru   R   R6   R   R   R   (   t   at   bt   cR¸   t   Integral_keys(    (   Rp   s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_dsolve_options›  s†    #		%)1%)74<B)c          C   s
  t  t t ƒ j t d ƒ t t ƒ ƒ d* k s3 t ‚ t  t t ƒ t t ƒ ƒ d+ k sZ t ‚ t  t t t ƒ j t ƒ d	 ƒ t t ƒ ƒ d, k s“ t ‚ t  t t ƒ j t ƒ d t t ƒ ƒ d- k sÇ t ‚ t  t t t ƒ j t ƒ t t ƒ t ƒ t t ƒ ƒ }  t  t t ƒ j t ƒ t t ƒ t t ƒ t t ƒ t t t ƒ t t ƒ ƒ } t  t t ƒ j t ƒ t t ƒ t t ƒ t t ƒ t t t ƒ t t ƒ ƒ } |  d. k s°t ‚ | | k oÇd/ k n sÒt ‚ t  d t t t ƒ t t ƒ j t ƒ d t t t ƒ d t t ƒ t t ƒ ƒ d0 k s4t ‚ d t  d t t ƒ j t ƒ t t ƒ d t t ƒ t d t d t t ƒ ƒ k st ‚ t t d  „  ƒ t	 d! ƒ } t  t t ƒ j t ƒ | t t ƒ | t t t ƒ d t t ƒ | t t ƒ | t t t ƒ t t t ƒ j t ƒ | t t ƒ | t t t ƒ t
 t t ƒ ƒ d1 k set ‚ d2 } t  t t t ƒ t t ƒ t t t ƒ t ƒ ƒ | k s©t ‚ t  t t t ƒ t t ƒ t t t ƒ t ƒ t t ƒ d' t ƒ| k söt ‚ t  t d t d t t ƒ j t ƒ d	 ƒ t t ƒ ƒ d3 k s;t ‚ t  t d t t ƒ d t t ƒ j t ƒ d	 ƒ t t ƒ ƒ d4 k s†t ‚ t  t t t t ƒ t ƒ t t ƒ t d	 ƒ t t ƒ ƒ d5 k sÍt ‚ t t  t t t ƒ d( ƒ t t ƒ d) t ƒt ƒ st ‚ d  S(6   Ni   t   nth_algebraict%   nth_linear_constant_coeff_homogeneousR²   R¶   t   2nd_power_series_ordinaryt   nth_algebraic_Integralt   Liouville_Integrali    R³   Rª   R¥   R¨   R¦   t   1st_power_seriesR±   R´   R«   R©   R§   t	   BernoulliR¬   t3   nth_linear_constant_coeff_undetermined_coefficientst1   nth_linear_constant_coeff_variation_of_parameterst   Bernoulli_IntegralR­   t:   nth_linear_constant_coeff_variation_of_parameters_Integrali   t   Riccati_special_minus2i   iþÿÿÿc           S   s5   t  t t t t ƒ j t ƒ j t ƒ t t t ƒ ƒ S(   N(   R)   RD   R:   RE   R   (    (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb     s   RG   R£   R¤   t<   nth_linear_euler_eq_nonhomogeneous_undetermined_coefficientst:   nth_linear_euler_eq_nonhomogeneous_variation_of_parameterstC   nth_linear_euler_eq_nonhomogeneous_variation_of_parameters_Integralt   prepi   t   dict(   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±   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´   R«   (   R¾   R³   RÃ   R±   RÁ   R´   (   RÃ   R±   (   R)   R:   RD   R   RC   R	   R   R6   R   R   RF   R@   t
   isinstanceRÎ   (   R¹   Rº   R»   RG   t   ans(    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_classify_odeâ  s¨    $      '*            %  7PP        "P Y§                 >86   < 8c              s–  t  t ƒ j t t ƒ t  t ƒ ‰  i d t 6‰ t t ‡  ‡ f d †  ƒ i d t d ƒ 6‰ t t ‡  ‡ f d †  ƒ i d t  t ƒ 6‰ t t ‡  ‡ f d †  ƒ i d t  d d ƒ 6‰ t t ‡  ‡ f d †  ƒ i t  d ƒ t  d ƒ 6‰ t t ‡  ‡ f d †  ƒ i d t  d ƒ 6‰ t ˆ  t  t ƒ d ˆ ƒi d t t ƒ j t ƒ j t d ƒ 6‰ t t ‡  ‡ f d	 †  ƒ i d t  t ƒ j t ƒ j t t ƒ 6‰ t t ‡  ‡ f d
 †  ƒ i d t  t ƒ j t ƒ j t d ƒ 6‰ t t ‡  ‡ f d †  ƒ i d t  t t ƒ j t ƒ j t d ƒ 6‰ t t ‡  ‡ f d †  ƒ i d t	 t  t ƒ t t ƒ j t d ƒ 6‰ t t ‡  ‡ f d †  ƒ i t  d ƒ t  t ƒ j t ƒ j t d ƒ 6‰ t t ‡  ‡ f d †  ƒ i d t  t ƒ j t ƒ j t d ƒ 6‰ t ˆ  t  t ƒ d ˆ ƒi d t t ƒ j t ƒ j t t ƒ 6‰ t t ‡  ‡ f d †  ƒ i d t  t ƒ j t ƒ j t t ƒ 6‰ t t ‡  ‡ f d †  ƒ i d t  t t ƒ j t ƒ j t t ƒ 6‰ t t ‡  ‡ f d †  ƒ i d t	 t  t ƒ t t
 ƒ j t t ƒ 6‰ t t ‡  ‡ f d †  ƒ i t  d ƒ t  t ƒ j t ƒ j t t ƒ 6‰ t t ‡  ‡ f d †  ƒ i d t  t ƒ j t ƒ j t t ƒ 6‰ t ˆ  t  t ƒ d ˆ ƒd  S(   Ni   c              s   t  ˆ  t t ƒ d ˆ ƒS(   Nt   ics(   R)   R:   RD   (    (   Rp   RÒ   (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   J  Rc   i    c              s   t  ˆ  t t ƒ d ˆ ƒS(   NRÒ   (   R)   R:   RD   (    (   Rp   RÒ   (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   T  Rc   c              s   t  ˆ  t t ƒ d ˆ ƒS(   NRÒ   (   R)   R:   RD   (    (   Rp   RÒ   (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   X  Rc   c              s   t  ˆ  t t ƒ d ˆ ƒS(   NRÒ   (   R)   R:   RD   (    (   Rp   RÒ   (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   \  Rc   c              s   t  ˆ  t t ƒ d ˆ ƒS(   NRÒ   (   R)   R:   RD   (    (   Rp   RÒ   (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   a  Rc   RÒ   c              s   t  ˆ  t t ƒ d ˆ ƒS(   NRÒ   (   R)   R:   RD   (    (   Rp   RÒ   (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   n  Rc   c              s   t  ˆ  t t ƒ d ˆ ƒS(   NRÒ   (   R)   R:   RD   (    (   Rp   RÒ   (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   r  Rc   c              s   t  ˆ  t t ƒ d ˆ ƒS(   NRÒ   (   R)   R:   RD   (    (   Rp   RÒ   (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   v  Rc   c              s   t  ˆ  t t ƒ d ˆ ƒS(   NRÒ   (   R)   R:   RD   (    (   Rp   RÒ   (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   z  Rc   c              s   t  ˆ  t t ƒ d ˆ ƒS(   NRÒ   (   R)   R:   RD   (    (   Rp   RÒ   (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   ~  Rc   c              s   t  ˆ  t t ƒ d ˆ ƒS(   NRÒ   (   R)   R:   RD   (    (   Rp   RÒ   (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   ƒ  Rc   c              s   t  ˆ  t t ƒ d ˆ ƒS(   NRÒ   (   R)   R:   RD   (    (   Rp   RÒ   (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb     Rc   c              s   t  ˆ  t t ƒ d ˆ ƒS(   NRÒ   (   R)   R:   RD   (    (   Rp   RÒ   (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   “  Rc   c              s   t  ˆ  t t ƒ d ˆ ƒS(   NRÒ   (   R)   R:   RD   (    (   Rp   RÒ   (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   —  Rc   c              s   t  ˆ  t t ƒ d ˆ ƒS(   NRÒ   (   R)   R:   RD   (    (   Rp   RÒ   (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   ›  Rc   c              s   t  ˆ  t t ƒ d ˆ ƒS(   NRÒ   (   R)   R:   RD   (    (   Rp   RÒ   (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb      Rc   (   R:   RD   R   R6   R   R;   R)   Ry   RE   R   RF   (    (    (   Rp   RÒ   s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_classify_ode_icsD  sN    "	(((++.(((++.(c    D   	   C   sü(  t  d d t ƒ\ }  } } } t  d d t ƒ\	 } } } } } }	 }
 } } t  d d t ƒ\ } } } } } } t  d d t ƒ\ } } } } } } } t  d d t ƒ\ } } } t  d ƒ } t | | ƒ | ƒ } t | | ƒ | ƒ } t | | ƒ | ƒ }  t | | ƒ | | ƒ }! t | | ƒ | | ƒ }" t | | ƒ | | ƒ }# t t | | ƒ | ƒ d	 | | | ƒ d
 | | ƒ ƒ t t | | ƒ | ƒ d
 | | ƒ d	 | | | ƒ ƒ f }$ i d
 d 6i d | d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d | d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d 6d d 6| | ƒ | | ƒ g d 6t d 6d | | | ƒ d
 | | ƒ t | | ƒ | ƒ d | | | ƒ d
 | | ƒ t | | ƒ | ƒ g d 6i d | | ƒ 6d | | ƒ 6d 6}% t |$ ƒ |% k sOt ‚ t |! |  | | ƒ | | ƒ t |" | | |  | | ƒ ƒ f }& i i d
 | | ƒ 6d
 | | ƒ 6d 6d d 6t d 6|  | | ƒ | t | | ƒ | ƒ t | | ƒ | | ƒ |  | | ƒ | t | | ƒ | ƒ t | | ƒ | | ƒ g d 6d
 d 6i d d | | ƒ d f 6d d | | ƒ d
 f 6d d | | ƒ d f 6d d | | ƒ d
 f 6d d | | ƒ d
 f 6d d | | ƒ d
 f 6|  d | | ƒ d f 6| d | | ƒ d f 6d d | | ƒ d f 6| d | | ƒ d f 6d d | | ƒ d f 6|  d | | ƒ d f 6d 6| | ƒ | | ƒ g d 6}' t |& ƒ |' k st ‚ t |! d | d | d | | ƒ d | | ƒ d t t	 | ƒ ƒ t |" d	 | d | d | | ƒ d | | ƒ d
 t t	 | ƒ ƒ f }( i d
 d 6i d d | | ƒ d
 f 6d d | | ƒ d
 f 6d d | | ƒ d f 6d	 d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d
 f 6d d | | ƒ d
 f 6d d | | ƒ d f 6d 6d d 6| | ƒ | | ƒ g d 6t d 6d | | ƒ d | | ƒ d t t	 | ƒ d t | | ƒ | ƒ d t | | ƒ | ƒ t | | ƒ | | ƒ d | | ƒ d | | ƒ d
 t t	 | ƒ d	 t | | ƒ | ƒ d t | | ƒ | ƒ t | | ƒ | | ƒ g d 6i d
 | | ƒ 6d
 | | ƒ 6d 6}) t |( ƒ |) k s„t ‚ t d | d
 d | d d
 |! d	 | | ƒ d | | ƒ ƒ t d | d
 d | d d
 |" | | ƒ d | | ƒ ƒ f }* i d
 d 6i d d | | ƒ d
 f 6d d | | ƒ d
 f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d  d | | ƒ d f 6d! d | | ƒ d f 6d" d | | ƒ d f 6d# | d d$ | d d% | d
 d& | d d | | ƒ d
 f 6d# | d d$ | d d% | d
 d& | d d | | ƒ d
 f 6d d | | ƒ d f 6d 6d' d 6| | ƒ | | ƒ g d 6t d 6d | d
 d | d d
 t | | ƒ | | ƒ d	 | | ƒ d | | ƒ d | d
 d | d d
 t | | ƒ | | ƒ | | ƒ d | | ƒ g d 6i d
 | | ƒ 6d
 | | ƒ 6d 6}+ t |* ƒ |+ k swt ‚ t t | | ƒ | ƒ | | ƒ | | ƒ d ƒ t t | | ƒ | ƒ d
 | | ƒ d	 | | ƒ d( ƒ f }, i d
 d 6i d  d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d  d | | ƒ d f 6d d | | ƒ d f 6d 6d) d 6| | ƒ | | ƒ g d 6t d 6| | ƒ | | ƒ t | | ƒ | ƒ d d | | ƒ d	 | | ƒ t | | ƒ | ƒ d( g d 6i d | | ƒ 6d | | ƒ 6d 6}- t |, ƒ |- k skt ‚ t | t |  | | ƒ ƒ | | | ƒ | | ƒ ƒ ƒ t | | | | ƒ ƒ | | | ƒ | | ƒ ƒ ƒ f }. i d
 d 6i d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d 6d) d 6| | ƒ | | ƒ g d 6t
 d 6| | | ƒ | | ƒ ƒ t |  | | ƒ ƒ t | | ƒ | ƒ | | | ƒ | | ƒ ƒ | | | ƒ ƒ t | | ƒ | ƒ g d 6i d | | ƒ 6d | | ƒ 6d 6}/ t |. ƒ |/ k s~t ‚ t | | | ƒ d
 | | ƒ | | ƒ ƒ t | | | ƒ | | ƒ ƒ f }0 i d
 d 6i d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d  | | ƒ d | | ƒ d f 6d d | | ƒ d f 6d  | | ƒ d | | ƒ d f 6d d | | ƒ d f 6d 6d d 6| | ƒ | | ƒ g d 6t
 d 6| | ƒ d
 t | | ƒ | ƒ | | ƒ | | ƒ | | ƒ | | ƒ t | | ƒ | ƒ g d 6i d | | ƒ 6d | | ƒ 6d 6}1 t |0 ƒ |1 k set ‚ t | | | | ƒ ƒ | | | ƒ ƒ | | | ƒ | | ƒ | ƒ ƒ t | | | | ƒ ƒ | | | ƒ ƒ | | | ƒ | | ƒ | ƒ ƒ f }2 i | | ƒ | | ƒ g d 6t
 d 6d d 6| | | ƒ ƒ | | | ƒ ƒ | | | ƒ | | ƒ | ƒ t | | ƒ | ƒ | | | ƒ ƒ | | | ƒ ƒ | | | ƒ | | ƒ | ƒ t | | ƒ | ƒ g d 6i d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d 6i d | | ƒ 6d | | ƒ 6d 6d
 d 6}3 t |2 ƒ |3 k s¼t ‚ t | d | | ƒ d | | ƒ ƒ t | d | | ƒ d | | ƒ ƒ t |  d | | ƒ d | | ƒ ƒ f }4 i d d 6i d d | | ƒ d f 6d d
 | | ƒ d f 6d d
 | | ƒ d f 6d d | | ƒ d f 6d d
 | | ƒ d f 6d d | | ƒ d f 6d d
 | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d* d | | ƒ d f 6d+ d | | ƒ d f 6d d | | ƒ d f 6d, d
 | | ƒ d f 6d d
 | | ƒ d f 6d d | | ƒ d f 6d 6d) d 6| | ƒ | | ƒ | | ƒ g d 6t d 6d* | | ƒ d | | ƒ t | | ƒ | ƒ d | | ƒ d | | ƒ t | | ƒ | ƒ d, | | ƒ d | | ƒ t | | ƒ | ƒ g d 6i d | | ƒ 6d | | ƒ 6d | | ƒ 6d 6}5 t |4 ƒ |5 k sÕt ‚ |! t | ƒ | | | | ƒ t | ƒ | | | | ƒ |" | d
 | | | | ƒ | | | | | ƒ f }6 i d
 d 6i d d | | ƒ d
 f 6d d | | ƒ d
 f 6t | ƒ d | | ƒ d f 6| d d | | ƒ d f 6| t | ƒ d | | ƒ d f 6| t | ƒ d | | ƒ d f 6| d
 d | | ƒ d f 6| d | | ƒ d f 6t | ƒ d | | ƒ d f 6d d | | ƒ d
 f 6d d | | ƒ d
 f 6| d
 d | | ƒ d f 6d 6d- d 6| | ƒ | | ƒ g d 6t d 6| t | | ƒ | ƒ | | ƒ t | ƒ | t | | ƒ | ƒ | | ƒ t | ƒ t | | ƒ | | ƒ | d
 | t | | ƒ | ƒ | | ƒ | | t | | ƒ | ƒ | | ƒ t | | ƒ | | ƒ g d 6i d
 | | ƒ 6d
 | | ƒ 6d 6}7 t |6 ƒ |7 k sÊt ‚ t | | | ƒ | | ƒ d ƒ t | | | ƒ d	 ƒ f }8 i d
 d 6i | | ƒ d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d 6d. d 6| | ƒ | | ƒ g d 6t
 d 6| | ƒ | | ƒ d t | | ƒ | ƒ | | ƒ d	 t | | ƒ | ƒ g d 6i d | | ƒ 6d | | ƒ 6d 6}9 t |8 ƒ |9 k sˆt ‚ t | | | ƒ ƒ t | | | ƒ ƒ f }: i d
 d 6i d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d  d | | ƒ d f 6d d | | ƒ d f 6d  d | | ƒ d f 6d d | | ƒ d f 6d 6d. d 6| | ƒ | | ƒ g d 6t d 6| | ƒ t | | ƒ | ƒ | | ƒ t | | ƒ | ƒ g d 6i d | | ƒ 6d | | ƒ 6d 6}; t |: ƒ |; k st ‚ t | | | ƒ | | ƒ t | ƒ d
 ƒ t | | | ƒ d
 t | ƒ d
 ƒ f }< i d
 d 6i | | ƒ t | ƒ d
 d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6| | ƒ t | ƒ d
 d | | ƒ d f 6d d | | ƒ d f 6d 6d d 6| | ƒ | | ƒ g d 6t
 d 6| | ƒ | | ƒ t | ƒ d
 t | | ƒ | ƒ | | ƒ d
 t | ƒ d
 t | | ƒ | ƒ g d 6i d | | ƒ 6d | | ƒ 6d 6}= t |< ƒ |= k s$t ‚ t | d/ | | ƒ ƒ t | d0 | | ƒ d | | ƒ ƒ t |  d	 | | ƒ d | | ƒ d | | ƒ ƒ f }> i d d 6i d* d | | ƒ d f 6d d
 | | ƒ d f 6d d
 | | ƒ d f 6d1 d | | ƒ d f 6d d
 | | ƒ d f 6d d | | ƒ d f 6d+ d
 | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d2 d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d
 | | ƒ d f 6d! d
 | | ƒ d f 6d d | | ƒ d f 6d 6d. d 6| | ƒ | | ƒ | | ƒ g d 6t d 6d1 | | ƒ t | | ƒ | ƒ d2 | | ƒ d | | ƒ t | | ƒ | ƒ d | | ƒ d | | ƒ d | | ƒ t | | ƒ | ƒ g d 6i d | | ƒ 6d | | ƒ 6d | | ƒ 6d 6}? t |> ƒ |? k s="t ‚ t | d | | ƒ d	 | | ƒ d
 | | ƒ ƒ t | | | ƒ d3 | | ƒ d | | ƒ ƒ t |  d4 | | ƒ d5 | | ƒ d | | ƒ ƒ f }@ i d d 6i d6 d | | ƒ d f 6d d
 | | ƒ d f 6d d
 | | ƒ d f 6d7 d | | ƒ d f 6d d
 | | ƒ d f 6d d | | ƒ d f 6d8 d
 | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d  d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d! d | | ƒ d f 6d d | | ƒ d f 6d9 d
 | | ƒ d f 6d, d
 | | ƒ d f 6d d | | ƒ d f 6d 6d: d 6| | ƒ | | ƒ | | ƒ g d 6t d 6d7 | | ƒ d	 | | ƒ d
 | | ƒ t | | ƒ | ƒ | | ƒ d3 | | ƒ d | | ƒ t | | ƒ | ƒ d9 | | ƒ d5 | | ƒ d | | ƒ t | | ƒ | ƒ g d 6i d | | ƒ 6d | | ƒ 6d | | ƒ 6d 6}A t |@ ƒ |A k s£%t ‚ t d | dA | | ƒ | | ƒ ƒ t d | dB | | ƒ | | ƒ ƒ t d	 |  dC | | ƒ | | ƒ ƒ f }B i d d 6i d d | | ƒ d f 6d d
 | | ƒ d f 6d	 d
 | | ƒ d f 6d d | | ƒ d f 6d d
 | | ƒ d f 6d d | | ƒ d f 6d d
 | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d d | | ƒ d f 6d; d | | ƒ d f 6d< d | | ƒ d f 6d= d | | ƒ d f 6d> d | | ƒ d f 6d d | | ƒ d f 6d? d
 | | ƒ d f 6d d
 | | ƒ d f 6d d | | ƒ d f 6d 6d d 6| | ƒ | | ƒ | | ƒ g d 6t d 6d= | | ƒ d< | | ƒ d t | | ƒ | ƒ d; | | ƒ d; | | ƒ d t | | ƒ | ƒ d? | | ƒ d | | ƒ d	 t | | ƒ | ƒ g d 6i d | | ƒ 6d | | ƒ 6d | | ƒ 6d 6}C t |B ƒ |C k sÈ(t ‚ t |$ d@ | | ƒ | | ƒ g ƒ|% k sø(t ‚ d  S(D   Ns
   k, l, m, nR>   s"   k1, k2, k3, l1, l2, l3, m1, m2, m3s   P, Q, R, p, q, rR=   s   P1, P2, P3, Q1, Q2, R1, R2s   x, y, zR?   i   i   t   no_of_equationiûÿÿÿi    i   iþÿÿÿt
   func_coefft   type3t   type_of_equationt   funct	   is_linearRp   R›   i   i   i	   i   i   i   i   t   type4i#   iÿÿÿÿi÷ÿÿÿiÝÿÿÿi   i8   i9   i   t   type10i   t   type2iýÿÿÿiùÿÿÿiõÿÿÿt   type11t   type1i   i   iëÿÿÿiïÿÿÿi   i    i)   ióÿÿÿiüÿÿÿi×ÿÿÿiàÿÿÿt   type6i   i   iìÿÿÿiñÿÿÿiôÿÿÿt   funcsi   i   i   (   R!   R@   R   R   R	   R   R*   RC   R   R   Rž   R   R   (D   RG   RH   RI   RJ   t   k1t   k2t   k3t   l1t   l2t   l3t   m1t   m2t   m3t   Pt   Qt   Rt   pt   qRn   t   P1t   P2t   P3t   Q1t   Q2t   R1t   R2RD   RE   RF   R?   Rs   t   y1t   z1Rt   t   y2t   z2RM   RN   RO   RP   RQ   RR   RS   RT   RU   RV   RW   RX   RZ   R[   R\   R]   R†   R‡   R^   R_   t   eq11t   sol11t   eq12t   sol12t   eq13t   sol13t   eq14t   sol14t   eq15t   sol15t   eq16t   sol16(    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_classify_sysode¦  sö    -$'    tSvFpB2`So’O„fbqA‚O„„AMtlecK]lecl[Lewi>Ž*‹u‡rO„„ocftVŒn kŽ<ZrRL*ec…Td‡ImrO„„oUt˜O„„Me­rO„„okjc       	   C   sY  t  t t ƒ j t ƒ d t t ƒ t t ƒ d i d t d ƒ 6ƒt t t ƒ t d t d ƒ ƒ k sn t ‚ t  t t ƒ j t ƒ t t ƒ t t ƒ d i d t d ƒ 6ƒt t t ƒ t t ƒ ƒ k sÐ t ‚ t  t t ƒ j t ƒ t t ƒ t t ƒ d i d t t ƒ j t ƒ j t d ƒ 6ƒt t t ƒ t t ƒ ƒ k sGt ‚ t  t t ƒ j t t ƒ t t ƒ t t ƒ d i d t d ƒ 6d t t ƒ j t ƒ j t d ƒ 6ƒt t t ƒ t	 t ƒ t
 t ƒ ƒ k sØt ‚ t  t t ƒ j t ƒ t t ƒ t t ƒ t t ƒ j t ƒ t t ƒ t t ƒ g t t ƒ t t ƒ g d i d t d ƒ 6d t d ƒ 6ƒt t t ƒ t t ƒ t
 t ƒ ƒ t t t ƒ t t ƒ t	 t ƒ ƒ g k sµt ‚ t d t t ƒ d t j t ƒ }  t  |  t t ƒ d i d t d ƒ 6ƒt t t ƒ t t d ƒ t ƒ t t t ƒ t t d ƒ t ƒ g k sOt ‚ t  |  t t ƒ d i d t t ƒ j t ƒ j t d ƒ 6ƒt t t ƒ t t t d ƒ d ƒ t ƒ t t t ƒ t t t d ƒ d ƒ t ƒ g k sít ‚ t
 t t ƒ ƒ t t	 t t ƒ ƒ t t ƒ d t t ƒ j t ƒ }  t  |  t t ƒ d i d t d ƒ 6d d d t ƒt t t
 t t ƒ ƒ t t ƒ d d t d ƒ d ƒ k s©t ‚ t  |  t t ƒ d i d t d ƒ 6d d d t ƒt t t
 t t ƒ ƒ t t ƒ d d t d ƒ d ƒ k st ‚ t t t t ƒ t t t ƒ ƒ g t t ƒ g t g i d t d ƒ 6ƒ i d t 6k s{t ‚ t t t t ƒ t t	 t ƒ t t
 t ƒ ƒ g t t ƒ g t t g i d t d ƒ 6d t t d ƒ 6ƒ i d t 6d t 6k st ‚ t t t t ƒ t t	 t ƒ t t
 t ƒ ƒ g t t ƒ g t t g i d t d ƒ 6d t t ƒ j t ƒ j t d ƒ 6ƒ i d t 6d t 6k s˜t ‚ t t t t ƒ t t	 t ƒ t t
 t ƒ ƒ g t t ƒ g t t g i d t d ƒ 6ƒ i d t 6k st ‚ t  t t ƒ j t ƒ t t ƒ j t d ƒ t d i d t d ƒ 6d t t ƒ j t ƒ j t d ƒ 6ƒt t t ƒ d ƒ t t t ƒ t d d	 t d ƒ g k s°t ‚ t  t t ƒ j t ƒ t t ƒ j t d ƒ t d i d t d ƒ 6ƒt t t ƒ d ƒ t t t ƒ t t t d d	 ƒ g k s8t ‚ t d
 ƒ \ } } } t t t ƒ | | t | t ƒ | | | t | t ƒ | | d ƒ } t  t t t ƒ j t ƒ | t t ƒ d t t ƒ | ƒ t t ƒ d i | t d ƒ 6ƒ| k s	t ‚ t  t t ƒ j t ƒ t t ƒ j t d ƒ t d i d t t ƒ j t ƒ j t d ƒ 6d t d ƒ 6ƒt t t ƒ d ƒ t t t ƒ t d d	 ƒ g k s¦	t ‚ t  t t ƒ j t ƒ t t ƒ j t d ƒ t d i d t d ƒ 6d t t ƒ j t ƒ j t d ƒ 6ƒt t t ƒ d ƒ t t t ƒ t d d	 ƒ g k sH
t ‚ t t d „  ƒ t t d „  ƒ t d ƒ \ } } } t t t ƒ t t t t t d t t d | t d d | ƒ g } t t ƒ g }	 t t t t g }
 i d t d ƒ 6d t t ƒ j t ƒ j t d ƒ 6d t | ƒ j | d ƒ 6d t | ƒ j | d ƒ 6} i d t d ƒ 6d t t ƒ j t ƒ j t d ƒ 6d t t t ƒ j t d ƒ t | ƒ 6d t t t ƒ j t d ƒ t | ƒ 6} t | |	 |
 | ƒ } t | |	 |
 | ƒ } | | k oJi d t 6d t 6| d | d | t 6| | d	 | t 6k n sUt ‚ d  S(   Ni   RÒ   i   i    R¡   R£   R   i   i   s   K r f0c           S   sf   t  t t t ƒ t t t ƒ t t t ƒ ƒ g t t ƒ g t t g i d t d ƒ 6d t t ƒ 6ƒ S(   Ni   i    (	   R1   R	   R:   RD   RA   R   RB   R   R   (    (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   j  Rc   c        	   S   sa   t  t t t ƒ t t t d ƒ ƒ g t t ƒ g t g i d t t ƒ j t ƒ j t d ƒ 6ƒ S(   Ni   i    (   R1   R	   R:   RD   R   RA   R   Ry   (    (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   m  Rc   s   EI q Li   i   (   R   R:   RD   R   R	   R   RC   R   Ry   R   R   R;   R   Rž   R@   R1   RA   RB   R   R!   R6   R   Rƒ   R„   R   (   Rp   t   KRn   t   f0Ro   t   EIRî   t   Lt   solsRà   t	   constantst   ics1t   ics2t   solved_constants1t   solved_constants2(    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_solve_ics4  st    B,bw>SRZ1%1DFXGcc]EAERXgCECOhg;g;L""%(c          C   s¤  t  d ƒ }  t  d ƒ } t d ƒ } t d | t |  | ƒ ƒ |  | ƒ ƒ d k sY t ‚ t | t |  | ƒ | ƒ d | |  | ƒ t | ƒ | |  | ƒ ƒ d k s­ t ‚ t | d |  | ƒ j | | ƒ | t |  | ƒ | ƒ |  | ƒ |  | ƒ ƒ d k s	t ‚ t t | t |  | ƒ ƒ | | ƒ |  | ƒ ƒ d k sFt ‚ t t | t | t |  | ƒ ƒ | | ƒ | ƒ |  | ƒ ƒ d k st ‚ t t |  | ƒ | | ƒ | | ƒ ƒ d k sÃt ‚ t t |  | ƒ | | ƒ t | | ƒ | ƒ |  | ƒ ƒ d k s	t ‚ t t |  | ƒ | | ƒ t | | ƒ | ƒ | | ƒ ƒ d k sOt ‚ t t | t | t |  | ƒ ƒ | | ƒ | ƒ | | ƒ ƒ d k s™t ‚ t t | |  | ƒ | ƒ |  | ƒ ƒ d k sÍt ‚ t | t t | |  | ƒ d | | ƒ ƒ |  | ƒ ƒ d k st ‚ t t | t | t |  | ƒ ƒ | | ƒ | ƒ | | ƒ ƒ d k s\t ‚ t t |  | ƒ | | ƒ | | ƒ ƒ d k st ‚ t t | t |  | ƒ ƒ | | ƒ |  | ƒ ƒ d k sÌt ‚ t t |  | ƒ | | ƒ t | | ƒ | ƒ | | ƒ ƒ d k st ‚ t t | t |  | ƒ | | ƒ | ƒ |  | ƒ ƒ d k sRt ‚ t | t t | t |  | ƒ | ƒ d | | ƒ ƒ |  | ƒ ƒ d k s t ‚ d  S(   NR:   R;   RD   i   i    i   i   (   R   R   R3   R   RC   R   R   R   (   R:   R;   RD   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_ode_orderˆ  s*    5T\=J3FFJ4EJ3=F@c          C   s«  t  t t ƒ j t ƒ d ƒ }  t  d t t ƒ j t ƒ d d ƒ } t  d t t ƒ j t ƒ d ƒ } t  d t t ƒ j t t ƒ t t ƒ d ƒ } t  d t t ƒ j t t ƒ t t ƒ ƒ } t  t d t t ƒ j t ƒ d t t t ƒ t t ƒ t d ƒ } t  t t ƒ j t t ƒ d t t t ƒ t ƒ d t t ƒ d ƒ } t  t t ƒ j t t ƒ d t t t ƒ t ƒ d t t ƒ d ƒ } t  t t ƒ j t t ƒ d t t t ƒ t ƒ d t t ƒ d ƒ } t  d t t ƒ j t ƒ d d ƒ }	 t  t t t ƒ j t ƒ d d ƒ }
 t  t t ƒ t ƒ } t  t t ƒ t d t d ƒ } t  t t ƒ t d t d ƒ } t  t t ƒ t t t d ƒ t t t d ƒ ƒ } t  t t ƒ t t t d ƒ t t t d ƒ ƒ } t  t t ƒ t t t ƒ t d ƒ } t  t t ƒ t t t t ƒ t t ƒ ƒ } t  t t ƒ t t t t d t ƒ ƒ } t  t t ƒ t t t t	 d ƒ ƒ t t t t	 d ƒ ƒ t t ƒ ƒ } t  t t ƒ t t d ƒ } t  t t ƒ t t
 t ƒ ƒ } t |  ƒ | k st ‚ t |  j ƒ | k s t ‚ t | ƒ | k s8t ‚ t | ƒ | k sPt ‚ t | ƒ | k sht ‚ t | ƒ | k s€t ‚ t | ƒ | k s˜t ‚ t | ƒ | k s°t ‚ t | ƒ | k sÈt ‚ t | ƒ | k sàt ‚ t |	 ƒ | k søt ‚ t |
 ƒ | k st ‚ t |  | d d d	 t ƒd s5t ‚ t | | d d d	 t ƒd sZt ‚ t | | d d d	 t ƒd st ‚ t | | d d d	 t ƒd s¤t ‚ t | | d d d	 t ƒd sÉt ‚ t | | d d d	 t ƒd sît ‚ t | | d d d	 t ƒd st ‚ t | | d d d	 t ƒd s8t ‚ t | | d d d	 t ƒd s]t ‚ t |	 | d d d	 t ƒd s‚t ‚ t |
 | d d d	 t ƒd s§t ‚ d  S(
   Ni    i   i   i	   i   i   i   R›   Rš   (   R	   R:   RD   R   R   RA   RB   R   R   R   R   R   RC   Rw   R(   Rž   (   RM   RO   RQ   RS   RU   RW   RZ   R\   R†   R^   Rú   RN   RP   RR   RT   RV   RX   R[   R]   R‡   R_   Rû   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_old_ode_tests¦  sZ    &"/+FFFF&&!!56'-+L%%%%%%%%%%c          C   så   t  t t ƒ j t ƒ t t t ƒ t d ƒ }  t  t t ƒ t t t t d d ƒ t d ƒ t t ƒ t t d ƒ t d ƒ d t t d d ƒ ƒ } t	 |  d d ƒ| k s¼ t
 ‚ t |  | d d d t ƒd sá t
 ‚ d  S(   Ni   R¡   Rª   R›   i   Rš   i    (   R	   R:   RD   R   RA   R   R   R   R   R   RC   R(   Rž   (   Rp   Ro   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_1st_linearÛ  s
    0bc          C   s¯   t  t t t ƒ j t ƒ t t ƒ t t ƒ d d ƒ }  t |  t t ƒ d d ƒ} | t  t t ƒ d t t d t ƒ k s† t ‚ t |  | d d d t ƒd s« t ‚ d  S(   Ni   i    R¡   RÄ   i   R›   Rš   (	   R	   RD   R:   R   R   RA   RC   R(   Rž   (   Rp   Ro   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_Bernoulliä  s    :1c          C   s…   d t  t ƒ j t ƒ t  t ƒ d t  t ƒ t d t d }  t |  t  t ƒ d d ƒ} t |  | d d d t ƒd	 s t ‚ d  S(
   Ni   i   iþÿÿÿR¡   RÉ   R›   i   Rš   i    (   R:   RD   R   R   R(   Rž   RC   (   Rp   Ro   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_Riccati_special_minus2ì  s    Ac       
   C   sU  t  t ƒ t t t ƒ ƒ t t ƒ t  t t ƒ ƒ t t ƒ j t ƒ }  d t t t ƒ d t t ƒ t t ƒ t t t ƒ d t t ƒ j t ƒ } d t t t ƒ t t ƒ d t t ƒ t  t ƒ t  t t ƒ ƒ t t ƒ j t ƒ } t t t ƒ ƒ t t  t t ƒ ƒ t t ƒ d t t ƒ j t ƒ } d t t t ƒ t d t t ƒ d t t ƒ j t ƒ } t t t ƒ t t t t ƒ ƒ d t ƒ t t t ƒ t t t t ƒ ƒ ƒ g } t t t ƒ t	 t t d t
 t t	 t t d ƒ ƒ ƒ ƒ } t t t t ƒ ƒ t t t ƒ t d t ƒ } t t t ƒ t  t ƒ t t t ƒ ƒ t d t t ƒ d t ƒ } t t t t t ƒ ƒ t t ƒ d d t ƒ }	 t t d t t ƒ t t ƒ d d t ƒ }
 t |  t t ƒ d d ƒ| k st ‚ t | t t ƒ d d ƒ| k s/t ‚ t | t t ƒ d d ƒ| k sVt ‚ t | d d ƒ|	 k stt ‚ t | d d d t ƒ|
 k s˜t ‚ t |  | d d d t ƒd	 s½t ‚ t | | d d d t ƒd	 sât ‚ t | | d d d t ƒd	 st ‚ t | |	 d d d t ƒd	 s,t ‚ t | |
 d d d t ƒd	 sQt ‚ d  S(
   Ni   i   i   R¡   R£   R   R›   Rš   i    (   R   RD   R   R:   R   R	   R    RA   R   R   R   R   R   RC   Rž   R(   (   RM   RO   RQ   RS   RU   RN   RP   t   sol2bRR   RT   RV   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_1st_exact1ó  s*    IQYG=SA1E1/'''$%%%%c          C   sæ  t  r t d ƒ n  t t t d t t ƒ d ƒ t d t t ƒ t t ƒ t t d t t ƒ d ƒ t t ƒ j t ƒ }  t |  ƒ } | t t t ƒ t	 d t d t t ƒ d t d ƒ t
 t t ƒ t ƒ d t t ƒ t d t d t t ƒ d t d ƒ d t d t t ƒ d t d ƒ t d t d t t ƒ d t d ƒ t t ƒ t d t t ƒ d t d ƒ d t t ƒ t d t d t t ƒ d t d ƒ d t
 t t ƒ t ƒ t t ƒ t d t t ƒ t d t d t t ƒ d t d ƒ d t t ƒ t d t d t t ƒ d t d ƒ t t ƒ t d t t ƒ d t d ƒ t d t t ƒ t d t d t t ƒ d t d ƒ ƒ k s½t ‚ t |  | d d d t ƒd	 sât ‚ d
 S(   sÏ  
    This is an exact equation that fails under the exact engine. It is caught
    by first order homogeneous albeit with a much contorted solution.  The
    exact engine fails because of a poorly simplified integral of q(0,y)dy,
    where q is the function multiplying f'.  The solutions should be
    Eq(sqrt(x**2+f(x)**2)**3+y**3, C1).  The equation below is
    equivalent, but it is so complex that checkodesol fails, and takes a long
    time to do so.
    s   Too slow for travis.i   i	   i   iåÿÿÿi   R›   Rš   i    N(   R8   R5   RD   R   R:   R   R   R	   R   RA   R   RC   R(   Rž   (   Rp   Ro   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_1st_exact2  s    94ÿ z_Jc          C   sM  t  t ƒ j t ƒ t  t ƒ }  t t  t ƒ j t ƒ t  t ƒ } t  t ƒ j t ƒ t t ƒ } t  t ƒ d d t d d t  t ƒ j t ƒ } t  t ƒ j t ƒ t t ƒ t  t ƒ d } t  t ƒ j t ƒ d t t  t ƒ ƒ d } t t  t ƒ t t t ƒ ƒ } t t  t ƒ t t ƒ } t t  t ƒ t t t ƒ ƒ } t t  t ƒ t t t	 t ƒ ƒ ƒ }	 t t  t ƒ t t t ƒ d ƒ }
 t t t  t ƒ t t  t ƒ ƒ t ƒ } t
 |  d d ƒ| k sÕt ‚ t
 | d d ƒ| k sót ‚ t
 | d d ƒ| k st ‚ t
 | d d ƒ|	 k s/t ‚ t
 | d d ƒ|
 k sMt ‚ t
 | d d ƒ| k skt ‚ t |  | d d d t ƒd st ‚ t | | d d d t ƒd sµt ‚ t | | d d d t ƒd sÚt ‚ t | |	 d d d t ƒd sÿt ‚ t | |
 d d d t ƒd s$t ‚ t | | d d d t ƒd sIt ‚ d  S(   Ni   i   R¡   R³   R›   Rš   i    (   R:   RD   R   R   R   R	   RA   R   R   R   R   RC   R(   Rž   (   RM   RO   RQ   RS   RU   RW   RN   RP   RR   RT   RV   RX   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_separable1,  s0    #3--%#*%%%%%c          C   s)  t  d ƒ }  t t ƒ t d t t ƒ j t ƒ t t ƒ d d t d t t ƒ j t ƒ } t t ƒ d d d t t ƒ t t t ƒ t t ƒ j t ƒ } t t t ƒ t t ƒ j t ƒ t d t t ƒ d ƒ } t t d ƒ t t t ƒ ƒ t t t ƒ ƒ t t ƒ j t ƒ } t t t t ƒ ƒ t d t	 t t ƒ ƒ t t ƒ j t ƒ |  d t	 t t ƒ ƒ t t ƒ j t ƒ } t
 t t d t d t t t ƒ f ƒ t t t d t ƒ ƒ } t
 t d t t ƒ d ƒ d t t d t ƒ ƒ } t
 t t t ƒ ƒ t t t t ƒ ƒ ƒ } t
 t t t ƒ t t ƒ t t t ƒ f ƒ t t t d ƒ t t ƒ t ƒ ƒ }	 t
 t t t t ƒ ƒ ƒ t t |  d t d ƒ d ƒ }
 t | d d ƒj | ƒ sßt ‚ t | d d	 d
 t ƒ| k st ‚ t | d d	 d
 t ƒ| k s't ‚ t | d d ƒj |	 ƒ sHt ‚ t | d d	 d
 t ƒ|
 k slt ‚ t | | d d d t ƒd s‘t ‚ t | | d d d t ƒd s¶t ‚ t | | d d d t ƒd sÛt ‚ t | |	 d d d t ƒd s t ‚ t | |
 d d d t ƒd s%t ‚ d  S(   NR¹   i   i   i   iþÿÿÿiÿÿÿÿR¡   R´   R³   R   R›   Rš   i    (   R   R:   RD   R   R   R   R   R   R   R   R	   R   Rr   RA   R   R   R—   RC   Rž   R(   (   R¹   RW   RZ   R\   R†   R^   RX   R[   R]   R‡   R_   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_separable2I  s0    TC;C>.'6++'=!$$!$%%%%c          C   s  t  t ƒ j t ƒ t  t ƒ t t ƒ }  t d t t  t ƒ ƒ t  t ƒ j t ƒ d t t t  t ƒ ƒ } t  t ƒ j t ƒ t  t ƒ t t  t ƒ ƒ t t ƒ } t t  t ƒ t t t ƒ ƒ } t t t t  t ƒ ƒ ƒ t d t d t t d ƒ ƒ } t t t t  t ƒ ƒ ƒ t t t t ƒ ƒ ƒ } t	 |  d d ƒ| k sPt
 ‚ t	 | d d d t ƒ| k stt
 ‚ t	 | d d d t ƒ| k s˜t
 ‚ t |  | d d d t ƒd s½t
 ‚ t | | d d d t ƒd sât
 ‚ t | | d d d t ƒd st
 ‚ d  S(	   Ni   i   R¡   R³   R   R›   Rš   i    (   R:   RD   R   R   R   R   R   R	   RA   R   RC   Rž   R(   (   Rú   Rü   Rþ   Rû   Rý   Rÿ   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_separable3f  s    )E9;1$$%%c          C   s³   t  t t  ƒ j t  ƒ d t t  ƒ d t t t  ƒ ƒ }  t t t t t  ƒ ƒ ƒ t t t  ƒ ƒ } t |  d d d t ƒ| k sŠ t	 ‚ t
 |  | d d d t ƒd s¯ t	 ‚ d  S(	   Ni   i   R¡   R³   R   R›   Rš   i    (   RD   R:   R   R   R	   R   RA   R   Rž   RC   R(   (   R   R  (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_separable4u  s    ;+$c          C   s·  t  t ƒ j t ƒ t t  t ƒ d }  t t  t ƒ d ƒ t d d t d t t  t ƒ t  t ƒ t  t ƒ j t ƒ } t  t ƒ j t ƒ t  t ƒ } t t ƒ t d t  t ƒ ƒ t t ƒ t d t  t ƒ ƒ t  t ƒ j t ƒ } d t t  t ƒ j t ƒ t t  t ƒ d } t  t ƒ t t  t ƒ t ƒ t d t t  t ƒ d } t  t ƒ j t ƒ t t t  t ƒ ƒ } t t  t ƒ d t t t d d ƒ ƒ } t t t  t ƒ d ƒ d t t t d d ƒ } t t  t ƒ t t t ƒ ƒ }	 t t t d t  t ƒ ƒ ƒ d t t t t ƒ ƒ ƒ }
 t t  t ƒ t t t ƒ t d t d ƒ } t t d d t  t ƒ d ƒ d t t d d ƒ } t t t  t ƒ ƒ t t t ƒ ƒ } t	 |  d d ƒ| k sät
 ‚ t	 | d d d t ƒ| k st
 ‚ t	 | d d ƒ|	 k s&t
 ‚ t	 | d d d t ƒ|
 k sJt
 ‚ t	 | d d ƒ| k sht
 ‚ t	 | d d d t ƒ| k sŒt
 ‚ t	 | d d d t ƒ| k s°t
 ‚ t |  | d	 d d
 t ƒd sÕt
 ‚ t | | d	 d d
 t ƒd sút
 ‚ t | |	 d	 d d
 t ƒd st
 ‚ t | |
 d	 d d
 t ƒd sDt
 ‚ t | | d	 d d
 t ƒd sit
 ‚ t | | d	 d d
 t ƒd sŽt
 ‚ t | | d	 d d
 t ƒd s³t
 ‚ d  S(   Ni   i   i   iÿÿÿÿi   R¡   R³   R   R›   Rš   i    (   R:   RD   R   R   R   R   R	   RA   R   R   RC   Rž   R(   (   R  R  t   eq17t   eq18t   eq19t   eq20t   eq21R  R  t   sol17t   sol18t   sol19t   sol20t   sol21(    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_separable5}  s8    'UQ/9),5 :07'$$$$%%%%%%c          C   s¶   t  d t t t  ƒ ƒ t t  ƒ j t  ƒ d t  t t t  ƒ ƒ }  t t d t t t  ƒ ƒ d ƒ d t d t  d t d t  ƒ ƒ } t |  | d d d t	 ƒd s² t
 ‚ d  S(   Ni   i   R›   Rš   i    (   RD   R   R:   R   R   R	   R   RA   R(   Rž   RC   (   Rü   Rý   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_separable_1_5_checkodesolœ  s    EHc          C   s¾  t  t t t ƒ t t t ƒ t t ƒ d k s6 t ‚ t  t d t t ƒ t t ƒ t t ƒ d  k sl t ‚ t  t t t t t t ƒ t t ƒ d k s  t ‚ t  t t t	 t d t d ƒ t d t
 t ƒ t
 t ƒ t t t d d ƒ t	 t ƒ d t t ƒ t d d ƒ k s t ‚ t  t t t t t ƒ t t t t t ƒ t t t ƒ t t ƒ d k stt ‚ t  t t ƒ t t t ƒ ƒ d k sžt ‚ t  t t ƒ d t t t ƒ ƒ d k sÌt ‚ t  t t t t t ƒ d k sòt ‚ t  t t t t t t ƒ d k st ‚ t  t d t t ƒ t	 t d t t ƒ d ƒ t t ƒ ƒ d  k sft ‚ t  t t t ƒ d t t t t ƒ t ƒ d k st ‚ t  t t t ƒ d t t t ƒ t ƒ d  k sÑt ‚ t  t t t ƒ d t t t t ƒ ƒ d  k st ‚ t  t t t ƒ d t t t t t ƒ ƒ d  k s<t ‚ t  t t ƒ t t ƒ t ƒ d  k sft ‚ t  t t ƒ t d t t t ƒ t ƒ t t ƒ t ƒ d k s­t ‚ t  t
 d t ƒ t
 t d ƒ t t ƒ d  k sãt ‚ t  t
 d t ƒ t
 t ƒ t t ƒ d k st ‚ t  t
 t t ƒ t t ƒ d k s=t ‚ t  d t
 d t ƒ d t
 t ƒ t t ƒ d k swt ‚ t d ƒ }  t  |  t
 d t ƒ |  t
 t ƒ t t ƒ d k s½t ‚ t  t t ƒ j t ƒ t t ƒ d  k sêt ‚ t  t t ƒ j t ƒ t t t ƒ d  k st ‚ t  t t ƒ t t ƒ d  k s@t ‚ t  t t t d ƒ t t ƒ d  k slt ‚ t  t t t ƒ t k s‹t ‚ t  t t t ƒ d  k sªt ‚ t t d	 „  ƒ d  S(
   Ni    i   i   i   i   iÿÿÿÿi   R¹   c           S   s   t  t t ƒ S(   N(   R-   RD   RE   (    (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   À  Rc   (   R-   R   RE   RD   R   RC   R   R   t   NoneR   R   R   R   R:   RF   R   R   R   R6   R   (   R¹   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_homogeneous_order¢  s<    664<DT*.&)K7447*G62(::-2$,c       	   C   sE  t  t ƒ t t t  t ƒ t ƒ t t  t ƒ t t  t ƒ t ƒ t t  t ƒ t ƒ t  t ƒ j t ƒ }  t t  t ƒ j t ƒ t  t ƒ t t t  t ƒ t ƒ } t  t ƒ t t t  t ƒ t ƒ d t t t  t ƒ t ƒ } d t  t ƒ t t t  t ƒ ƒ t  t ƒ t  t ƒ j t ƒ d t t t t  t ƒ ƒ t  t ƒ j t ƒ } d t d t  t ƒ t  t ƒ d t t  t ƒ d d t d t  t ƒ j t ƒ } t t t  t ƒ t ƒ t  t ƒ t t  t ƒ t ƒ t t t  t ƒ t ƒ t  t ƒ j t ƒ } t t t  t ƒ d t t  t ƒ ƒ t  t ƒ j t ƒ t  t ƒ } t t  t ƒ t t  t ƒ t  t ƒ j t ƒ } t t t ƒ t	 t t  t ƒ t t  t ƒ t ƒ t ƒ ƒ } t t t ƒ t t	 ƒ t t t  t ƒ t ƒ d ƒ d t t t  t ƒ t ƒ d ƒ d ƒ }	 t t  t ƒ t t	 ƒ t
 t t t	 d ƒ ƒ ƒ }
 t t t  t ƒ ƒ t	 d t t t  t ƒ ƒ ƒ } t t  t ƒ t d t	 t
 d t d t d t	 ƒ ƒ d ƒ t ƒ } t t t ƒ t	 t t  t ƒ t ƒ t t  t ƒ t ƒ d t t  t ƒ t ƒ t t  t ƒ t ƒ d ƒ } t t t  t ƒ ƒ t	 d t t t  t ƒ d ƒ ƒ } t t t ƒ t	 t t d t  t ƒ d t d ƒ ƒ t t  t ƒ t ƒ ƒ } t |  d d ƒ| k sçt ‚ t | d d d	 t ƒ|	 k st ‚ t | d d
 ƒ|
 k s)t ‚ t | d d
 ƒ| k sGt ‚ t | d d
 ƒ| k set ‚ t | d d ƒ| k sƒt ‚ t | d d
 ƒ| k s¡t ‚ t | d d
 ƒ| k s¿t ‚ t t  t ƒ d t t t  t ƒ ƒ t	 ƒ } t t t	 t t d t ƒ t t  t ƒ ƒ ƒ t d d t  t ƒ d d ƒ } t |  | d d d t ƒd sct ‚ t | |	 d d d t ƒd sˆt ‚ t | | d d d t ƒd s­t ‚ t | | d d d t ƒd sÒt ‚ t | | d d d t ƒd s÷t ‚ t | | d d d t ƒd st ‚ t | | d d d t ƒd sAt ‚ d  S(   Ni   i   i   iþÿÿÿi   iüÿÿÿR¡   R¦   R   R¥   i    R›   Rš   (   R:   RD   R   R   R   R   R   R   R	   RA   R   R   R   RC   Rž   R(   (   RM   RO   RQ   RS   RU   RW   RZ   R\   RN   RP   RR   RT   RV   RX   R[   R]   t   sol3bt   sol5b(    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_1st_homogeneous_coeff_odeÃ  sB    m;?pWcE1=_63Go8O$.Q%%%%%%c          C   s‹   t  t t  ƒ j t  ƒ t t  ƒ t  t t t  ƒ t  ƒ }  t t  t t t  ƒ d t  ƒ t ƒ } t |  | d d d t ƒd s‡ t	 ‚ d  S(   Ni   R›   i   Rš   i    (
   RD   R:   R   R   R	   R   RA   R(   Rž   RC   (   RO   RP   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt%   test_1st_homogeneous_coeff_ode_check2ð  s    ;'c          C   sÛ   t  d ƒ t t ƒ t t t t ƒ t ƒ d t t t t ƒ t ƒ }  t t t ƒ t t d t t t ƒ ƒ ƒ } t	 |  | d t
 ƒd s• t ‚ t t t ƒ t t t t ƒ ƒ } t	 |  | d t
 ƒd s× t ‚ d  S(   Ns   This is a known issue.i   i   Rš   i    (   R5   R:   RD   R   R   R	   R   R   RA   R(   R@   RC   RB   (   RQ   t   sol3aR,  (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt%   test_1st_homogeneous_coeff_ode_check3ö  s    
?-#c          C   s©   t  t t t  ƒ d t  t t  ƒ ƒ t t  ƒ j t  ƒ t t  ƒ }  t t t t t  ƒ ƒ d t d t  t t  ƒ ƒ d ƒ } t |  | d d d t ƒd s¥ t	 ‚ d  S(   Ni   i   i    R›   Rš   (
   RD   R   R:   R   R	   R   RA   R(   Rž   RC   (   RZ   R[   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt%   test_1st_homogeneous_coeff_ode_check7
  s    E;c          C   s  t  t ƒ j t ƒ t  t ƒ t d t t  t ƒ t ƒ }  t d t  t ƒ d d t t  t ƒ t  t ƒ j t ƒ } t t t  t ƒ t ƒ t  t ƒ t t  t ƒ j t ƒ } t t  t ƒ t t t t t ƒ ƒ d t	 ƒ t t  t ƒ t t t t t ƒ ƒ ƒ g } t t t  t ƒ ƒ t t ƒ t t t  t ƒ ƒ t t d t  t ƒ d d ƒ ƒ } t t  t ƒ t d t t t ƒ t ƒ ƒ } t
 |  d d ƒ| k s®t ‚ t
 | d d d t ƒ| k sÒt ‚ t
 | d d ƒ| k sðt ‚ t t  t ƒ t t t t ƒ t ƒ ƒ } t |  | d d d t ƒd	 s?t ‚ t | | d d d t ƒd	 sdt ‚ t | | d d d t ƒd	 s‰t ‚ d  S(
   Ni   i   R¡   R¦   R¥   R   R›   Rš   i    (   R:   RD   R   R   R   R	   R    RA   R   R   R   RC   Rž   R(   (   RM   RO   RQ   RN   RP   RR   R,  (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_1st_homogeneous_coeff_ode2  s    ;=;[U-$*%%c          C   sñ   t  d ƒ }  t  d ƒ } t t ƒ d t t t t ƒ d t d ƒ t t t ƒ t t ƒ j t ƒ } t t d d t d |  d ƒ |  |  |  | t t t ƒ f ƒ t t t t ƒ ƒ d ƒ } t	 | | d d d t
 ƒd sí t ‚ d  S(	   Nt   u2R¹   i   iÿÿÿÿi   i    R›   Rš   (   R   R:   RD   R   R   R	   R   R   RA   R(   Rž   RC   (   t   _u2t   __aR†   R‡   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt%   test_1st_homogeneous_coeff_ode_check9$  s    Q.1c       	   C   sê   t  t ƒ d t t t  t ƒ d t d ƒ t t  t ƒ t  t ƒ j t ƒ }  t t t  t ƒ ƒ t t t t  t ƒ t ƒ t	 t  t ƒ d ƒ t d d k f t
 t t  t ƒ t ƒ t f ƒ ƒ } t |  d d ƒ| k sæ t ‚ d  S(   Ni   i   R¡   R¨   (   R:   RD   R   R   R	   R   RA   R    R   t   absR   R   R@   R   RC   (   Rp   Ro   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_1st_homogeneous_coeff_ode3-  s
    Q7(c          C   s¼   t  t ƒ j t ƒ t  t ƒ t }  t |  t  t ƒ ƒ } t t  t ƒ j t ƒ t  t ƒ } t | t  t ƒ ƒ } d } d } | | k r” | | k sš t ‚ | | k r² | | k s¸ t ‚ d  S(   NR¦   R¨   (   R:   RD   R   R)   RC   (   RM   R   RO   R   t   sdit   sid(    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt&   test_1st_homogeneous_coeff_corner_case;  s    ##c    `   
      sÌ  t  d d t ƒ}  t  d d t ƒ} t t ƒ j t d ƒ d t t ƒ j t ƒ } t t ƒ j t d ƒ d t t ƒ j t ƒ d t t ƒ } t t ƒ j t d ƒ t t ƒ } t t ƒ j t d ƒ t t ƒ j t d ƒ d t t ƒ j t ƒ } d t t ƒ j t d ƒ d t t ƒ j t ƒ d	 t t ƒ } t t t ƒ j t d ƒ d t t ƒ j t ƒ t t ƒ d
 ƒ } t t t ƒ t d ƒ t t t ƒ t d ƒ d t t t ƒ t ƒ d t t ƒ } t t ƒ j t d	 ƒ t t ƒ j t d ƒ d	 t t ƒ j t d ƒ d	 t t ƒ j t ƒ }	 t t ƒ j t d	 ƒ d	 t t ƒ j t d ƒ t t ƒ j t d ƒ d	 t t ƒ j t ƒ d t t ƒ }
 t t ƒ j t d	 ƒ |  d t t ƒ } t t ƒ j t d ƒ d | t t ƒ j t ƒ d t t ƒ } t t ƒ j t d ƒ d	 | t t ƒ j t ƒ d | d t t ƒ } t t ƒ j t d	 ƒ } t t ƒ j t d ƒ d	 t t ƒ j t ƒ d	 t t ƒ } d t t ƒ j t d ƒ d t t ƒ j t d ƒ t t ƒ j t ƒ t t ƒ } t t ƒ j t d ƒ d t t ƒ j t d ƒ d t t ƒ j t ƒ d t t ƒ } t t ƒ j t d ƒ d |  t t ƒ j t ƒ |  d t t ƒ } t t ƒ j t d	 ƒ d t t ƒ j t d ƒ } t t ƒ j t d	 ƒ d t t ƒ j t d ƒ } t t ƒ j t d	 ƒ d t t ƒ j t d ƒ d t t ƒ j t d ƒ d t t ƒ j t ƒ d t t ƒ } d t t ƒ j t d	 ƒ d t t ƒ j t d ƒ d	 t t ƒ j t ƒ d t t ƒ } t t ƒ j t d	 ƒ d t t ƒ j t d ƒ d t t ƒ } t t ƒ j t d ƒ d t t ƒ j t ƒ d t t ƒ } t t ƒ j t d ƒ t t ƒ j t ƒ t t ƒ } t t ƒ j t d	 ƒ d t t ƒ j t d ƒ d t t ƒ } t t ƒ j t d ƒ d	 t t ƒ j t ƒ d t t ƒ } t t ƒ j t d	 ƒ d	 t t ƒ j t d ƒ d	 t t ƒ } t t ƒ j t d ƒ d t t ƒ } t t ƒ j t d	 ƒ d	 t t ƒ j t d ƒ } t t ƒ j t d ƒ d t t ƒ j t d ƒ t t ƒ j t ƒ } t t ƒ j t d	 ƒ t t ƒ j t d ƒ t t ƒ }  t t ƒ j t d	 ƒ d	 t t ƒ j t d ƒ t t ƒ }! t t t ƒ t t t d t ƒ ƒ }" t t t ƒ t t t t ƒ t t ƒ ƒ }# t t t ƒ t t t ƒ t t t ƒ ƒ }$ t t t ƒ t t t d t ƒ t	 t d t ƒ ƒ }% t t t ƒ t t t d ƒ t t d	 t d ƒ ƒ }& t t t ƒ t t t d t
 d ƒ ƒ t t t t
 d ƒ d ƒ ƒ }' t t t ƒ t t d t ƒ t t t d t
 d ƒ ƒ t	 t t d t
 d ƒ ƒ ƒ }( t t t ƒ t t t t ƒ t	 t d t ƒ t t d t ƒ ƒ }) t t t ƒ t t t ƒ t t t ƒ t	 t t d t
 d ƒ ƒ t t t d t
 d ƒ ƒ ƒ }* t t t ƒ t t t t
 |  ƒ ƒ t t t t
 |  ƒ ƒ t	 t t t
 |  ƒ ƒ t t t t
 |  ƒ ƒ ƒ }+ t t t ƒ t t t | t
 | d d ƒ ƒ t t t | t
 | d d ƒ ƒ ƒ }, t t t ƒ t t d | t ƒ t t d | t ƒ ƒ }- t t t ƒ t t t t	 t d t t d ƒ }. t t t ƒ t t t t d t ƒ ƒ }/ t t t ƒ t t t t t ƒ t	 t t d ƒ ƒ }0 t t t ƒ t t t t	 t d t d t ƒ ƒ }1 t t t ƒ t t t t |  t ƒ ƒ }2 t t t ƒ t t t t	 t d t t d t ƒ ƒ }3 t t t ƒ t t t t	 t t t
 d ƒ ƒ t t t t
 d ƒ ƒ ƒ }4 t t t ƒ t t t t d t ƒ t	 t t t d t ƒ ƒ }5 t t t ƒ t t t d ƒ t t t ƒ t	 t t d ƒ t t d t d ƒ ƒ }6 t t t ƒ t t t t d t ƒ t	 t t t d t ƒ ƒ }7 t t t ƒ t t d t ƒ t t d t ƒ t t ƒ ƒ }8 t t t ƒ t t t t
 d ƒ d ƒ t t t t
 d ƒ d ƒ t t d ƒ ƒ }9 t t t ƒ t t t t
 d ƒ ƒ t t t t
 d ƒ ƒ t	 t t t
 d ƒ ƒ t t t t
 d ƒ ƒ ƒ }: t t t ƒ t t d	 t ƒ t t d	 t ƒ t d t ƒ ƒ }; t t t ƒ t t t t t t
 d ƒ ƒ t	 t t t t t
 d ƒ ƒ ƒ }< t t t ƒ t t t t
 d ƒ ƒ t t t t
 d ƒ ƒ t t ƒ t	 t d t ƒ ƒ }= t t t ƒ t t t d t ƒ t	 t d t ƒ t t ƒ }> t t t ƒ t t t	 t t t ƒ t t t t t ƒ ƒ }? t t t ƒ t t t
 d ƒ t d ƒ t t t
 d ƒ t d ƒ t
 t t ƒ ƒ t	 t t
 d ƒ t d ƒ t t t
 d ƒ t d ƒ t
 t t ƒ ƒ ƒ }@ t t t ƒ t t t t
 t
 d ƒ d ƒ ƒ t t t t
 t
 d ƒ d ƒ ƒ t	 t t t
 t
 d ƒ d ƒ ƒ t t t t
 t
 d ƒ d ƒ ƒ ƒ }A t |" ƒ }B t |# ƒ }C t |$ ƒ }D t |% ƒ }E t |& ƒ }F t |' ƒ }G t |( ƒ }H t |) ƒ }I t |* ƒ }J t |+ ƒ }K t |, ƒ }L t |- ƒ }M t |. ƒ }N t |/ ƒ }O t |0 ƒ }P t |1 ƒ }Q t |2 ƒ }R t |3 ƒ }S t |4 ƒ }T t |5 ƒ }U t |6 ƒ }V t |7 ƒ }W t |8 ƒ }X t |9 ƒ }Y t |: ƒ }Z t |; ƒ }[ t |< ƒ }\ t |= ƒ }] t |> ƒ }^ t |? ƒ }_ t | ƒ |" |B f k s5t ‚ t | ƒ |# |C f k sSt ‚ t | ƒ |$ |D f k sqt ‚ t | ƒ |% |E f k st ‚ t | ƒ |& |F f k s­t ‚ t | ƒ |' |G f k sËt ‚ t | ƒ |( |H f k sét ‚ t |	 ƒ |) |I f k st ‚ t |
 ƒ |* |J f k s%t ‚ t | ƒ |+ |K f k sCt ‚ t | ƒ |, |L f k sat ‚ t | ƒ |- |M f k st ‚ t | ƒ |. |N f k st ‚ t | ƒ |/ |O f k s»t ‚ t | ƒ |0 |P f k sÙt ‚ t | ƒ |1 |Q f k s÷t ‚ t | ƒ |2 |R f k st ‚ t | ƒ |3 |S f k s3t ‚ t | ƒ |4 |T f k sQt ‚ t | ƒ |5 |U f k sot ‚ t | ƒ |6 |V f k st ‚ t | ƒ |7 |W f k s«t ‚ t | ƒ |8 |X f k sÉt ‚ t | ƒ |9 |Y f k sçt ‚ t | ƒ |: |Z f k st ‚ t | ƒ |; |[ f k s#t ‚ t | ƒ |< |\ f k sAt ‚ t | ƒ |= |] f k s_t ‚ t | ƒ |> |^ f k s}t ‚ t | ƒ |? |_ f k s›t ‚ t |  ƒ |@ f k s¶t ‚ t |! ƒ |A f k sÑt ‚ t | |" d d d t ƒd
 söt ‚ t | |# d d d t ƒd
 st ‚ t | |$ d d d t ƒd
 s@t ‚ t | |% d d d t ƒd
 set ‚ t | |& d d d t ƒd
 sŠt ‚ t | |' d d d t ƒd
 s¯t ‚ t | |( d d d t ƒd
 sÔt ‚ t |	 |) d d	 d t ƒd
 sùt ‚ t |
 |* d d	 d t ƒd
 st ‚ t | |+ d d	 d t ƒd
 sCt ‚ t | |, d d d t ƒd
 sht ‚ t | |- d d d t ƒd
 st ‚ t | |. d d	 d t ƒd
 s²t ‚ t | |/ d d d t ƒd
 s×t ‚ t | |0 d d d t ƒd
 süt ‚ t | |1 d d d t ƒd
 s!t ‚ t | |2 d d d t ƒd
 sFt ‚ t | |3 d d	 d t ƒd
 skt ‚ t | |4 d d	 d t ƒd
 st ‚ t | |5 d d	 d t ƒd
 sµt ‚ t | |6 d d	 d t ƒd
 sÚt ‚ t | |7 d d	 d t ƒd
 sÿt ‚ t | |8 d d d t ƒd
 s$t ‚ t | |9 d d d t ƒd
 sIt ‚ t | |: d d	 d t ƒd
 snt ‚ t | |; d d d t ƒd
 s“t ‚ t | |< d d	 d t ƒd
 s¸t ‚ t | |= d d d t ƒd
 sÝt ‚ t | |> d d	 d t ƒd
 st ‚ t | |? d d d t ƒd
 s't ‚ t |  |@ d d	 d t ƒd
 sLt ‚ t |! |A d d	 d t ƒd
 sqt ‚ t t t t ƒ t t t ƒ ‰  d ‰ t t ‡  ‡ f d †  ƒ t t ‡  ‡ f d †  ƒ d  S(   NR¹   t   positiveRG   R9   i   i   i   i   i   i    i
   i   i   i   i$   i%   i   i   iþÿÿÿiýÿÿÿiÿÿÿÿi   iúÿÿÿR›   Rš   R¿   c              s   t  ˆ  t t ƒ ˆ d t ƒS(   NRÍ   (   R   R:   RD   R@   (    (   RŸ   R¡   (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   ü  Rc   c              s   t  ˆ  t t ƒ ˆ d t ƒS(   NRÍ   (   R   R:   RD   Rž   (    (   RŸ   R¡   (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   ý  Rc   (   R   R@   R:   RD   R   R	   RA   RB   R   Rƒ   R   R„   R   R   t   C5R+   R   RC   R(   Rž   R   R6   R   (`   R¹   RG   RM   RO   RQ   RS   RU   RW   RZ   R\   R†   R^   Rú   Rü   Rþ   R   R  R  R  R  R   R!  R"  t   eq22t   eq23t   eq24t   eq25t   eq26t   eq27t   eq28t   eq29t   eq30t   eq31t   eq32RN   RP   RR   RT   RV   RX   R[   R]   R‡   R_   Rû   Rý   Rÿ   R  R  R  R#  R$  R%  R&  R'  t   sol22t   sol23t   sol24t   sol25t   sol26t   sol27t   sol28t   sol29t   sol30t   sol31t   sol32t   sol1st   sol2st   sol3st   sol4st   sol5st   sol6st   sol7st   sol8st   sol9st   sol10st   sol11st   sol12st   sol13st   sol14st   sol15st   sol16st   sol17st   sol18st   sol19st   sol20st   sol21st   sol22st   sol23st   sol24st   sol25st   sol26st   sol27st   sol28st   sol29st   sol30s(    (   RŸ   R¡   s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt*   test_nth_linear_constant_coeff_homogeneousF  s`   /="EABSEm*AI=SWE22q[@=5@=@&2E8<'-.99JOG8"GM=5+:7+;NE[E?WGCQQAASN%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%c    	   	   C   sØ  t  t ƒ j t d ƒ d t  t ƒ j t ƒ d t  t ƒ }  g  t d ƒ D]% } t t d d t d | ƒ ^ qJ \ } } } } } t t  t ƒ t t | t ƒ t t | ƒ t ƒ t	 t
 t | ƒ t ƒ t t t | ƒ t ƒ t t | ƒ t ƒ t t
 t | ƒ t ƒ t t t | ƒ t ƒ ƒ } t |  ƒ | k sGt ‚ t  t ƒ j t d ƒ d t  t ƒ j t ƒ t  t ƒ }  g  t d ƒ D]% } t t d d t d | ƒ ^ q\ } } } } } t t  t ƒ t t | t ƒ t t | t ƒ t t | t ƒ t t | ƒ t ƒ t	 t
 t | ƒ t ƒ t t t | ƒ t ƒ ƒ } t |  ƒ | k sjt ‚ t  t ƒ j t d ƒ d t  t ƒ j t d ƒ d t  t ƒ j t ƒ t  t ƒ }  g  t d ƒ D]1 } t t d d t d d t d | ƒ ^ qÊ\ } } } } } t t  t ƒ t	 t | t ƒ t t | t ƒ t t | t ƒ t t | t ƒ t t | t ƒ ƒ } t |  ƒ | k s“t ‚ t  t ƒ j t d ƒ d t  t ƒ j t d ƒ d t  t ƒ j t d	 ƒ d
 t  t ƒ j t ƒ d t  t ƒ }  g  t d ƒ D]% } t t d t d	 d
 | ƒ ^ q\ } } } } } t t  t ƒ t t d t ƒ t t t | ƒ t t | ƒ t ƒ t	 t
 t | ƒ t ƒ t t t | ƒ t ƒ t t | ƒ t ƒ t t
 t | ƒ t ƒ t t t | ƒ t ƒ ƒ } t |  ƒ | k s t ‚ t  t ƒ j t d
 ƒ d t  t ƒ j t d ƒ d t  t ƒ j t d ƒ t  t ƒ j t d ƒ d t  t ƒ j t d ƒ t  t ƒ }  g  t d ƒ D]! } t t d t d | ƒ ^ q³\ } } } } } t t  t ƒ t	 t t t | t ƒ t t | ƒ t ƒ t t t t
 t | ƒ t ƒ t t t t t | ƒ t ƒ t t | ƒ t ƒ t t t t
 t | ƒ t ƒ t t t t t | ƒ t ƒ ƒ } t |  ƒ | k sÔt ‚ d  S(   Ni   i   i   i   i   id   iè  i   i   i
   i2   (   R:   RD   R   t   rangeR   R	   R>  R   R%   RA   R   R&   RB   R   Rƒ   R„   R   RC   t   C6t   C7t   C8t   C9t   C10(	   Rp   RJ   R~   R€   t   r3t   r4t   r5Ro   t   r6(    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt1   test_nth_linear_constant_coeff_homogeneous_rootof   s0    =GŸ9GSSkqG±†CÇc          C   sI  d }  t  t d ƒ t t ƒ j t t t ƒ t t ƒ j t ƒ d ƒ } t  t t ƒ t t t d t d ƒ d t d ƒ t	 t
 d t d ƒ d t d ƒ ƒ } |  t | ƒ k s¼ t ‚ t | t t ƒ d |  ƒ| k sã t ‚ t | t t ƒ ƒ | k st ‚ t | | d d d t ƒd s)t ‚ t d	 ƒ } t  | t t ƒ j t t t ƒ t t ƒ j t ƒ d ƒ } t  t t ƒ t t t t t | ƒ ƒ t	 t
 t t | ƒ ƒ ƒ } |  t | ƒ k sÍt ‚ t | t t ƒ d |  ƒ| k sôt ‚ t | t t ƒ ƒ | k st ‚ t | | d d d t ƒd s:t ‚ t  t t t ƒ j t t t ƒ t t ƒ j t ƒ d ƒ } t  t t ƒ t t t t t t ƒ ƒ t	 t
 t t t ƒ ƒ ƒ } |  t | ƒ k sÒt ‚ t | t t ƒ d |  ƒ| k sùt ‚ t | t t ƒ ƒ | k st ‚ t | | d d d t ƒd s?t ‚ t  t t t ƒ j t t t ƒ t t ƒ j t ƒ d ƒ } t  t t ƒ t t t t t ƒ t ƒ t	 t t t ƒ t ƒ ƒ } |  t | ƒ k sØt ‚ t | t t ƒ d |  ƒ| k sÿt ‚ t | t t ƒ ƒ | k s t ‚ t | | d d d t ƒd sEt ‚ d  S(
   NR¿   i   i    i   i   R¡   R›   Rš   i   (   R	   R   R:   RD   R   RA   RB   R   R   Rƒ   R   R)   RC   R   R(   Rž   R   R   R   (   t   our_hintRp   Ro   t   E(    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt5   test_nth_linear_constant_coeff_homogeneous_irrational5  s4    A]'!%;E'!%;E'!%;F'!c       
   C   sa  t  r t d ƒ n  t t ƒ j t d ƒ d t t ƒ j t ƒ d t t ƒ }  t t t ƒ t t t t t d d t d d ƒ ƒ t	 t t t t d d t d d ƒ ƒ t
 t t t t d d t d d ƒ ƒ t t t t t d d t d d ƒ ƒ t t t t t d d t d d ƒ ƒ ƒ } t |  | d	 d d
 t ƒd s]t ‚ d  S(   Ns   Too slow for travis.i   i   i   i    i   i   i   R›   Rš   (   R8   R5   R:   RD   R   R	   RA   R   R   RB   Rƒ   R„   R>  R(   Rž   RC   (   Rp   Ro   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt5   test_nth_linear_constant_coeff_homogeneous_rootof_solV  s    =«1c          C   sR   t  d t ƒ }  t |  ƒ t |  ƒ } } | j t ƒ oD | j t ƒ sN t ‚ d  S(   Ni   (   R   RD   R&   R%   Ru   t   atan2RC   (   RE   R}   Rn   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt)   test_noncircularized_real_imaginary_partse  s    c          C   s=   d t  t d ƒ }  |  t |  t  t d ƒ ƒ k s9 t ‚ d  S(   Ni   i   i   (   R   RD   t   collectRC   (   Ro   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt$   test_collect_respecting_exponentialso  s    c          C   s¦  t  t t ƒ t ƒ i t d 6k s( t ‚ t  t d t t d ƒ ƒ t ƒ i t d 6t t	 d t t d ƒ ƒ t d t t d ƒ ƒ g ƒ d 6k s™ t ‚ t  t t ƒ t	 t ƒ t ƒ i t d 6k sË t ‚ t t	 t ƒ t t	 t ƒ t d t	 t ƒ t d t t ƒ t t t ƒ t t ƒ g ƒ }  t  t t ƒ t d t d t ƒ i t d 6|  d 6k sdt ‚ t  t t ƒ t d t t ƒ t t t ƒ t ƒ i t d 6|  d 6k s³t ‚ t  t
 d t ƒ t t ƒ t d t d t ƒ i t d 6t t
 d t ƒ t t ƒ t d t
 d t ƒ t t ƒ t	 t ƒ t
 d t ƒ t d t	 t ƒ t
 d t ƒ t t	 t ƒ t
 d t ƒ t t
 d t ƒ t t ƒ g ƒ d 6k s¨t ‚ t  d t t ƒ t ƒ i t d 6k sÔt ‚ t  t t ƒ t ƒ i t d 6k süt ‚ t  d t t d t d t ƒ i t d 6t d t t d t t d d t g ƒ d 6k s`t ‚ t  t t t ƒ i t d 6k s†t ‚ t  t
 t ƒ t
 d t d ƒ t ƒ i t d 6t t
 d d t ƒ g ƒ d 6k sÞt ‚ t  t t ƒ t d t d t ƒ i t d 6t t t	 t ƒ t t t ƒ t d t	 t ƒ t d t t ƒ t	 t ƒ t t ƒ g ƒ d 6k sqt ‚ t  t t ƒ t t t ƒ t ƒ i t d 6k s§t ‚ t  t t ƒ t t d t ƒ t ƒ i t d 6k sát ‚ t  t t ƒ t t ƒ t ƒ i t d 6k st ‚ t  t d t t ƒ t
 t ƒ t t t ƒ t t ƒ i t d 6t t d t	 t ƒ t
 t ƒ t t	 t ƒ t d ƒ t
 t ƒ t t ƒ t t ƒ t t
 t ƒ t t ƒ t t	 t ƒ t t	 t ƒ t
 t ƒ t t t ƒ t	 t ƒ t
 t ƒ t d t
 t ƒ t t ƒ g ƒ d 6k s.t ‚ t  d t t t d ƒ t ƒ i t t t	 t d ƒ t t t d ƒ t	 t d ƒ t t d ƒ g ƒ d 6t d 6k s«t ‚ t  d t t t ƒ i t d 6t d t t d t g ƒ d 6k sôt ‚ t  d t t
 d t ƒ t ƒ i t d 6t d t t
 d t ƒ g ƒ d 6k sJt ‚ t  t
 t ƒ t t ƒ i t d 6k swt ‚ t  t d ƒ t ƒ i t d 6t t d ƒ g ƒ d 6k sµt ‚ t  d t
 t ƒ t ƒ i t d 6t t
 t ƒ g ƒ d 6k s÷t ‚ t  t
 t t ƒ t ƒ i t d 6t t
 t t ƒ g ƒ d 6k s=t ‚ t  t t ƒ t ƒ i t d 6t t	 t ƒ t t ƒ g ƒ d 6k s„t ‚ t  t	 t ƒ t ƒ i t d 6t t	 t ƒ t t ƒ g ƒ d 6k sËt ‚ t  d	 d
 t
 t ƒ d t t ƒ t ƒ i t d 6t t d ƒ t	 t ƒ t t ƒ t
 t ƒ g ƒ d 6k s:	t ‚ t  t d t ƒ i t d 6t t d ƒ t t d g ƒ d 6k s€	t ‚ t  d t t
 t ƒ t
 t ƒ t ƒ i t d 6t t t
 t ƒ t
 t ƒ t
 t ƒ g ƒ d 6k sè	t ‚ t  d t
 d t ƒ t t ƒ t ƒ i t d 6t t
 d t ƒ t t ƒ t	 t ƒ t
 d t ƒ g ƒ d 6k s]
t ‚ t  t t t ƒ t ƒ i t d 6t t d ƒ t t	 t ƒ t t ƒ g ƒ d 6k s´
t ‚ t  t d d t t ƒ i t d 6t t d ƒ t t d g ƒ d 6k st ‚ t  d t t t ƒ t ƒ i t d 6t t t	 t ƒ t t t ƒ t	 t ƒ t t ƒ g ƒ d 6k skt ‚ t  t t d t ƒ t ƒ i t d 6t t t	 d t ƒ t t d t ƒ t	 d t ƒ t d t ƒ g ƒ d 6k sät ‚ t  t d t
 t ƒ t ƒ i t d 6t t t
 t ƒ t d t
 t ƒ t
 t ƒ g ƒ d 6k sLt ‚ t  d t
 t ƒ t d t
 t ƒ t ƒ i t d 6t t t
 t ƒ t d t
 t ƒ t
 t ƒ g ƒ d 6k sÃt ‚ t  t
 d t ƒ t d t ƒ i t d 6t t d ƒ t t d t
 d t ƒ g ƒ d 6k s$t ‚ t  t t
 t ƒ t ƒ i t d 6t t t
 t ƒ t
 t ƒ g ƒ d 6k svt ‚ t  t t
 d t ƒ t ƒ i t d 6t t d ƒ t t
 d t ƒ g ƒ d 6k sÌt ‚ t  t t ƒ t
 t ƒ t ƒ i t d 6t t	 t ƒ t t ƒ t
 t ƒ g ƒ d 6k s(t ‚ t  t
 t ƒ t ƒ i t d 6t t
 t ƒ g ƒ d 6k sft ‚ t  t d ƒ d t	 d t ƒ d t ƒ i t d 6t t d ƒ t	 d t ƒ t d t ƒ g ƒ d 6k sÔt ‚ t  t
 d t ƒ t d ƒ d t	 d t ƒ d t ƒ i t d 6t t
 d t ƒ t d t ƒ t	 d t ƒ t
 d t ƒ t
 d t ƒ g ƒ d 6k spt ‚ t  d t t t ƒ t	 t ƒ t ƒ i t d 6t t d ƒ t t	 t ƒ t t ƒ g ƒ d 6k sÕt ‚ t  t	 t ƒ d t	 d t ƒ d t ƒ i t d 6t t	 t ƒ t	 d t ƒ t t ƒ t d t ƒ g ƒ d 6k sLt ‚ t  t	 t d ƒ t ƒ i t d 6k sxt ‚ t  d t d t ƒ i t d 6k s¢t ‚ d  S(   Nt   testi   i   t   trialseti   i   i   i   i   i   i	   iþÿÿÿ(   R'   R;   RD   Rž   RC   R   R   R@   R   R   R   R   RE   R   R   R   (   RY   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt$   test_undetermined_coefficients_matchw  sÌ    ( 
GZ"L-@Q1,( D&$4"89 $3:WQ!I58,,055(G6%C$QA6O
UM*MC;<?,(F3@#$A(O,c    W   	   C   s÷  d }  t  t ƒ } t t ƒ j t d ƒ } d t t ƒ j t d ƒ d | t t ƒ j t ƒ t t ƒ t } | t | } | | } | d t t ƒ j t ƒ d t t ƒ d } | d t t ƒ j t ƒ d t t ƒ d t  t ƒ } | d t t ƒ j t ƒ d t t ƒ t  t t ƒ } | d t t ƒ j t ƒ d t t ƒ t t ƒ }	 | d t t ƒ j t ƒ d t t ƒ t t ƒ }
 | d t t ƒ j t ƒ d t t ƒ d d t  t ƒ d t t ƒ } | t t ƒ j t ƒ t t ƒ t d } | d t t ƒ j t ƒ d t t ƒ d	 t t  t ƒ d
 t  t ƒ } | d t t ƒ j t ƒ d t  d t ƒ t t ƒ } t t ƒ j t d ƒ d | t t ƒ t t t ƒ } | t t ƒ j t ƒ t d d t } | t t ƒ j t ƒ t t d t ƒ } | t t ƒ d t t t ƒ } | d t t ƒ t t d t ƒ } | d t t ƒ j t ƒ t t ƒ t d t  t ƒ } t t ƒ j t d ƒ d | d t t ƒ j t ƒ t t ƒ d t  t ƒ t d t  t ƒ } | d t t ƒ j t ƒ d t t ƒ t  d t ƒ t d } | d t t ƒ j t ƒ d t t ƒ t t  t ƒ } | t t ƒ j t ƒ d t t ƒ t t  d t ƒ } | t t ƒ t t ƒ t  t ƒ } t t ƒ j t d ƒ d | d t t ƒ j t ƒ t t ƒ t  t ƒ } | t t ƒ t d ƒ d t d t ƒ d } t t ƒ j t d ƒ t t ƒ j t ƒ t  d t ƒ t d ƒ d t d t ƒ d } t t ƒ j t d ƒ d t t ƒ j t d ƒ t t ƒ j t ƒ d t t t ƒ t t ƒ } | t t ƒ t t ƒ d t d t ƒ d } t t ƒ j t ƒ d } t t t ƒ d t t	 t
 t d t d d t d d t  t ƒ t t  t d ƒ ƒ }  t t t ƒ d t t	 t
 t t d d t  t ƒ t t  t d ƒ ƒ }! t t t ƒ d t	 t  t ƒ t
 t  d t ƒ ƒ }" t t t ƒ d t  t ƒ t	 t  t ƒ t
 t  d t ƒ ƒ }# t t t ƒ t	 t  d t ƒ t
 t  t ƒ t  t t ƒ d
 d t t  t t ƒ d
 ƒ }$ t t t ƒ d t t ƒ d
 t t ƒ d
 t	 t  t ƒ t
 t  d t ƒ ƒ }% t t t ƒ t t ƒ d
 d t t ƒ d
 t	 t  t ƒ t
 t  d t ƒ ƒ }& t t t ƒ d d t t ƒ d t t ƒ d t  t ƒ t	 t  t ƒ t
 t  d t ƒ ƒ }' t t t ƒ d t t d t	 t t t d ƒ d ƒ t
 t t t d ƒ d ƒ t  t d ƒ ƒ }( t t t ƒ t t  t ƒ d t  t ƒ t	 t  d t ƒ t
 t  d t ƒ ƒ }) t t t ƒ t	 t
 t  d t ƒ d t t ƒ t t ƒ t  d t ƒ d ƒ }* t t t ƒ t t t ƒ d t	 t
 t t  t ƒ t t t t  t ƒ ƒ }+ t t t ƒ t	 t d d t
 t  t ƒ ƒ }, t t t ƒ t	 t t d t ƒ d t d t ƒ d
 t d d t
 t  t ƒ ƒ }- t t t ƒ t	 t t t ƒ t
 t d t t ƒ ƒ }. t t t ƒ t	 t d t d t ƒ t
 t d d t d t ƒ ƒ }/ t t t ƒ t	 t
 t t d d t  t ƒ ƒ }0 t t t ƒ t	 t
 t t t d t d d t d d t  t ƒ ƒ }1 t t t ƒ t d ƒ d d t d t d d t	 t  t ƒ t
 t t  d t ƒ ƒ }2 t t t ƒ t	 t  t ƒ t
 t  d t ƒ d t d t  t ƒ d ƒ }3 t t t ƒ t d ƒ d t d t	 t  d t ƒ t
 t d t  d t ƒ ƒ }4 t t t ƒ t	 t t ƒ t
 t d t t ƒ t  t ƒ d ƒ }5 t t t ƒ t	 t
 t t t d t d d t  t ƒ ƒ }6 t t t ƒ t d ƒ d t d t ƒ d t	 t t ƒ t
 t t ƒ ƒ }7 t t t ƒ t	 t
 t  t ƒ t t  t ƒ d t d t ƒ d t d t ƒ d t  d t ƒ d ƒ }8 t t t ƒ t	 t
 t t t d d t t ƒ t t t t d d t t ƒ t d ƒ }9 t t t ƒ t d t ƒ d t	 t t ƒ t
 t d t t ƒ ƒ }: t t t ƒ t	 t ƒ }; t |  ƒ }< t |! ƒ }= t |" ƒ }> t |# ƒ }? t |$ ƒ }@ t |% ƒ }A t |& ƒ }B t |' ƒ }C t |( ƒ }D t |) ƒ }E t |* ƒ }F t |+ ƒ }G t |, ƒ }H t |- ƒ }I t |. ƒ }J t |/ ƒ }K t |0 ƒ }L t |1 ƒ }M t |2 ƒ }N t |3 ƒ }O t |4 ƒ }P t |5 ƒ }Q t |6 ƒ }R t |7 ƒ }S t |8 ƒ }T t |9 ƒ }U t |: ƒ }V t | d |  ƒ|  |< f k s!t ‚ t | d |  ƒ|! |= f k sEt ‚ t | d |  ƒ|" |> f k sit ‚ t | d |  ƒ|# |? f k st ‚ t | d |  ƒ|$ |@ f k s±t ‚ t |	 d |  ƒ|% |A f k sÕt ‚ t |
 d |  ƒ|& |B f k sùt ‚ t | d |  ƒ|' |C f k st ‚ t | d |  ƒ|( |D f k sAt ‚ t | d |  ƒ|) |E f k set ‚ t | d |  ƒ|* |F f k s‰t ‚ t | d |  ƒ|+ |G f k s­t ‚ t | d |  ƒ|, |H f k sÑt ‚ t | d |  ƒ|- |I f k sõt ‚ t | d |  ƒ|. |J f k st ‚ t | d |  ƒ|/ |K f k s=t ‚ t | d |  ƒ|0 |L f k sat ‚ t | d |  ƒ|1 |M f k s…t ‚ t | d |  ƒ|2 |N f k s©t ‚ t | d |  ƒ|3 |O f k sÍt ‚ t | d |  ƒ|4 |P f k sñt ‚ t | d |  ƒ|5 |Q f k st ‚ t | d |  ƒ|6 |R f k s9t ‚ t | d |  ƒ|7 |S f k s]t ‚ t | d |  ƒ|8 |T f k st ‚ t | d |  ƒ|9 |U f k s¥t ‚ t | d |  ƒ|: |V f k sÉt ‚ t | d |  ƒ|; k sçt ‚ t | |  d d d t ƒd st ‚ t | |! d d d t ƒd s1t ‚ t | |" d d d t ƒd sVt ‚ t | |# d d d t ƒd s{t ‚ t | |$ d d d t ƒd s t ‚ t |	 |% d d d t ƒd sÅt ‚ t |
 |& d d d t ƒd sêt ‚ t | |' d d d t ƒd st ‚ t | |( d d d t ƒd s4t ‚ t | |) d d d t ƒd sYt ‚ t | |* d d d t ƒd s~t ‚ t | |+ d d d t ƒd s£t ‚ t | |, d d d t ƒd sÈt ‚ t | |- d d d t ƒd sít ‚ t | |. d d d t ƒd st ‚ t | |/ d d d t ƒd s7t ‚ t | |0 d d d t ƒd s\t ‚ t | |1 d d d t ƒd st ‚ t | |2 d d d t ƒd s¦t ‚ t | |3 d d d t ƒd sËt ‚ t | |4 d d d t ƒd sðt ‚ t | |5 d d d t ƒd st ‚ t | |6 d d d t ƒd s:t ‚ t | |7 d d d t ƒd s_t ‚ t | |8 d d d t ƒd s„t ‚ t | |9 d d d t ƒd s©t ‚ t | |: d d d t ƒd sÎt ‚ t | |; d d d t ƒd sót ‚ d  S(   NRÅ   i   i   i   i   i   i   i   i	   i
   iþÿÿÿi   iÿÿÿÿi    i   iýÿÿÿi   i<   i   i$   iëÿÿÿi   i‚   i  R¡   R›   Rš   i    (   R   RD   R:   R   R   R   R   R   R	   RA   RB   Rƒ   R   R„   R>  R+   R   RC   R(   Rž   (W   R¡   R;   t   f2R»   RM   RO   RQ   RS   RU   RW   RZ   R\   R†   R^   Rú   Rü   Rþ   R   R  R  R  R  R   R!  R"  R?  R@  RA  RB  RC  RD  RE  RN   RP   RR   RT   RV   RX   R[   R]   R‡   R_   Rû   Rý   Rÿ   R  R  R  R#  R$  R%  R&  R'  RJ  RK  RL  RM  RN  RO  RP  RU  RV  RW  RX  RY  RZ  R[  R\  R]  R^  R_  R`  Ra  Rb  Rc  Rd  Re  Rf  Rg  Rh  Ri  Rj  Rk  Rl  Rm  Rn  Ro  (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt8   test_nth_linear_constant_coeff_undetermined_coefficientsæ  s*   E
/9955K+L98)+"&:MA:9%K0Ya0RN6@^RRT\SQP0X9I4L\LTD?M,@UG$$$$$$$$$$$$$$$$$$$$$$$$$$$%%%%%%%%%%%%%%%%%%%%%%%%%%%c          C   s\   t  t t t ƒ t ƒ t t t ƒ t d ƒ d t ƒ }  d } | t |  ƒ k sX t ‚ d  S(   Ni   i   RÅ   (   R	   R   R:   RD   R   R   R)   RC   (   Rp   R  (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_issue_5787…  s    :c          C   s	  d }  t  t ƒ j t d ƒ d t  t ƒ j t d ƒ t  t ƒ j t ƒ d t t t t ƒ } t t  t ƒ t t t t t d d t	 t ƒ t
 t t t d d t t ƒ t d ƒ } t | d |  ƒ| k sà t ‚ t | | d d d t ƒd	 st ‚ d  S(
   NRÅ   i   i   i   i   R¡   R›   Rš   i    (   R:   RD   R   R   R   R	   RA   RB   Rƒ   R   R„   R>  R   R   RC   R(   Rž   (   R¡   t   eq26aRN  (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pytF   test_nth_linear_constant_coeff_undetermined_coefficients_imaginary_exp  s    [Uc    (   	   C   s’	  d }  t  t ƒ } t t ƒ j t d ƒ } d t t ƒ j t d ƒ d | t t ƒ j t ƒ t t ƒ t } | t | } | | } t t ƒ j t ƒ d } | d t t ƒ j t ƒ d t t ƒ d } | d t t ƒ j t ƒ d t t ƒ d t  t ƒ } | d t t ƒ j t ƒ d t t ƒ d	 t t  t ƒ d
 t  t ƒ }	 | d t t ƒ j t ƒ t t ƒ t d t  t ƒ }
 | d t t ƒ j t ƒ d t t ƒ t t  t ƒ } t t ƒ j t d ƒ d | d t t ƒ j t ƒ t t ƒ t  t ƒ } | d t t ƒ j t ƒ t t ƒ t  t ƒ t } | t t ƒ d t t ƒ d t t ƒ } t t ƒ j t d ƒ d t } t t t ƒ d t t t t d t d d t d d t  t ƒ t	 t  t d ƒ ƒ } t t t ƒ d t t t t t d d t  t ƒ t	 t  t d ƒ ƒ } t t t ƒ t t ƒ } t t t ƒ d t t  t ƒ t t  d t ƒ ƒ } t t t ƒ d t  t ƒ t t  t ƒ t t  d t ƒ ƒ } t t t ƒ t t  t ƒ d t  t ƒ t t  d t ƒ t t  d t ƒ ƒ } t t t ƒ t t t t d d t  t ƒ ƒ } t t t ƒ t t  t ƒ t t  d t ƒ d t d t  t ƒ d ƒ } t t t ƒ t t t t	 t d t d d t  t ƒ ƒ } t t t ƒ t t t t
 t ƒ t  t ƒ ƒ } t t t ƒ t t ƒ t t d t t ƒ t ƒ t t ƒ t t d t t ƒ t ƒ ƒ } t t t ƒ t t t t d t	 t
 t ƒ d t t d ƒ } t | ƒ } t | ƒ } t | ƒ } t | ƒ } t | ƒ }  t | ƒ }! t | ƒ }" t | ƒ }# t | ƒ }$ t | ƒ }% t | ƒ }& t | ƒ }' t | d |  ƒ| | f k sgt ‚ t | d |  ƒ| | f k s‹t ‚ t | d |  ƒ| | f k s¯t ‚ t | d |  ƒ| | f k sÓt ‚ t | d |  ƒ| |  f k s÷t ‚ t |	 d |  ƒ| |! f k st ‚ t |
 d |  ƒ| |" f k s?t ‚ t | d |  ƒ| |# f k sct ‚ t | d |  ƒ| |$ f k s‡t ‚ t | d |  ƒ| |% f k s«t ‚ t | d |  d ƒ| |& f k sÓt ‚ t | d |  ƒ| |' f k s÷t ‚ t | | d d d t ƒd st ‚ t | | d d d t ƒd sAt ‚ t | | d d d t ƒd sft ‚ t | | d d d t ƒd s‹t ‚ t | | d d d t ƒd s°t ‚ t |	 | d d d t ƒd sÕt ‚ t |
 | d d d t ƒd sút ‚ t | | d d d t ƒd s	t ‚ t | | d d d t ƒd sD	t ‚ t | | d d d t ƒd si	t ‚ t | | d d d t ƒd sŽ	t ‚ d  S(   NRÆ   i   i   i   i   i   i   i   i	   i
   iÿÿÿÿi    i   iþÿÿÿi   i$   R¡   t	   _IntegralR›   Rš   i    (   R   RD   R:   R   R   R   R	   RA   RB   Rƒ   R   R   R„   R+   R   RC   R(   Rž   ((   R¡   R;   RŠ  R»   RM   RO   RQ   RS   RU   RW   RZ   R\   R†   R^   Rú   Rü   RN   RP   RR   RT   RV   RX   R[   R]   R‡   R_   Rû   Rý   RU  RV  RW  RX  RY  RZ  R[  R\  R]  R^  R_  R`  (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt6   test_nth_linear_constant_coeff_variation_of_parametersœ  s‚    E
/9L::K6, RN6@S4L?2<C$$$$$$$$$$($%%%%%%%%%%c          C   s  d }  t  t ƒ j t d ƒ d t  t ƒ j t d ƒ t  t ƒ j t ƒ d t t t t ƒ } t | t  t ƒ d |  d t ƒ} t | t  t ƒ d |  d t ƒ} | | k sµ t ‚ t	 | | d d d t ƒd	 sÚ t ‚ t	 | | d d d t ƒd	 sÿ t ‚ d  S(
   NRÈ   i   i   i   R¡   R   R›   Rš   i    (
   R:   RD   R   R   R   R   R@   Rž   RC   R(   (   R  Rp   t   sol_simpt	   sol_nsimp(    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pytE   test_nth_linear_constant_coeff_variation_of_parameters_simplify_Falseá  s    [!!%c       	   C   s÷  d }  t  t t ƒ t ƒ t t  t t ƒ t t ƒ d t  t t ƒ t ƒ d d } t  t t t t ƒ ƒ t t ƒ } | t t t ƒ ƒ t t t ƒ ƒ j ƒ  } t  t t ƒ t t ƒ d t t ƒ t  t t ƒ t ƒ d d t t  t t ƒ t ƒ } t t  t t ƒ t t ƒ t t t ƒ t  t t ƒ t ƒ d t t  t t ƒ t ƒ } t t t t t ƒ ƒ j  t t ƒ d ƒ } t t t ƒ t t t t t ƒ ƒ } t t t t t t t ƒ ƒ d ƒ } | }	 t	 t t t ƒ t
 t t t t ƒ ƒ ƒ t t t ƒ t
 t t t t ƒ ƒ ƒ g ƒ }
 t	 t t t ƒ t
 t t t t ƒ ƒ t t d ƒ ƒ t t t ƒ t
 t t t t ƒ ƒ t t d ƒ ƒ g ƒ } t t t ƒ t t t t ƒ ƒ } t | ƒ } t |	 ƒ } t |
 ƒ } t | ƒ } t | ƒ } t | d |  ƒ| | f k s't ‚ t | d |  ƒ| | f k sKt ‚ t | d |  ƒ|	 | f k sot ‚ t	 t | d |  ƒƒ |
 | f k s™t ‚ t	 t | d |  ƒƒ | | f k sÃt ‚ t | d |  ƒ| | f k sçt ‚ t | | d d d t ƒd st ‚ t | | d d d t ƒd s1t ‚ t | |	 d d d t ƒd sVt ‚ t | |
 d d d t ƒt d f h k s†t ‚ t | | d d d t ƒt d f h k s¶t ‚ t | | d d d t ƒd sÛt ‚ t t  t t ƒ t ƒ t t t ƒ t  t t ƒ t t ƒ d t  t t ƒ t ƒ d d t t ƒ ƒ } t t  t t ƒ t ƒ t t  t t ƒ t t ƒ d t t  t t ƒ t ƒ d d t t ƒ ƒ } |  | k sµt ‚ |  | k sÇt ‚ |  d | k sÝt ‚ |  d | k sót ‚ d  S(	   NR¶   i   i   i    R¡   R›   Rš   R  (   R   R:   RD   R   t   expandR	   R   RA   RB   R   R   R+   R   RC   R(   Rž   R@   R)   (   R¡   RM   t   eq1aRO   RQ   RS   RU   RN   t   sol1aRP   RR   RT   RV   RU  RV  RW  RX  RY  t   not_Liouville1t   not_Liouville2(    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_Liouville_ODEî  sR    N#-XX+'('/8?#$$$**$%%%00%=*3.c          C   sï   t  t t ƒ t ƒ t t  t t ƒ t t ƒ d t  t t ƒ t ƒ d d }  |  t t t ƒ ƒ t t t ƒ ƒ } t t t ƒ t t t t t ƒ ƒ } t | ƒ } t	 | ƒ | | f k sÆ t
 ‚ t | | d d d t ƒd së t
 ‚ d  S(   Ni   R›   Rš   i    (   R   R:   RD   R   R	   R   RA   RB   R+   R   RC   R(   Rž   (   RM   RO   RP   RV  (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_unexpanded_Liouville_ODE	  s    N''c       
   C   sß   d d l  m }  t |  t t t t ƒ t ƒ t t ƒ t t t ƒ t ƒ t t ƒ d } t | t t ƒ ƒ d k s} t ‚ t d t t ƒ d t t ƒ j t ƒ d t t t ƒ } t | t t ƒ ƒ d k sÛ t ‚ d  S(   Niÿÿÿÿ(   t   Ai   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§   (   t	   sympy.abcR›  RD   R   R:   R)   RC   (   R›  Rp   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_issue_4785&	  s"    L    =      c           C   sÀ   t  t d „  ƒ t t t t ƒ j t ƒ t t t t ƒ t t ƒ d t ƒi d  d 6d d 6k sh t	 ‚ t  t d „  ƒ t t t ƒ j t ƒ t t ƒ d t ƒi d  d 6d d 6k s¼ t	 ‚ d  S(   Nc           S   s6   t  t t t ƒ j t ƒ t t t t ƒ t t ƒ ƒ S(   N(   R   R:   RD   RE   R   (    (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   ;	  Rc   RÎ   R°   i    R›   c           S   s"   t  t t ƒ j t ƒ t t ƒ ƒ S(   N(   R   R:   RD   R   RE   (    (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   ?	  Rc   (
   R6   R   R)   R:   RD   RE   R   R@   R*  RC   (    (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_issue_4825:	  s    ;'c          C   sí   d d l  m }  t t ƒ j t ƒ t t } t t t t t ƒ t t t t t ƒ k ot t t t t k n s t	 ‚ t t t t
 t } xQ |  t t t
 g d ƒ D]7 \ } } } t | | t | t ƒ | k s® t	 ‚ q® Wd  S(   Niÿÿÿÿ(   t
   variationsi   (   t   sympy.utilities.iterablesRŸ  R:   RD   R   RE   R+   RA   RB   RC   Rƒ   (   RŸ  Rp   Ra   R¹   Rº   R»   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt'   test_constant_renumber_order_issue_5308D	  s     (c          C   s  t  d d t ƒ}  t  d ƒ } t d ƒ } t | | ƒ j | d ƒ |  d | | ƒ | | ƒ ƒ } t g  | j D] } | j j d ƒ rp | ^ qp ƒ d k s£ t	 ‚ t
 t t t ƒ t t t ƒ t t ƒ t t t g ƒ ƒ t t t ƒ t t ƒ k s t	 ‚ t
 t t t ƒ t t t ƒ t t t ƒ t t t t g ƒ ƒ t t t ƒ t t t ƒ k sht	 ‚ t
 t t t ƒ t t g ƒ ƒ t t t ƒ k s t	 ‚ t
 t t t t t t g ƒ ƒ t t k sÓt	 ‚ t
 t t t t t d d f ƒ t t g ƒ ƒ t t k st	 ‚ d  S(	   NRG   R9   R?   t   wi   t   Ci   i   (   R   R@   R   R   R   t   lent   free_symbolst   namet
   startswithRC   R,   RA   R   RD   RB   R   R   Rƒ   R   RE   R   (   RG   R?   R¢  Ro   RY   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_issue_5770Q	  s    9@:#A'83c           C   sX   t  t t ƒ t t ƒ t ƒ d  k s, t ‚ t  t t t ƒ t t ƒ d  k sT t ‚ d  S(   N(   R-   R   RD   R   R*  RC   RE   (    (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_issue_5112_5430`	  s    ,c    
      C   sè  t  d ƒ \ }  } } } } t d ƒ } d } t t | ƒ | d ƒ | d d t t | ƒ | d ƒ | d d t | ƒ } | t | ƒ k s• t ‚ | | | ƒ | | t | | ƒ | ƒ | | d t | | ƒ | d ƒ } | t | ƒ k sú t ‚ t d t t |  ƒ |  ƒ |  d |  d t t |  ƒ |  |  ƒ d	 ƒ } t t |  t	 d
 d ƒ } t
 | ƒ }	 | t | ƒ k st ‚ t | t |  ƒ d | ƒj | |	 f k s±t ‚ t | | d d d t ƒd	 sÖt ‚ t d t |  ƒ d
 t t |  ƒ |  ƒ |  d |  d t t |  ƒ |  |  ƒ d	 ƒ } t t |  ƒ t |  d } t
 | ƒ }	 | t | ƒ k slt ‚ t | t |  ƒ d | ƒj | |	 f k sœt ‚ t | | d d d t ƒd	 sÁt ‚ t d t |  ƒ d
 t t |  ƒ |  ƒ |  |  d t t |  ƒ |  |  ƒ d	 ƒ } t t t |  ƒ |  d } t
 | ƒ }	 | t | ƒ k sSt ‚ t | t |  ƒ d | ƒj | |	 f k sƒt ‚ t | | d d d t ƒd	 s¨t ‚ t d t |  ƒ d t t |  ƒ |  ƒ |  d |  d t t |  ƒ |  |  ƒ |  d t t |  ƒ |  |  |  ƒ d	 ƒ } t | t |  ƒ d | ƒ} t |  d t |  t |  d } t
 | ƒ }	 | t | ƒ k s€t ‚ t | t |  ƒ d | ƒj | |	 f k s°t ‚ t | | d d d t ƒd	 sÕt ‚ t d t |  ƒ d t t |  ƒ |  ƒ |  d |  d t t |  ƒ |  |  ƒ |  d t t |  ƒ |  |  |  ƒ d	 ƒ } |  d
 t t t |  ƒ t t |  ƒ d } | t
 | ƒ g }	 |	 |	 d j ƒ  g 7}	 | t | ƒ k s»t ‚ t | t |  ƒ d | ƒj |	 k såt ‚ t | | d d d t ƒd	 s
t ‚ | d t | | ƒ | d ƒ | t | | ƒ | ƒ d | | ƒ } t | d t | d } t
 | ƒ }	 | t | ƒ k st ‚ t | | | ƒ d | ƒj | |	 f k s½t ‚ t | | d d d t ƒd	 sât ‚ t |  ƒ |  d t |  ƒ j |  d ƒ t |  ƒ |  t |  ƒ j |  ƒ t |  ƒ t |  ƒ } t t t |  ƒ ƒ t t t |  ƒ ƒ } t
 | ƒ }	 | t | ƒ k st ‚ t | t |  ƒ d | ƒj | |	 f k s¿t ‚ t | | d d d t ƒd	 sät ‚ d  S(   Ns	   x t a b cRE   R²   i   i   i   i$   iýÿÿÿi    i   R¡   R›   Rš   i   i   i   iƒÿÿÿi=   i   iÿÿÿÿi	   (   R!   R   R   R:   R)   RC   R	   RA   RB   R   R+   R   Rx   R(   Rž   R   R   Rƒ   R”  R   R   (
   RD   R?   R¹   Rº   R»   RE   R  Rp   Ro   R  (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt*   test_nth_order_linear_euler_eq_homogeneouse	  sf    PMH0%V0%R0%w"0%w.*%E0%_*0c    
      C   sÝ  t  d ƒ \ }  } t  d d t ƒ\ } } } } d } |  d t t |  ƒ |  d ƒ d |  d t t |  ƒ |  d ƒ d t |  ƒ |  } | t | t |  ƒ ƒ k s« t ‚ | |  d t t |  ƒ |  d ƒ | |  t t |  ƒ |  ƒ | t |  ƒ | t |  ƒ } | t | t |  ƒ ƒ k s't ‚ t |  d t t |  ƒ |  |  ƒ |  t t |  ƒ |  ƒ d	 ƒ } t t	 t |  ƒ t |  ƒ d d } t
 | ƒ }	 | t | t |  ƒ ƒ k sºt ‚ t | t |  ƒ d
 | ƒj | |	 f k sêt ‚ t | | d d d t ƒd st ‚ t |  d t t |  ƒ |  |  ƒ d |  t t |  ƒ |  ƒ d t |  ƒ |  d ƒ } |  t t	 |  t d	 d ƒ |  d } t
 | ƒ }	 | t | t |  ƒ ƒ k s¹t ‚ t | t |  ƒ d
 | ƒj | |	 f k sét ‚ t | | d d d t ƒd st ‚ t |  d t t |  ƒ |  |  ƒ |  t t |  ƒ |  ƒ d t |  ƒ t |  ƒ |  ƒ } t |  t	 |  d t d	 d ƒ t |  ƒ |  t d	 d ƒ t |  ƒ d |  } t
 | ƒ }	 | t | t |  ƒ ƒ k sãt ‚ t | t |  ƒ d
 | ƒj j ƒ  | |	 f k st ‚ t | | d d d t ƒd s>t ‚ t |  d t t |  ƒ |  |  ƒ d |  t t |  ƒ |  ƒ d t |  ƒ t |  ƒ d t |  ƒ ƒ } t |  d t	 |  d t d	 d ƒ t |  ƒ d t d d ƒ t |  ƒ d t d	 d ƒ t |  ƒ t d d ƒ } t
 | ƒ }	 | t | ƒ k s<t ‚ t | t |  ƒ d
 | ƒj j ƒ  | |	 f k srt ‚ t | | d d d t ƒd s—t ‚ t |  d t t |  ƒ |  |  |  ƒ d |  d t t |  ƒ |  |  ƒ d |  t t |  ƒ |  ƒ d t |  ƒ t |  ƒ ƒ } t |  t	 |  d t |  d t d	 d ƒ t |  ƒ t d d ƒ } t
 | ƒ }	 | t | ƒ k s~t ‚ t | t |  ƒ d
 | ƒj j ƒ  | |	 f k s´t ‚ t | | d d d t ƒd sÙt ‚ d  S(   Ns   x ts   a b c dt   integerRÊ   i   i   i   i$   i   R¡   R›   Rš   i    i   i   i   i    i@   i   i   i   i   (   R!   R@   R   R:   R)   RC   R   R	   RA   RB   R+   R   Rx   R(   Rž   R   R”  Rƒ   (
   RD   R?   R¹   Rº   R»   t   dR  Rp   Ro   R  (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pytG   test_nth_order_linear_euler_eq_nonhomogeneous_undetermined_coefficients¤	  sJ    T![!@&!0%V'!0%XP!6%ft6%}F6c    
      C   s‹  t  d ƒ \ }  } t  d d t ƒ\ } } } } d } t |  d t t |  ƒ |  d ƒ d |  t t |  ƒ |  ƒ d t |  ƒ |  d ƒ } | t | t |  ƒ ƒ k s­ t ‚ t | |  d t t |  ƒ |  d ƒ | |  d t t |  ƒ |  d ƒ | |  t t |  ƒ |  ƒ | t |  ƒ |  t |  ƒ ƒ } | t | t |  ƒ ƒ k sPt ‚ t |  d t t |  ƒ |  |  ƒ d |  t t |  ƒ |  ƒ d t |  ƒ |  d	 ƒ } t	 |  t
 |  d |  d	 d
 } t | ƒ }	 | t | ƒ k sìt ‚ t | t |  ƒ d | ƒj j ƒ  | |	 f k s"t ‚ t | | d d d t ƒd sGt ‚ t d |  d t t |  ƒ |  |  ƒ d
 |  t t |  ƒ |  ƒ d
 t |  ƒ |  d t |  ƒ ƒ } t	 |  d t
 |  |  t |  ƒ d d	 t |  ƒ d d t |  ƒ d |  d t |  ƒ d |  d } t | ƒ }	 | t | ƒ k s9t ‚ t | t |  ƒ d | ƒj j ƒ  | |	 f k sot ‚ t | | d d d t ƒd s”t ‚ t |  d t t |  ƒ |  |  ƒ d |  t t |  ƒ |  ƒ d t |  ƒ |  d	 t |  ƒ ƒ } t	 |  t
 |  d |  d t |  ƒ d |  t |  ƒ } t | ƒ }	 | t | ƒ k sRt ‚ t | t |  ƒ d | ƒj j ƒ  | |	 f k sˆt ‚ t | | d d d t ƒd s­t ‚ |  d t t |  ƒ |  |  ƒ d |  t t |  ƒ |  ƒ d t |  ƒ t |  ƒ } t	 |  t
 |  d t |  ƒ d t d ƒ d	 } t | ƒ }	 | t | ƒ k sVt ‚ t | t |  ƒ d | ƒj | |	 f k s†t ‚ t | | d d d t ƒd s«t ‚ t |  ƒ |  t t |  ƒ |  d f ƒ t t |  ƒ |  ƒ |  } t t |  ƒ t	 t
 t |  ƒ t |  ƒ t |  ƒ ƒ } | t | ƒ k s;t ‚ t | t |  ƒ d | ƒ| k sbt ‚ t | | d d d t ƒd s‡t ‚ d  S(   Ns   x, ts
   a, b, c, dR«  RË   i   i   i   i   i   i   R¡   R›   Rš   i    (   R!   R@   R	   R   R:   R)   RC   R   R   RA   RB   R+   R   Rx   R”  R(   Rž   R   R   R$   (
   RD   R?   R¹   Rº   R»   R¬  R  Rp   Ro   R  (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pytE   test_nth_order_linear_euler_eq_nonhomogeneous_variation_of_parametersÓ	  sH    V!‚!V"6%dj6%`:6%S20%A7'c              s<   t  d ƒ ‰  t t ‡  f d †  ƒ t t ‡  f d †  ƒ d  S(   NR:   c              s)   t  ˆ  t ƒ j t ƒ d ˆ  t ƒ d ƒ S(   Ni   R³   (   R   RD   R   (    (   R:   (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   
  Rc   c              s)   t  ˆ  t ƒ j t ƒ d ˆ  t ƒ d ƒ S(   Ni   t   fdsjf(   R   RD   R   (    (   R:   (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   
  Rc   (   R   R6   R   (    (    (   R:   s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_issue_5095
  s    c          C   sÛ  d d l  m }  t d d t ƒ} d } t d ƒ } | t ƒ j t ƒ } t d | t ƒ d | | t ƒ d d	 } t | | t ƒ d
 d ƒ} | d j t	 t
 d t ƒ d	 t d	 ƒ d k sË t ‚ t | | d d	 d t ƒd sð t ‚ t | t ƒ | d t | t ƒ d d	 } t | | t ƒ d
 d ƒ} | d j t t	 d |  d t ƒ ƒ t
 d t ƒ k syt ‚ t | | d d	 d t ƒd sžt ‚ t | t | t ƒ d	 } t | | t ƒ d
 d ƒ} | j t	 |  t ƒ t
 t ƒ k sÿt ‚ t | | d d	 d t ƒd s$t ‚ | t | | t ƒ ƒ k sEt ‚ t t
 | t ƒ ƒ | t
 | t ƒ ƒ d t } t | | t ƒ d
 d ƒ} | j t t	 t d t d ƒ k s½t ‚ t | | d d	 d t ƒd sât ‚ t | t t | t ƒ t ƒ | t ƒ t | t ƒ t ƒ | t ƒ d } t | | t ƒ d
 d ƒ} | j t	 t t t | d	 d ƒ f | t | t d	 t
 t ƒ | d	 t f ƒ t
 t ƒ k s²t ‚ t | | d d	 d t ƒd s×t ‚ d  S(   Niÿÿÿÿ(   R$   R›  R=  R¬   R:   i   i   i   R¡   i    R›   Rš   i   iþÿÿÿ(   Rœ   R$   R   R@   R   RD   R   R   Rx   RA   R   R   RC   R(   Rž   R   R)   R   R    R	   (   R$   R›  R  R:   R¬  Rp   Ro   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_almost_linear
  s6    .9%.@%*%!2+%L]c       	   C   s¢  t  d ƒ t ƒ }  t |  t ƒ } |  t d |  t d t | } g  d D]3 } t |  | t t t d d ƒ d t ƒ ^ qJ } t t | |  ƒ ƒ t | ƒ k sª t ‚ t	 | | d d d t
 ƒt d f t d f g k sã t ‚ t |  d | t d t |  } t |  t t t t d d t t ƒ ƒ ƒ t |  t t t t d d t t ƒ ƒ ƒ g } t t | |  ƒ ƒ t | ƒ k sŠt ‚ t	 | | d d d t
 ƒt d f t d f g k sÃt ‚ t d t |  ƒ | t t |  ƒ } t |  t t t t ƒ t d ƒ t ƒ t |  t t t t ƒ t d ƒ ƒ g } t t | |  ƒ ƒ t | ƒ k set ‚ t	 | | d d d t
 ƒt d f t d f g k sžt ‚ d  S(	   NR:   i   i   iÿÿÿÿR›   Rš   i    (   iÿÿÿÿi   (   R   RD   R   R	   R   RA   R   R   RC   R(   Rž   R@   R   R   R   R   R   R   (   R:   t   dfRp   R}   Ro   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_exact_enhancement)
  s     "@'9",2'9&*+'c          C   s»  t  d ƒ }  t d ƒ } |  | ƒ j | ƒ } | |  | ƒ | t | d |  | ƒ | d |  | ƒ d ƒ } t | ƒ d k s‡ t ‚ | | |  | ƒ d | d |  | ƒ d } t | ƒ d k sÍ t ‚ t | d d d	 t ƒ} | j t	 | d |  | ƒ ƒ d
 t	 | d |  | ƒ t
 d
 ƒ d ƒ d k s<t ‚ | j t t	 | ƒ k s[t ‚ t | | d d d t ƒd s€t ‚ |  | ƒ j | ƒ |  | ƒ | d |  | ƒ | } t | ƒ d k sÍt ‚ t | d d ƒ} t | ƒ d k s÷t ‚ | | |  | ƒ | d |  | ƒ } t | d d d	 t ƒ} | t t	 | d |  | ƒ ƒ d t	 | d |  | ƒ d ƒ d t t	 | ƒ ƒ k s’t ‚ t | | d d d t ƒd s·t ‚ d  S(   NR:   RD   i   i   t   separable_reducedR±   t   separable_reduced_IntegralR¡   R   i   i   R›   Rš   i    i   (   R´  R±   Rµ  (   R´  R±   Rµ  (   R´  R±   Rµ  (   R   R   R   R   R)   RC   R   Rž   Rw   R   R   Rx   RA   R(   R¤  R	   (   R:   RD   R²  Rp   Ro   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_separable_reduced>
  s,    B	.	W%5	&]c          C   s6  t  d ƒ }  t t |  t ƒ ƒ } t d t d |  t ƒ ƒ } t d t d |  t ƒ ƒ } t d t d |  t ƒ d |  t ƒ d t ƒ } t d t d d |  t ƒ d ƒ } t d t d |  t ƒ d |  t ƒ d t t d t d d |  t ƒ d ƒ ƒ } t d t d |  t ƒ t d ƒ } t | t |  t ƒ ƒ d  k sZt	 ‚ t | t |  t ƒ ƒ d k s~t	 ‚ t | t |  t ƒ ƒ d  k s¢t	 ‚ t | t |  t ƒ ƒ d k sÆt	 ‚ t | t |  t ƒ ƒ d k sêt	 ‚ t | t |  t ƒ ƒ d k st	 ‚ t | t |  t ƒ ƒ d  k s2t	 ‚ d  S(   NR:   i   i   i   i   i   i    (
   R   R   RD   R   R   R   R   R-   R*  RC   (   R:   RM   RO   RQ   RS   RU   RW   RZ   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_homogeneous_function]
  s    4&X&$$$$$$c          C   s)  d d l  m }  t d t d t t ƒ d t d t d t t ƒ d } } | | } t | ƒ t | j ƒ  ƒ } | } t t | ƒ ƒ } d	 t	 d
 ƒ d f } |  | t t ƒ ƒ | k sÇ t
 ‚ |  | t t ƒ ƒ | k sè t
 ‚ |  | t t ƒ ƒ | k s	t
 ‚ d t t t ƒ } d t d t }	 d t d t t ƒ d d t d t t ƒ d }
 d t d t t ƒ t d ƒ d t d t t ƒ d } |  | t t ƒ ƒ d  k sÂt
 ‚ |  |	 t t ƒ ƒ d  k sãt
 ‚ |  |
 t t ƒ ƒ d  k st
 ‚ |  | t t ƒ ƒ d  k s%t
 ‚ d  S(   Niÿÿÿÿ(   t   _linear_coeff_matchi   i   i   i   i	   i   i   i   i   (   t   sympy.solvers.odeR¸  RF   RD   R:   R   R   R”  R   R   RC   R   R*  (   R¸  RJ   R¬  t   ratRM   RO   RQ   RÐ   RS   RU   RW   RZ   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_linear_coeff_matcho
  s$    A
!!!6<!!!c          C   s¹   t  d ƒ }  t |  t ƒ t t d d t d t d ƒ d ƒ } |  t ƒ j t ƒ d d |  t ƒ t d } t | d d ƒ| k s t ‚ t | | d d	 d
 t	 ƒd sµ t ‚ d  S(   NR:   i   i   i	   i   R¡   t   linear_coefficientsR›   i   Rš   i    (
   R   R	   RD   RA   R   R   R   RC   R(   Rž   (   R:   Ro   Rp   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_linear_coefficients‰
  s
    7/c          C   sS   t  t ƒ d }  t t t t  t ƒ |  |  t t g ƒ ƒ j ƒ d k sO t ‚ d  S(   Ni   (   R   RA   R¤  R"   R,   RD   t   gensRC   (   R»   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_constantsimp_take_problem‘
  s    c          C   s¾   t  d ƒ }  t t |  t ƒ t d ƒ d t |  t ƒ t ƒ |  t ƒ t t ƒ ƒ } t t t t t ƒ t t ƒ d } t	 | ƒ j
 | k s• t ‚ t | | d d d t ƒd sº t ‚ d  S(   NR:   i   R›   i   Rš   i    (   R   R	   R   RD   R   RA   RB   R   R   R   Rx   RC   R(   Rž   (   R:   Rp   Ro   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_issue_6879–
  s
    H&c          C   sÀ  t  d ƒ }  t d ƒ } |  t ƒ j t ƒ t t | t ƒ } t |  t ƒ t t | t d t | t ƒ | d t | d d ƒ f t d d t	 f ƒ ƒ } t
 | |  t ƒ ƒ | k sÄ t ‚ t | | d d d t ƒd sé t ‚ |  t ƒ j t ƒ t t | t ƒ } t |  t ƒ t t | t d t | t ƒ | d t | d d ƒ f t d 
d t	 f ƒ ƒ } t
 | |  t ƒ ƒ | k s—t ‚ t | | d d d t ƒd s¼t ‚ d  S(   NR:   RG   i   i   i    R›   Rš   (   R   R   RD   R   R   R	   RA   R    R
   R@   R   RC   R(   Rž   (   R:   RG   Rp   Ro   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_issue_6989ž
  s    (6!%)6!c       	   C   sO  t  d ƒ \	 }  } } } } } } } } t d ƒ }  t d ƒ }	 t d ƒ }
 t d ƒ } |	 t ƒ j t ƒ } t | t d |	 t ƒ ƒ } |	 t ƒ j t ƒ | |	 t ƒ | t | t ƒ } |	 t ƒ j t ƒ d t |	 t ƒ t t t d ƒ } d d t | d d t |	 t ƒ ƒ } |	 t ƒ j t ƒ | t d | t d	 | t d | t | t d
 ƒ d } t d | |	 t ƒ t d t t d t ƒ } | | | | | | g } t | d d ƒ} | i t t d	 d	 ƒ | t |	 t ƒ ƒ 6d |
 t |	 t ƒ ƒ 6i |	 t ƒ | t |	 t ƒ ƒ 6d |
 t |	 t ƒ ƒ 6i d | t |	 t ƒ ƒ 6t d |
 t |	 t ƒ ƒ 6g k s‰t	 ‚ t | d d ƒ} | i t | t ƒ | t |	 t ƒ ƒ 6d |
 t |	 t ƒ ƒ 6g k sçt	 ‚ t | d d ƒ} | i t t d ƒ | t |	 t ƒ ƒ 6d |
 t |	 t ƒ ƒ 6g k sEt	 ‚ t | d d ƒ} | i d | t |	 t ƒ ƒ 6d t d |
 t |	 t ƒ ƒ 6i d | t |	 t ƒ ƒ 6d t |	 t ƒ ƒ d |
 t |	 t ƒ ƒ 6g k sãt	 ‚ t | d d ƒ} | i d | t |	 t ƒ ƒ 6d |
 t |	 t ƒ ƒ 6i d | t |	 t ƒ ƒ 6t
 | | t | t d | t d	 | t d ƒ |
 t |	 t ƒ ƒ 6g k s—t	 ‚ t | d d ƒ} | i d |
 t |	 t ƒ ƒ 6t d
 t ƒ | t |	 t ƒ ƒ 6g k sôt	 ‚ | | | | | | g } x< t | | ƒ D]+ \ } } t | | ƒ } | d st	 ‚ qWd  S(   Ns   y a b c a4 a3 a2 a1 a0RE   R:   t   xit   etai   i   i   i   iÿÿÿÿR¡   t   abaco1_simplei    iþÿÿÿ(   R!   R   R   RD   R   R	   R   R   R.   RC   R   Rl   R/   (   RE   R¹   Rº   R»   t   a4t   a3t   a2t   a1t   a0R:   RÂ  RÃ  R²  Rp   RM   RO   RQ   RS   RU   t   eqlistR}   t   i1t   i2t   i3t   i4t   i5t   ilistt   check(    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_heuristic1³
  sD    '5:+S2@5BLL:R2WKc          C   s+  t  d t t  ƒ d t  t t t  ƒ t  ƒ }  t t t  ƒ d t t t  d d ƒ } t |  d d ƒ| k sv t ‚ t |  | d d ƒd s• t ‚ t t  ƒ j t  t  ƒ d t t  ƒ }  t t t  ƒ t t	 d t  ƒ t
 t d t  ƒ ƒ } t |  ƒ | k st ‚ t |  | d d ƒd s't ‚ d  S(   Ni   i   R¡   R´  R›   i    i   (   RD   R:   R   R	   RA   R   RC   R(   R   R   RB   R   (   Rp   Ro   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_issue_6247Ú
  s    /)&5c          C   sî   t  d ƒ }  t d ƒ } t d ƒ } t t ƒ j t ƒ } | t t ƒ t t t t d t t ƒ ƒ d } t | d d ƒ} | i t t ƒ t t ƒ | t t t ƒ ƒ 6d | t t t ƒ ƒ 6g k sÑ t ‚ t	 | | ƒ d sê t ‚ d  S(   NRE   RÂ  RÃ  i   R¡   t   abaco1_producti    (
   R   R   R:   RD   R   R   R.   R   RC   R/   (   RE   RÂ  RÃ  R²  Rp   R}   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_heuristic2æ
  s    4Rc          C   s]  t  d ƒ }  t d ƒ } t d ƒ } t d ƒ \ } } t t ƒ j t ƒ } t d | t t t ƒ t t ƒ d t d } t | d d ƒ} | i t t ƒ | t t t ƒ ƒ 6t | t t t ƒ ƒ 6g k sÖ t ‚ t | | ƒ d sï t ‚ t d t t ƒ d | | t d t t ƒ d | t } t | d d ƒ} t | | ƒ d sYt ‚ d  S(	   NRE   RÂ  RÃ  s   a bi   R¡   t	   bivariatei    (	   R   R   R!   R:   RD   R   R.   RC   R/   (   RE   RÂ  RÃ  R¹   Rº   R²  Rp   R}   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_heuristic3ô
  s    2G?c          C   s„   t  d ƒ \ }  } t d ƒ } t d ƒ } t t t ƒ j t ƒ d t t ƒ d } t | d d ƒ} t | | ƒ d s€ t ‚ d  S(	   Ns   y aRÂ  RÃ  i   i   R¡   t   chii    (   R!   R   RD   R:   R   R.   R/   RC   (   RE   R¹   RÂ  RÃ  Rp   R}   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_heuristic_4  s    +c          C   s  t  d ƒ }  t  d ƒ } t t ƒ j t ƒ d d t d t t ƒ d t t t ƒ t ƒ d d t t ƒ t d d t t ƒ t t t ƒ d } t | d d ƒ} | i t t ƒ d t d | t t t ƒ ƒ 6d	 |  t t t ƒ ƒ 6g k sþ t ‚ t | | ƒ d	 st ‚ d  S(
   NRÂ  RÃ  i   i   i   R¡   t   function_sumiþÿÿÿi    (   R   R:   RD   R   R   R.   RC   R/   (   RÂ  RÃ  Rp   R}   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_heuristic_function_sum  s    Y(Sc          C   s­  t  d ƒ }  t  d ƒ } t  d ƒ } t d ƒ \ } } t t ƒ j t ƒ | | t | t t ƒ ƒ } t | d d ƒ} | i | | | t t t ƒ ƒ 6d |  t t t ƒ ƒ 6g k s¿ t ‚ t | | ƒ d sØ t ‚ t t ƒ j t ƒ t t ƒ d	 t t t ƒ t ƒ t d	 d	 t t t ƒ } t | d d ƒ} | i t t ƒ d	 | t t t ƒ ƒ 6t t ƒ d	 |  t t t ƒ ƒ 6g k st ‚ t | | ƒ d s©t ‚ d  S(
   NRÂ  RÃ  t   Fs   a bR¡   t   abaco2_similari   i    i   (	   R   R!   R:   RD   R   R.   RC   R/   R   (   RÂ  RÃ  RÜ  R¹   Rº   Rp   R}   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_heuristic_abaco2_similar  s    1FQUc          C   sl  t  d ƒ }  t  d ƒ } t  d ƒ } t d ƒ \ } } t d d t ƒ} t | ƒ j | ƒ | | d t | ƒ d | | | | | t | ƒ | | ƒ } t | d d	 ƒ} | i t | ƒ t | ƒ | | | t | ƒ ƒ 6| | | |  | t | ƒ ƒ 6g k st ‚ t | | ƒ d
 s*t ‚ t | ƒ j | ƒ t	 | | d t | ƒ d ƒ t
 | t | ƒ ƒ ƒ } t | d d	 ƒ} | i | | | t | ƒ ƒ 6t | ƒ |  | t | ƒ ƒ 6g k sÏt ‚ t | | ƒ d
 sèt ‚ | t | ƒ j | ƒ t | ƒ d | d d | t | ƒ d | d d | } t | d d	 ƒ} t | | ƒ d
 sht ‚ d  S(   NRÂ  RÃ  RÜ  s   a bRD   R=  i   R¡   t   abaco2_unique_unknowni    i   i   (   R   R!   R   R@   R:   R   R.   RC   R/   R   R   (   RÂ  RÃ  RÜ  R¹   Rº   RD   Rp   R}   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt$   test_heuristic_abaco2_unique_unknown*  s     W`KHUc    	      C   sº   t  d ƒ }  t  d ƒ } t  d ƒ } t d ƒ \ } } } } t | | d | t t ƒ j t ƒ | t t ƒ | | t | | d } t | d d ƒ} t | | ƒ d s¶ t ‚ d  S(	   NRÂ  RÃ  RÜ  s   a b m ni   R¡   t   lineari    (   R   R!   RD   R:   R   R.   R/   RC   (	   RÂ  RÃ  RÜ  R¹   Rº   RI   RJ   Rp   R}   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_heuristic_linear?  s    Oc          C   s†   t  d ƒ \ }  } } } t d |  t t ƒ d t t ƒ j t ƒ | t | | } t | d d ƒ} t | | ƒ d s‚ t ‚ d  S(   Ns   a b alpha ci   R¡   t   sum_functioni    (   R!   RD   R:   R   R.   R/   RC   (   R¹   Rº   t   alphaR»   Rp   R}   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt
   test_kamkeI  s    ?c       	   C   sé  t  d ƒ }  t t ƒ j t ƒ t t ƒ } t | d d ƒt t t ƒ |  |  t |  t d d |  t d d |  t d d |  t d	 d
 t t d ƒ ƒ k s® t ‚ t t ƒ j t ƒ t t t ƒ } t | d d ƒt t t ƒ |  t d d |  t d d |  t t d ƒ ƒ k s,t ‚ t t ƒ j t ƒ t t t t ƒ ƒ } t t t ƒ t d d d t d ƒ t	 d ƒ t d t d ƒ d t t d ƒ ƒ } t | d d d i d t d ƒ 6d d ƒ| k såt ‚ d  S(   NRA   R¡   RÃ   i   i   i   i   i   i   ix   i   i   RÒ   RJ   (
   R   R:   RD   R   R   R	   R   RC   R   R   (   RA   Rp   Ro   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_seriesQ  s    h#@)Yc    	      C   s  t  d ƒ }  t  d ƒ } t d ƒ \ } } } t | ƒ j | ƒ d } t | t | ƒ d d ƒ} t | | ƒ d sz t ‚ t t | ƒ j | ƒ | d t | ƒ ƒ } t | t | ƒ d d ƒ} | t t | ƒ |  t | d ƒ t	 d	 ƒ d ƒ k sþ t ‚ t | | ƒ d st ‚ t | ƒ j | ƒ | t | ƒ | t | | ƒ } t | t | ƒ d d ƒ} t | | ƒ d s€t ‚ t | ƒ j | ƒ d | t | ƒ | t | d ƒ } t | t | ƒ d d ƒ} t t | ƒ |  | d d t | d ƒ ƒ } t
 | ƒ d
 t
 | ƒ d t
 | ƒ } | | k sEt | ƒ ‚ t | | ƒ d s^t ‚ d	 d | t | ƒ j | ƒ d d t t | ƒ ƒ } t | t | ƒ d d ƒ} | t t | ƒ t |  d | d	 d ƒ ƒ k sêt ‚ t | | ƒ d st ‚ | d t | ƒ j | ƒ t | ƒ | d t | d	 | ƒ } t | t | ƒ d d ƒ} t | | ƒ d sxt ‚ | d t | ƒ d | t t | ƒ | ƒ } t | t | ƒ d d ƒ} | t t | ƒ d |  | d ƒ k sït ‚ t | | ƒ d st ‚ d  S(   NRA   RD   s   a b ci   R¡   R±   i    i   i   s    : s    == i   (   R   R!   R:   R   R   R(   RC   R	   R   R   R…   R   R   (	   RA   RD   R¹   Rº   R»   Rp   Ro   t
   actual_solt   errstr(    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_lie_groupa  s<    ,=5:0(:7A/-c          C   sJ   t  t t ƒ j t ƒ t t ƒ ƒ }  d t |  t t ƒ ƒ k sF t ‚ d  S(   NR±   (   R   R:   RD   R   R)   RC   (   RŸ   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_lie_group_issue15219ˆ  s    %c             s÷   t  d ƒ ‰ ˆ t ˆ ƒ j ˆ ƒ d t ˆ ƒ d ‰  t t ˆ ƒ t ˆ d t ˆ d ƒ }  i t t ˆ ƒ d ƒ t t ˆ ƒ d ƒ d 6d d 6} t ˆ  d d | |  k s¹ t ‚ t ˆ  |  ƒ t	 d f k sÚ t ‚ t
 t ‡  ‡ f d	 †  ƒ d  S(
   NRD   i   i   RÂ  i    RÃ  R¡   R±   c        	      s"   t  ˆ  d d d d d t ˆ ƒ ƒS(   NR¡   R±   RÂ  i    RÃ  (   R   R:   (    (   Rp   RD   (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   •  Rc   (   R   R:   R   R	   RA   R   R   RC   R(   R@   R6   R   (   Ro   R.   (    (   Rp   RD   s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_user_infinitesimals  s    +)8!!c          C   s–   t  t t  ƒ j t  ƒ d t t  ƒ d }  t t t  ƒ d t t  d t t  d ƒ } t |  ƒ | k sq t ‚ t |  | ƒ t d f k s’ t ‚ d  S(   Ni   i   iÿÿÿÿi    (	   RD   R:   R   R	   RA   R   RC   R(   R@   (   Rp   RY   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_issue_7081˜  s    +.c          C   s„  t  d ƒ \ }  } t t ƒ j t d ƒ t t t ƒ } t | ƒ d k sP t ‚ t | ƒ t t t ƒ | t d d d |  t t d d d t t d ƒ ƒ k s­ t ‚ t | d d	 ƒt t t ƒ | t d d
 d t d d d t d d d |  t t d d
 d t d d d t	 d ƒ t t d ƒ ƒ k sJt ‚ t | d d ƒt t t ƒ | t |  t t d ƒ ƒ k st ‚ d t d t t ƒ j t d ƒ d t t t ƒ j t ƒ d t t ƒ } t | ƒ d k sòt ‚ t | ƒ t t t ƒ | t d
 d t d d |  t t t d ƒ ƒ k sHt ‚ t t ƒ j t d ƒ t t t ƒ j t ƒ t t ƒ } t | ƒ d k s™t ‚ t | ƒ t t t ƒ | t d
 d t d d d |  t t d d d t t d ƒ ƒ k st ‚ t t ƒ j t d ƒ t t ƒ j t ƒ t t t ƒ } t | ƒ d k sTt ‚ t | ƒ t t t ƒ | t d
 d t d d d |  t t d d t d d t d d t t d ƒ ƒ k sÒt ‚ t t ƒ j t d ƒ t t t ƒ } t | ƒ d k st ‚ t | d d ƒt t t ƒ | t d d t d d d |  t t d d d t t d ƒ ƒ k s€t ‚ d  S(   Ns   C1 C2i   RÀ   i   i   i   i   RK   iþÿÿÿi   RJ   i   i   i   i´   (   RÀ   (   RÀ   (   RÀ   (   RÀ   (   RÀ   (
   R!   R:   RD   R   R)   RC   R   R	   R   R   (   RA   RB   Rp   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_2nd_power_series_ordinaryŸ  s0    &H‚CMA9U9i&c          C   s  t  d ƒ \ }  } t d t t ƒ j t d ƒ d t t t ƒ j t ƒ d t d t t ƒ } t | ƒ t t t ƒ |  t d d t d d d t d d t d t t d ƒ ƒ k sÈ t ‚ d t d t t ƒ j t d ƒ d	 t d t t ƒ j t ƒ d t d d t t ƒ } t | ƒ t t t ƒ |  t t ƒ t d d
 t d d t d d t d t t d ƒ ƒ k st ‚ t d t t ƒ j t d ƒ t d t t ƒ j t ƒ t d d t t ƒ } t | ƒ t t t ƒ |  t d d d t d d t d d	 t d d t d d t | t d t d d t d d t d d t t d ƒ ƒ k sŒt ‚ t d t t ƒ j t d ƒ t t t ƒ j t ƒ t d t	 d ƒ d t t ƒ } t | ƒ t t t ƒ |  t d d
 t d d d t t ƒ | t t ƒ t d d t d d d t t d ƒ ƒ k sht ‚ t t t ƒ j t d ƒ t t ƒ j t ƒ d t d t t ƒ } t | ƒ t t t ƒ | t d d d |  t d t t d ƒ ƒ k sÿt ‚ d  S(   Ns   C1 C2i   i   i   iðÿÿÿi	   i   i   i   i   iÐ  i   iP   i<   i   ix   (
   R!   RD   R:   R   R   R	   R   RC   R   R   (   RA   RB   Rp   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_2nd_power_series_regularÄ  s"    Q EK"I8–WpEc          C   sÛ   t  d ƒ }  t t |  ƒ t d |  t |  d ƒ d ƒ t t |  ƒ t d |  t |  d ƒ d ƒ g } t t |  ƒ |  ƒ d |  d } t t | ƒ ƒ t | ƒ k s¯ t ‚ t	 | | ƒ t
 d f g d k s× t ‚ d  S(   NRD   i   i   i   i    (   R   R	   R:   RA   R   R   R   R   RC   R(   R@   (   RD   Ro   Rp   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_issue_7093Þ  s    ,2!$c          C   s
  t  d d t ƒ}  t t t t ƒ t ƒ |  t t ƒ ƒ t t t t ƒ t ƒ |  t t ƒ ƒ f } t t t ƒ t |  t |  t ƒ t	 |  t
 |  t ƒ ƒ t t t ƒ t |  t
 |  t ƒ t	 |  t |  t ƒ ƒ g } t | | ƒ t d d g f k st ‚ d  S(   Nt   epsilonR=  i    (   R   R@   R	   R   R:   RD   R;   RA   R   RB   R   R0   RC   (   t   epsRM   RN   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_dsolve_linsystem_symbolæ  s
    Q;Ac       	   C   sm  t  d ƒ }  t d ƒ } t d ƒ } t  d ƒ } t  d ƒ } t t | |  ƒ |  ƒ d | |  ƒ ƒ t t | |  ƒ |  ƒ d | |  ƒ ƒ f } t | |  ƒ d | t d t d	 ƒ |  ƒ d | t d
 t d	 ƒ |  ƒ ƒ t | |  ƒ d t d	 ƒ | t d t d	 ƒ |  ƒ d t d	 ƒ | t d
 t d	 ƒ |  ƒ ƒ g } t | | ƒ t d d g f k sit ‚ d  S(   NR?   RA   RB   Rƒ   R„   i	   i   i   i   iúÿÿÿi    (	   R   R   R	   R   R   R   R0   R@   RC   (   R?   RA   RB   Rƒ   R„   Rp   Ro   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_C1_function_9239í  s    PNhc          C   sJ   t  d ƒ }  t  d ƒ } t t  d ƒ t d ƒ |  ƒ ƒ | k sF t ‚ d  S(   NR?   Rƒ   RA   RB   (   R   R2   R   RC   (   R?   Rƒ   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_issue_15056ø  s    c          C   s½   t  d ƒ \ }  } t |  ƒ j |  ƒ d d | t |  ƒ } t t |  ƒ d t | t d |  ƒ d | ƒ } t | d t ƒ} t | ƒ t | ƒ k s  t	 ‚ t
 | | ƒ d s¹ t	 ‚ d  S(   Ns   t,yi   gfffff†I@g¼XvH”?t   rationali    (   R!   R:   R   R	   R   RA   R   Rž   R…   RC   R(   (   R?   RE   Rp   Ro   t
   dsolve_sol(    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_issue_10379þ  s    +3c          C   sò   t  d ƒ }  t t |  ƒ j |  ƒ j |  ƒ |  d d |  d d ƒ } t t |  ƒ t t |  |  d d d |  d d d |  d d d |  d d ƒ } t | t |  ƒ ƒ | k sÁ t ‚ t | | d	 d d
 t	 ƒt
 d f k sî t ‚ d  S(   NRD   i   i   i   i   i   i   i   R›   Rš   i    (   R   R	   R;   R   RA   RB   R   RC   R(   Rž   R@   (   RD   Rp   Ro   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_issue_10867  s
    ;Y!c          C   sY  t  t t ƒ ƒ t t t t ƒ ƒ t t ƒ d t t ƒ j t ƒ }  t |  t t ƒ d t d d ƒ} t |  t t ƒ d t d d ƒ} | j t t	 t
 t d t t t ƒ t
 t t ƒ t ƒ t ƒ t
 t  t ƒ t ƒ t t t ƒ ƒ t ƒ ƒ sû t ‚ | j ƒ  | k st ‚ t |  | d d d t ƒs4t ‚ t |  | d d d t ƒsUt ‚ d  S(	   Ni   R   R¡   R¤   R£   R›   i   Rš   (   R   R:   RD   R   R   R   Rž   R—   R	   R   R   Rr   RA   RC   Rz   R(   (   Rp   t   sol_1t   sol_0(    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_issue_11290  s    G!!24!c          C   sÞ  t  t ƒ j t ƒ t t  t ƒ }  t t  t ƒ t t t t ƒ ƒ } t |  t  t ƒ ƒ | k sg t ‚ t	 |  | d d d t
 ƒt d f k s” t ‚ t  t ƒ j t ƒ t t t ƒ j t ƒ }  t t  t ƒ t t t t ƒ ƒ } t |  t  t ƒ ƒ | k st ‚ t	 |  | t  t ƒ d d d t
 ƒt d f k s:t ‚ t  t ƒ j t ƒ d t d t d }  t t  t ƒ t d t t t d ƒ } t |  t  t ƒ ƒ | k s­t ‚ t	 |  | d d d t
 ƒt d f k sÚt ‚ d  S(   NR›   i   Rš   i    i   i   (   R:   RD   R   RA   R	   RB   R   R   RC   R(   Rž   R@   R;   (   Rp   Ro   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_issue_4838  s    ##!-,#!6))!c          C   sæ   t  t t ƒ t t ƒ d t t ƒ t t ƒ }  t t t ƒ t t d t d t ƒ d t d t ƒ t t t	 t ƒ ƒ d t t	 t ƒ d ƒ d d t	 t ƒ d d t	 d t ƒ ƒ } t
 |  t t ƒ ƒ | k sâ t ‚ d  S(   Ni	   i   i   (   R   R:   RD   R#   R	   RA   R   RB   R   R   R   RC   (   Rp   Ro   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_issue_14395/  s    07Zc          C   s¨  d d l  m }  t d ƒ } t d ƒ } t d ƒ } t d ƒ } t d ƒ \ } } } } }	 }
 t t | |  ƒ |  ƒ | | |  ƒ | | |  ƒ | | |  ƒ |
 | |  ƒ ƒ t t | |  ƒ |  ƒ | | |  ƒ | | |  ƒ | | |  ƒ ƒ t t | |  ƒ |  ƒ | | |	 | |  ƒ ƒ t t | |  ƒ |  ƒ |	 | |  ƒ |
 | |  ƒ ƒ f } t | |  ƒ t | | t | |
 t |
 |  ƒ | | |
 t	 t |  | | ƒ t
 | | | | | |
 | d | | | |	 | |
 |	 |
 t |  | | |	 ƒ |	 | | | | |	 ƒ t | |  ƒ t t | t |
 |  ƒ | | |
 t	 t |  | | ƒ t
 | | | | | |
 | | | d | |	 | |
 t |  | | |	 ƒ |	 | | | | |	 ƒ t | |  ƒ t
 | | |	 |
 t |  | | |	 ƒ |	 ƒ t | |  ƒ t t |
 |  ƒ t
 t |  | | |	 ƒ ƒ g } t | d	 t ƒ| k swt ‚ t | | ƒ t d
 d
 d
 d
 g f k s¤t ‚ d  S(   Niÿÿÿÿ(   R?   t   Z0t   Z1t   Z2t   Z3s   k01 k10 k20 k21 k23 k30i   R   i    (   Rœ  R?   R   R!   R	   R   RA   RB   R   Rƒ   R„   R   Rž   RC   R0   R@   (   R?   Rþ  Rÿ  R   R  t   k01t   k10t   k20t   k21t   k23t   k30Rp   t   sols_eq(    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_sysode_linear_neq_order18  s&    ei*JvIU>Bc    	   	      s  d d l  m ‰  t t t t t ƒ t ƒ d t t t ƒ t d ƒ ƒ }  t t t ƒ t t d t ƒ t	 t t d t ƒ t ƒ t d t ƒ t	 t t d t ƒ t ƒ ƒ } t
 |  | d d d t ƒt d f k sà t ‚ | t |  t t ƒ d d ƒk st ‚ | t |  t t ƒ ƒ k s(t ‚ ‡  f d	 †  } t } | | t t t ƒ t t ƒ | t t ƒ t ƒ ƒ d  k s~t ‚ | | t t t ƒ t t ƒ | t t ƒ t ƒ ƒ d  k s¿t ‚ | t t ƒ | t t ƒ t ƒ | t t ƒ t d ƒ ƒ d  k st ‚ | | t t t ƒ t d ƒ | t t t t ƒ t d
 ƒ ƒ d  k sRt ‚ | | t t ƒ t d ƒ | t t ƒ t d
 ƒ | t t ƒ t d ƒ ƒ d  k s¨t ‚ | | t t ƒ t d ƒ | t t ƒ t d
 ƒ ƒ t d d ƒ k sñt ‚ t t ƒ t t t t ƒ t d f ƒ t t t ƒ t ƒ t }  t t t ƒ t t t	 t ƒ t t ƒ t t ƒ ƒ } t
 |  | d d d t ƒt d f k s–t ‚ | t |  t t ƒ ƒ k s·t ‚ | t |  t t ƒ d d ƒk sÞt ‚ t t d ƒ t t ƒ j t t t ƒ t t ƒ j t ƒ d ƒ }  t t t ƒ t t t d t d
 ƒ d t d ƒ t t d t d
 ƒ d t d ƒ ƒ } t
 |  | d d d t ƒt d f k s©t ‚ | t |  t t ƒ ƒ k sÊt ‚ | t |  t t ƒ d d ƒk sñt ‚ t t ƒ j t d ƒ d t t ƒ j t ƒ }  t t t ƒ t t t d t ƒ ƒ } t | ƒ } t
 |  | d d d t ƒt d f k s€t ‚ t |  t t ƒ ƒ | | f k s§t ‚ t |  t t ƒ d d ƒ| | f k sÔt ‚ t t ƒ j t d
 ƒ t t ƒ j t d ƒ d t t ƒ j t ƒ }  t t t ƒ t t t d t ƒ t t d t ƒ ƒ } t | ƒ } t
 |  | d d d t ƒt d f k s‹t ‚ t |  t t ƒ ƒ | | f k s²t ‚ t |  t t ƒ d d ƒ| | f k sßt ‚ t t ƒ j t d ƒ t t ƒ j t d
 ƒ d t t ƒ j t d ƒ d t t ƒ j t ƒ }  t t t ƒ t t t t ƒ t t d t ƒ t t d t ƒ ƒ } t | ƒ } t
 |  | d d d t ƒt d f k s¾t ‚ t |  t t ƒ ƒ | | f k såt ‚ t |  t t ƒ d d ƒ| | f k st ‚ t t ƒ j t d ƒ d
 t t ƒ j t d
 ƒ }  t t t ƒ t t t t t d t t d t ƒ ƒ } t | ƒ } t
 |  | d d d t ƒt d f k s¸t ‚ t |  t t ƒ ƒ | | f k sßt ‚ t |  t t ƒ d d ƒ| | f k s	t ‚ t t ƒ j t d ƒ d t t ƒ j t d ƒ }  t t t ƒ t t t t t t t d ƒ ƒ t t t t d ƒ ƒ ƒ } t | ƒ } t
 |  | d d d t ƒt d f k sÅ	t ‚ t |  t t ƒ ƒ | | f k sì	t ‚ t |  t t ƒ d d ƒ| | f k s
t ‚ t t ƒ j t d ƒ d t t ƒ j t d ƒ }  t t t ƒ t t t d t ƒ t t d t ƒ t t ƒ } t | ƒ } t
 |  | d d d t ƒt d f k sÅ
t ‚ t |  t t ƒ ƒ | | f k sì
t ‚ t |  t t ƒ d d ƒ| | f k st ‚ t t ƒ j t d ƒ d t t ƒ j t d
 ƒ t t ƒ j t ƒ }  t t t ƒ t t t t t t ƒ t t t t t ƒ ƒ } t t t ƒ t t t t t ƒ t t ƒ t t t t ƒ t t ƒ t t t ƒ t t t ƒ ƒ } t | ƒ } t | ƒ } t
 |  | d d d t ƒt d f k sNt ‚ t
 |  | d d d t ƒt d f k s{t ‚ t |  t t ƒ ƒ | | f k s¢t ‚ t |  t t ƒ d d ƒ| | f k sÏt ‚ t t ƒ j t d ƒ t t ƒ j t ƒ d
 }  t t t ƒ t t d ƒ t t t t d t t ƒ ƒ t t t ƒ t t d ƒ t t t t d t t ƒ ƒ g } t | ƒ } t
 |  | d d d t ƒt d f t d f g k s½t ‚ t |  t t ƒ ƒ | | f k sät ‚ t |  t t ƒ d d ƒ| | f k st ‚ d  S(   Niÿÿÿÿ(   t   _nth_order_reducible_matchi   R›   Rš   i    R¡   t   nth_order_reduciblec            s   ˆ  |  t  t ƒ ƒ S(   N(   R:   RD   (   Rp   (   R
  (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   ]  Rc   i   i   RJ   iþÿÿÿi   iýÿÿÿi   i   (   R¹  R
  R	   RD   R   R:   RA   R   RB   R   R(   Rž   R@   RC   R   RE   R*  Rr   RÎ   R   R$   R   R   R   Rƒ   R   R+   R„   R>  R   (	   RŸ   Ro   RÜ  t   DR  RN   RP   RU  RV  (    (   R
  s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_nth_order_reducibleS  sœ    9^-'!AAGLVIA7-!'A]-!'/'-'-E9-'-EG-'-2;-'-2N-'-2A-'-EAj--'-/:@9'c          C   sœ  t  t t t ƒ t ƒ t t t ƒ t ƒ ƒ }  t  t t ƒ t t t ƒ ƒ } t |  | d d d t ƒd sq t ‚ | t	 |  t t ƒ d d ƒk s˜ t ‚ | t	 |  t t ƒ ƒ k s¹ t ‚ t
 t t ƒ ƒ t t
 t t ƒ ƒ t }  t  t t ƒ t t d d ƒ t  t t ƒ t t d d ƒ g } t |  | d d d t ƒd sJt ‚ | t	 |  t t ƒ d d ƒk sqt ‚ | t	 |  t t ƒ ƒ k s’t ‚ d t t t ƒ ƒ t t ƒ j
 t ƒ }  t  t t ƒ t ƒ } t |  | d d d t ƒd sõt ‚ | t	 |  t t ƒ d d ƒk st ‚ | t	 |  t t ƒ ƒ k s=t ‚ t d ƒ \ } } } } t d	 ƒ } t  | | | ƒ j
 | ƒ t d
 d ƒ | | d | | ƒ j
 | ƒ | | ƒ j
 | | ƒ ƒ }  t  | | ƒ t ƒ t  | | ƒ t t | | | d d
 | | d ƒ g } t |  | d d d d t ƒd s9t ‚ t |  | d d d d t ƒd sbt ‚ t | ƒ t t	 |  | | ƒ d d ƒƒ k s•t ‚ t | ƒ t t	 |  | | ƒ ƒ ƒ k sÂt ‚ t t ƒ t t ƒ j
 t ƒ t t ƒ j
 t t ƒ }  t  t t ƒ t t t ƒ } t |  | d d d t ƒd s9t ‚ | t	 |  t t ƒ d d ƒk s`t ‚ | t	 |  t t ƒ ƒ k st ‚ t t ƒ t t ƒ j
 t ƒ t t ƒ j
 t t ƒ t t ƒ d }  t  t t ƒ t t t ƒ } t |  | d d d t ƒd st ‚ | t	 |  t t ƒ d d ƒk s-t ‚ | t	 |  t t ƒ ƒ k sNt ‚ t t ƒ t t ƒ j
 t ƒ t t ƒ j
 t t ƒ t t ƒ d t t ƒ j
 t ƒ t }  t  t t ƒ t t d d ƒ t  t t ƒ t t t ƒ g } t |  | d d d d t ƒd st ‚ t |  | d d d d t ƒd s8t ‚ t | ƒ t t	 |  t t ƒ d d ƒƒ k skt ‚ t | ƒ t t	 |  t t ƒ ƒ ƒ k s˜t ‚ d  S(   NR›   i   Rš   i    R¡   R¾   i   s   M m r tt   phii   (   R	   R   R:   RD   R;   RA   R(   Rž   RC   R   R   R   R!   R   R   RB   R   (   RŸ   Ro   t   MRI   Rn   R?   R  t   solns(    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_nth_algebraic²  sP    -%'!*B%'!)%'!GN))3-5%'!C%'!Z>))3c          C   s¯   t  t ƒ j t ƒ t }  t t  t ƒ t t t ƒ } t |  | d d d t ƒt d f k sc t	 ‚ t
 |  t  t ƒ d d ƒ| k sŠ t	 ‚ t
 |  t  t ƒ ƒ | k s« t	 ‚ d  S(   NR›   i   Rš   i    R¡   R¾   (   R:   RD   R   RA   R	   RB   R(   Rž   R@   RC   R   (   RŸ   Ro   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_nth_algebraic_issue15999ã  s
    -'c       	   C   s°  t  t ƒ t  t ƒ j t ƒ }  t t  t ƒ t ƒ } t |  | d d d t ƒd sY t ‚ | t |  t  t ƒ d d ƒk s€ t ‚ | t |  t  t ƒ ƒ k s¡ t ‚ t t  t ƒ ƒ t t t  t ƒ ƒ t }  t t  t ƒ t t d d ƒ t t  t ƒ t t d d ƒ g } t	 d „  t |  | d d d t ƒDƒ ƒ s>t ‚ t
 | ƒ t
 t |  t  t ƒ d d ƒƒ k sqt ‚ t
 | ƒ t
 t |  t  t ƒ ƒ ƒ k sžt ‚ d	 d
 l m } t  t ƒ t  t ƒ t  t ƒ j t ƒ }  t t  t ƒ d ƒ t t  t ƒ t t ƒ g } | |  | d t ƒ } t	 d „  t |  | d d d t ƒDƒ ƒ sKt ‚ t
 | ƒ t
 | ƒ k sit ‚ t t  t ƒ t t ƒ ƒ t t  t ƒ t t t t ƒ ƒ g } | |  | d t ƒ } | t t  t ƒ t t t t ƒ ƒ g k sît ‚ t t ƒ t t t  t ƒ t d f ƒ t t  t ƒ t ƒ t }  t t  t ƒ t t t t ƒ t t ƒ t t ƒ ƒ } t |  | d d d t ƒd s‹t ‚ | t |  t  t ƒ ƒ k s¬t ‚ d  S(   NR›   i   Rš   i    R¡   R¾   i   c         s   s   |  ] } | d  Vq d S(   i    N(    (   Rv   R»   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pys	   <genexpr>ö  s    iÿÿÿÿ(   t)   _nth_algebraic_remove_redundant_solutionsc         s   s   |  ] } | d  Vq d S(   i    N(    (   Rv   R»   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pys	   <genexpr>  s    (   R:   RD   R   R	   RA   R(   Rž   RC   R   R{   R   R¹  R  R   RB   R   R   R$   (   RŸ   t   solnRo   R  R  t   solns_final(    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt&   test_nth_algebraic_redundant_solutionsë  s2    %'!*B13-)1&2A7%c       	   C   s¹   t  t ƒ t  t ƒ t  t ƒ j t ƒ }  t t  t ƒ d ƒ t t  t ƒ t t ƒ g } t d „  t |  | d d d t ƒDƒ ƒ sˆ t ‚ t	 | ƒ t	 t
 |  t  t ƒ ƒ ƒ k sµ t ‚ d  S(   Ni    c         s   s   |  ] } | d  Vq d S(   i    N(    (   Rv   R»   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pys	   <genexpr>  s    R›   i   Rš   (   R:   RD   R   R	   RA   R{   R(   Rž   RC   R   R   (   RŸ   R  (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt!   test_nth_algebraic_find_multiple1  s
    )1c          C   s¢   t  t t t ƒ t t t ƒ }  t t t ƒ t t t t t d t ƒ } t |  | d d d t ƒd sq t	 ‚ | t
 |  t t ƒ d t d d ƒk sž t	 ‚ d  S(	   Ni   R›   i   Rš   i    RÍ   R¡   R¾   (   R   RD   R:   R	   RA   RB   Rƒ   R(   Rž   RC   R   (   RŸ   Ro   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_nth_algebraic_noprep1!  s    -%c          C   sÃ   t  t t t ƒ t t t ƒ }  t t t ƒ t t t t t d t ƒ } t |  | d d d t ƒd sq t	 ‚ | t
 |  t t ƒ d t d d ƒk sž t	 ‚ | t
 |  t t ƒ ƒ k s¿ t	 ‚ d  S(	   Ni   R›   i   Rš   i    RÍ   R¡   R¾   (   R   RD   R:   R	   RA   RB   Rƒ   R(   Rž   RC   R   R@   (   RŸ   Ro   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_nth_algebraic_prep1(  s
    -%-c          C   sÂ   t  t t t t t ƒ t ƒ t ƒ t t t ƒ ƒ }  t  t t ƒ t t t t ƒ t t ƒ t t ƒ ƒ } t	 |  | d d d t
 ƒd s‘ t ‚ | t |  t t ƒ d t
 d d ƒk s¾ t ‚ d  S(   NR›   i   Rš   i    RÍ   R¡   R¾   (   R	   R   RD   R:   R   RA   RB   R   R$   R(   Rž   RC   R   (   RŸ   Ro   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_nth_algebraic_noprep22  s    57%c          C   sã   t  t t t t t ƒ t ƒ t ƒ t t t ƒ ƒ }  t  t t ƒ t t t t ƒ t t ƒ t t ƒ ƒ } t	 |  | d d d t
 ƒd s‘ t ‚ | t |  t t ƒ d t d d ƒk s¾ t ‚ | t |  t t ƒ ƒ k sß t ‚ d  S(   NR›   i   Rš   i    RÍ   R¡   R¾   (   R	   R   RD   R:   R   RA   RB   R   R$   R(   Rž   RC   R   R@   (   RŸ   Ro   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_nth_algebraic_prep29  s
    57%-c       	   C   s¾   t  t ƒ d t  t ƒ t  t ƒ j t ƒ }  t t  t ƒ d ƒ t t  t ƒ t t t ƒ ƒ g } t d „  t |  | d d d t ƒDƒ ƒ s“ t	 ‚ t
 | ƒ t |  t  t ƒ ƒ k sº t	 ‚ d  S(   Ni   i    c         s   s   |  ] } | d  Vq d S(   i    N(    (   Rv   R»   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pys	   <genexpr>I  s    R›   i   Rš   (   R:   RD   R   R	   RA   R   R{   R(   Rž   RC   R   R   (   RŸ   R  (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt!   test_nth_algebraic_find_multiple2D  s
    -#1c          C   s»   t  t t t ƒ t t t ƒ t  t t ƒ t t t ƒ }  t t t ƒ t t d d t t t t d t ƒ } t |  | d d d t ƒd s– t	 ‚ | t
 |  t t ƒ ƒ k s· t	 ‚ d  S(   Ni   i   R›   Rš   i    (   R   RD   R:   R	   RA   RB   Rƒ   R(   Rž   RC   R   (   RŸ   R  (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_factoring_odeN  s    89%c          C   s  t  t d t t t ƒ t t ƒ t t t ƒ t ƒ }  t t t d t ƒ t t d t ƒ t t  t t d t ƒ t t ƒ } t |  | ƒ t d f k s© t	 ‚ t  t t t t
 ƒ } t t
 t t ƒ t ƒ t t ƒ j t d ƒ }  t |  | t t ƒ ƒ t d f k st	 ‚ d  S(   Ni   i    (   RA   RD   R:   R   RB   R   R   R(   R@   RC   RE   R   (   Rp   Ro   (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_issue_15913V  s    :N!/c           C   s$   t  t d „  ƒ t  t d „  ƒ d  S(   Nc           S   sL   t  t t ƒ j t ƒ t t ƒ j t ƒ g t t ƒ t t ƒ t t ƒ g ƒ S(   N(   R   R:   RD   R   R;   R<   (    (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   `  Rc   c           S   s:   t  t t ƒ j t ƒ t t ƒ j t ƒ g t t ƒ g ƒ S(   N(   R   R:   RD   R   R;   (    (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyRb   a  Rc   (   R6   R   (    (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   test_issue_16146_  s    N(Ä   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%   R&   R¹  R'   R(   R)   R*   R+   R,   R-   R.   R/   R0   R1   R2   t   sympy.solvers.deutilsR3   t   sympy.utilities.pytestR4   R5   R6   R7   R8   R‰   RA   RB   Rƒ   R„   R>  Ru  Rv  Rw  Rx  Ry  R@   Rr   RD   RE   RF   R:   R;   R<   R`   Re   Rf   Rh   Ri   Rj   Rk   Rq   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/  R1  R2  R3  R7  R9  R<  Rs  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à  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  (    (    (    s;   lib/python2.7/site-packages/sympy/solvers/tests/test_ode.pyt   <module>   sü   ôX(-	;									!›	.		=	-G	b	b	Ž	T		5										!-							º	5	!
	oŸ	E	.	
		
				?	/	.		"								'			
	
			
	'		%													_	1		,
	
	
		