Ë
    7^(hk– ã                   ó*  — d dl mZ d dlmZ d dlmZ d dlmZmZm	Z	m
Z
 d dlmZ d dlmZ d dlmZ d dlmZmZ d d	lmZ d d
lmZ d dlmZ d dlmZ d dlmZ d dlmZ d dl m!Z! d dl"m#Z# d dl$m%Z% d dl&m'Z'm(Z(m)Z) d dlm*Z*m+Z+ d dl,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z< d dl=m>Z>  ed«      \  Z?Z@ZAZBZCZDZEZFZGZHZIZJZK ed«      \  ZLZMZNZOZPZQZRZSZTZUZVZWZXZYZZZ[ e-deCdz  deIz  eJz  eCz  z   eJdz  z   eC«      Z\ e-eGdeC«      Z] e-eNeFz  eCz
  eNeCz  eFz   eC«      Z^d„ Z_d„ Z`d„ Zad„ Zbd„ Zcd„ Zdd „ Zed!„ Zfd"„ Zgd#„ Zhd$„ Zid%„ Zjd&„ Zkd'„ Zld(„ Zmd)„ Znd*„ Zod+„ Zpd,„ Zqd-„ Zrd.„ Zsd/„ Ztd0„ Zud1„ Zvd2„ Zwd3„ Zxd4„ Zyd5„ Zzd6„ Z{d7„ Z|d8„ Z}d9„ Z~d:„ Zd;„ Z€d<„ Z�d=„ Z‚d>„ Zƒd?„ Z„d@„ Z…dA„ Z†dB„ Z‡yC)Dé    )ÚAdd)ÚFunction)ÚMul)ÚIÚpiÚRationalÚoo)ÚPow)ÚS)Úsymbols)ÚexpÚlog)Ú	Heaviside)Úsqrt)Úatan)Úeye)ÚSISOLinearTimeInvariant)Úfactor)ÚCRootOf)Úsimplify)ÚTuple)ÚImmutableMatrixÚMatrixÚ
ShapeError)ÚsinÚcos)ÚTransferFunctionÚPIDControllerÚSeriesÚParallelÚFeedbackÚTransferFunctionMatrixÚ
MIMOSeriesÚMIMOParallelÚMIMOFeedbackÚ
StateSpaceÚgbtÚbilinearÚforward_diffÚbackward_diffÚphase_marginÚgain_margin)Úraisesz.a, x, b, c, s, g, d, p, k,    tau, zeta, wn, Tza0:4,    b0:4, c0:4, d0:4é   é   c                  óz  — t        t        dz   t        dz  t        z   dz   t        «      } | j                  t        dz   k(  sJ ‚| j                  t        dz  t        z   dz   k(  sJ ‚| j                  t        dz   t        dz  t        z   dz   t        fk(  sJ ‚t        t        dz   t        dz
  t        «      }|j                  t        dz   k(  sJ ‚|j                  t        dz
  k(  sJ ‚|j                  t        dz   t        dz
  t        fk(  sJ ‚t        t
        dz   t
        dz  dz
  t
        «      }|j                  t
        dz   k(  sJ ‚|j                  t
        dz  dz
  k(  sJ ‚|j                  t
        dz   t
        dz  dz
  t
        fk(  sJ ‚t        t
        dz  dt
        dz  z  z   dz   t
        dz  dt
        z  z   dz   t
        «      }|j                  t
        dz  dt
        dz  z  z   dz   t
        dz  dt
        z  z   dz   t
        fk(  sJ ‚t        t        dz   t        dz
  z  t        dz
  t        dz   z  t        «      }|j                  t        dz
  t        dz   z  k(  sJ ‚|j                  t        dz   t        dz
  z  t        dz
  t        dz   z  t        fk(  sJ ‚t        t
        dz   t
        dz   t
        «      }|j                  t
        dz   t
        dz   t
        fk(  sJ ‚t        t        dz
  dt
        z
  t        «      }|j                  t        dz
  dt
        z
  t        fk(  sJ ‚t        t        dz
  t        dz
  t        «      }|j                  t        dz
  t        dz
  t        fk(  sJ ‚t        ddt        «      }|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  ddt        fk(  sJ ‚t        ddt        «      }	|	j                  dk(  sJ ‚|	j                  dk(  sJ ‚|	j                  ddt        fk(  sJ ‚t        dt        dz  z  dt
        z  z   dt        z  z   d	t
        dz  z  d
t        z  z   t        «      }
t        dt        dz  z  dt
        z  z   dt        z  z   d	t
        dz  z  d
t        z  z   t
        «      }|
|k(  rJ ‚t        t        t        z  t        t        dz  z  z   t        t        dz  z  z   t        t
        z  t        t        z  z
  t        «      }t        t        t        z  t        t        dz  z  z   t        t        dz  z  z   t        t
        z  t        t        z  z
  t        «      }||k(  sJ ‚|  |cxk(  r
|    k(  sJ ‚ J ‚t        t        t        dz  z  t        t        dz  z  z   t        t        z  z   t        z   t        t
        z  t        t
        dz  z  z   t        t        z  z   t        «      }|j                  t        t        dz  z  t        t        dz  z  z   t        z   t        t        z  z   t        t
        z  t        t
        dz  z  z   t        t        z  z   t        fk(  sJ ‚t        t
        dz  t        z   t        t        dz  z  t        t        z  z   t        z   t
        «      }t        t
        dz  t        z   t        t        dz  z  t        t        z  z   t        z   t
        «      }|j                  t        t
        dz  z   t        t        t        z  z   t        t        dz  z  z   t
        fk(  sJ ‚||k(  sJ ‚t        t        t        z  t        z   t        t        dz  z  t        t        z  z   t        z   t        «      }|j                  t        t        t        z  z   k(  sJ ‚|j                  t        t        t        z  z   t        t        dz  z  z   k(  sJ ‚|j                  t        t        t        z  z   t        t        t        z  z   t        t        dz  z  z   t        fk(  sJ ‚t        dt
        dz  t
        z
  dz   t
        «      }|j                  dt
        dz  t
        z
  dz   t
        fk(  sJ ‚t        ddt        «      }|j                  ddt        fk(  sJ ‚t        t        t        dz  z  t        t        dz  z  z   t        z
  t        t
        dz  z  t        «      }|j                  t        t        dz  z  t        z
  t        t        dz  z  z   t        t
        dz  z  t        fk(  sJ ‚t        t        dz  t
        dz  z  t        t        dz  z  z   t        t        z  t
        z
  t
        «      }|j                  t        t        dz  z  t        dz  t
        dz  z  z   t        t        z  t
        z
  t
        fk(  sJ ‚t!        d«      \  }}}}t        ||t        z  z   |t        z  z   t        dz  d|z  t        z  z   |dz  z   t        «      }|j                  |t        z  |t        z  z   |z   k(  sJ ‚|j                  |t        z  |t        z  z   |z   |dz  d|z  t        z  z   t        dz  z   t        fk(  sJ ‚t#        t$        d„ «       t#        t$        d„ «       t#        t$        d„ «       t#        t&        d„ «       t#        t&        d„ «       t#        t&        d„ «       t#        t&        d„ «       y )Nr.   r/   é   é   é   é	   é   ç      à?é   é   r   g333333ã?gffffff!Àg      Ð?gš™™™™™é¿zomega_o, k_p, k_o, k_ic                  ó$   — t        ddt        «      S )Nr1   r   ©r   Ús© ó    úb/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/sympy/physics/control/tests/test_lti.pyú<lambda>z4test_TransferFunction_construction.<locals>.<lambda>x   ó   € Ô/°°1´aÓ8€ r=   c                  ó,   — t        t        dt        «      S ©Nr   r:   r<   r=   r>   r?   z4test_TransferFunction_construction.<locals>.<lambda>y   s   € Ô/´°1´aÓ8€ r=   c                  ó$   — t        ddt        «      S rB   r:   r<   r=   r>   r?   z4test_TransferFunction_construction.<locals>.<lambda>z   r@   r=   c                  óB   — t        t        g d¢«      t        t        «      S ©N©r.   r/   r3   )r   r   r;   r<   r=   r>   r?   z4test_TransferFunction_construction.<locals>.<lambda>|   s   € Ô.¬v²iÓ/@Ä!ÄQÓG€ r=   c                  óR   — t        t        dz  dt        z  z   dz
  t        dz   d«      S )Nr/   r.   r3   r:   r<   r=   r>   r?   z4test_TransferFunction_construction.<locals>.<lambda>~   s$   € Ô.¬q°!©t°a¼±c©z¸A©~¼qÀ1¹uÀaÓH€ r=   c                  ó8   — t        t        dz   dt        z
  d«      S )Nr.   r2   r1   )r   Úpr<   r=   r>   r?   z4test_TransferFunction_construction.<locals>.<lambda>   s   € Ô.¬q°1©u°a¼!±e¸QÓ?€ r=   c                  ó   — t        ddd«      S )Nr3   r1   r7   )r   r<   r=   r>   r?   z4test_TransferFunction_construction.<locals>.<lambda>€   s   € Ô.¨q°!°QÓ7€ r=   )r   r;   ÚnumÚdenÚargsrI   Úa0Úa1Úa2Úb0Úb1ÚaÚbÚgÚdÚb2r   r-   Ú
ValueErrorÚ	TypeError)ÚtfÚtf1Útf2Útf3Útf4Útf4_Útf5Útf5_Útf6Útf6_Útf7Útf8Útf7_Útf8_Útf9Útf10Útf10_Útf11Útf12Útf13Útf14Útf15Úomega_oÚk_pÚk_oÚk_iÚtf18s                              r>   Ú"test_TransferFunction_constructionru   "   s�  € Ü	œ!˜a™%¤ A¡¬¡¨A¡¬qÓ	1€BØ�6‰6”a˜!‘eÒÐÐØ�6‰6”a˜‘dœQ‘h ‘lÒ#Ð#Ð#Ø�7‰7”q˜1‘uœa ™d¤Q™h¨™l¬AÐ.Ò.Ð.Ð.ä
œ1˜q™5¤! a¡%¬Ó
+€CØ�7‰7”q˜1‘uÒÐÐØ�7‰7”q˜1‘uÒÐÐØ�8‰8œ˜A™œq 1™u¤aÐ(Ò(Ð(Ð(ô œ1˜q™5¤! Q¡$¨¡(¬AÓ
.€CØ�7‰7”q˜1‘uÒÐÐØ�7‰7”q˜!‘t˜a‘xÒ Ð Ð Ø�8‰8œ˜A™œq !™t a™x¬Ð+Ò+Ð+Ð+ä
œ1˜a™4 !¤A q¡D¡&™=¨1Ñ,¬a°©d°Q´q±S©j¸1©n¼aÓ
@€CØ�8‰8œ˜1™˜q¤ A¡™v™¨Ñ)¬1¨a©4°!´A±#©:¸©>¼1Ð=Ò=Ð=Ð=ô œA ™E¤A¨¡E™?¬Q°©U´Q¸±U©O¼QÓ
?€CØ�7‰7”q˜1‘uœq 1™u‘oÒ%Ð%Ð%Ø�8‰8œ˜Q™¤ Q¡™¬!¨a©%´!°a±%©¼!Ð<Ò<Ð<Ð<äœA ™E¤1 q¡5¬!Ó,€DØ�9‰9œ˜Q™¤ A¡¤qÐ)Ò)Ð)Ð)ä
œ1˜q™5 !¤a¡%¬Ó
+€CØ�8‰8œ˜A™˜q¤1™u¤aÐ(Ò(Ð(Ð(äœA ™E¤1 q¡5¬!Ó,€DØ�9‰9œ˜Q™¤ A¡¤qÐ)Ò)Ð)Ð)ä
˜1˜a¤Ó
#€CØ�7‰7�aŠ<Ðˆ<Ø�7‰7�aŠ<Ðˆ<Ø�8‰8˜˜1œa�yÒ Ð Ð ä˜C ¤AÓ&€DØ�8‰8�sŠ?Ðˆ?Ø�8‰8�qŠ=Ðˆ=Ø�9‰9Ð*¨A¬qÐ1Ò1Ð1Ð1ä
˜1œQ ™T™6 A¤a¡C™<¨!¬A©#Ñ-¨q´°A±©v¸¼!¹©|¼QÓ
?€CÜ
˜1œQ ™T™6 A¤a¡C™<¨!¬A©#Ñ-¨q´°A±©v¸¼!¹©|¼QÓ
?€CØ�cŠzÐˆ>äœBœq™D¤2¤a¨¡d¡7™N¬R´°1±©WÑ4´b¼±d¼RÄ¹T±kÄ1ÓE€DÜœBœq™D¤2¤a¨¡d¡7™N¬R´°1±©WÑ4´b¼±d¼RÄ¹T±kÄ1ÓE€DØ�4Š<Ðˆ<ØˆUˆ8�tÔ- d U 8 ˜~Ò-Ð-Ñ-Ð-Ð-ä
œ1œQ ™T™6¤A¤a¨¡d¡F™?¬Q¬q©SÑ0´1Ñ4´a¼±c¼A¼aÀ¹d¹F±lÄQÄqÁSÑ6HÌ!Ó
L€CØ�8‰8œœ!˜Q™$™¤¤1 a¡4¡™¬!Ñ+¬a´©cÑ1´1´Q±3¼¼1¸a¹4¹±<Ä!ÄAÁ#Ñ3EÄqÐIÒIÐIÐIäœA˜q™D¤1™H¤a¬¨1©¡f¬q´©s¡l´QÑ&6¼Ó:€DÜœQ ™T¤A™X¤q¬¨A©¡v´´!±¡|´aÑ'7¼Ó;€EØ�9‰9œœQ ™T™¤1¤q¬¡s¡7¬Q¬q°!©t©VÑ#3´QÐ7Ò7Ð7Ð7Ø�DŠ=Ðˆ=äœBœq™D¤2™I¤r¬!¨Q©$¡w´´A±¡~¼Ñ':¼AÓ>€DØ�8‰8œœR¤™T™	Ò"Ð"Ð"Ø�8‰8œœR¤™T™	¤B¤q¨!¡t¡GÑ+Ò,Ð,Ð,Ø�9‰9œœb¤™d™¤B¬¬A©¡I´´1°a±4±Ñ$7¼Ð;Ò;Ð;Ð;ô ˜Aœq !™t¤a™x¨!™|¬QÓ/€DØ�9‰9˜œA˜q™D¤1™H q™L¬!Ð,Ò,Ð,Ð,ä˜A˜q¤!Ó$€DØ�9‰9˜˜Aœq˜	Ò!Ð!Ð!ô œBœq #™v™I¬¬1¨c©6©	Ñ1´BÑ6¼¼1¸t¹9¹ÄaÓH€DØ�9‰9œœA˜s™F™¤R™¬"¬Q°©V©)Ñ3´R¼¸D¹	±\Ä1ÐEÒEÐEÐEäœB ™E¤! c¡(™N¬R´°D±	©\Ñ9¼2¼a¹4Ä!¹8ÄQÓG€DØ�9‰9œœA ™I™¬¨A©¬a°©g©Ñ5´r¼!±t¼a±xÄÐCÒCÐCÐCä$Ð%=Ó>Ñ€GˆS�#�sÜ˜S 3¤q¡5™[¨3¬q©5Ñ0´1°a±4¸!¸G¹)ÄA¹+Ñ3EÈÐQRÉ
Ñ3RÔTUÓV€DØ�8‰8�sœ1‘u˜s¤1™u‘} sÑ*Ò*Ð*Ð*Ø�9‰9˜œQ™ ¤Q¡™¨Ñ,¨g°q©j¸1¸W¹9ÄQ¹;Ñ.FÌÈAÉÑ.MÌqÐQÒQÐQÐQô Œ:Ñ8Ô9Ü
Œ:Ñ8Ô9Ü
Œ:Ñ8Ô9ä
Œ9ÑGÔHä
Œ9ÑHÔIÜ
Œ9Ñ?Ô@Ü
Œ9Ñ7Õ8r=   c                  óàC  ‡?‡@‡A‡B‡C‡D‡E‡F— t        dt        t        dd¬«      d¬«      } t        dz  Š@t        t        dz  z  dt        z  z   t        dz   dz  z  ŠAd	ŠBddt        z  z   ddt        z  z   z  d
dt        z  z   ddt        dz  z  z   z  z  }d
t        dz  z  dt        dz  z  z   dz   t        dz   t        d
z   z  z  }t	        t        dz   t        dz  dz   t        «      }t        t         t        z  «      }||j                  «       z  }t	        j                  |t        «      }t	        t        dz   t        dz  dz   t        t        t        z  «      z  t        «      }t        ddt        z  t        dz  dz   z  d¬«      }t	        j                  | «      t	        dt        t        «      k(  sJ ‚t        t        ˆ@fd„«       t        t        ˆAfd„«       t	        j                  ‰At        «      t	        t        t        dz  z  dt        z  z   t        dz   dz  t        «      k(  sJ ‚t	        j                  ‰At        «      t	        t        t        dz  z  dt        z  z   t        dz   dz  t        «      k(  sJ ‚t        t        ˆBfd„«       t	        j                  ‰Bt        «      t	        d	dt        «      k(  sJ ‚t	        j                  |t        «      t	        ddt        z  z   ddt        z  z   z  d
dt        z  z   ddt        dz  z  z   z  t        «      k(  sJ ‚t	        j                  |t        «      t	        d
t        dz  z  dt        dz  z  z   dz   t        dz   t        d
z   z  t        «      k(  sJ ‚||k(  sJ ‚t	        j                  |t        «      t	        dt        dz  z  dt        z  z   dz   t        dz  dz   t        «      k(  sJ ‚t	        j                  ddgg d¢t        «      }	t        dz  dt        z  g}
t        dz  t        dz   dg}t	        j                  |
|t        «      }g d¢ŠCddgŠ?|	t	        t        dz   dt        dz  z  dt        z  z   dz   t        «      k(  sJ ‚|t	        t        dz  t        z  dt        z  z   t        dz  t        dz  z  t        t        dz   z  z   dz   t        «      k(  sJ ‚t        t        ˆ?ˆCfd„«       dg}ddg}d}t	        j                  |||t        «      }	|	t	        dt        z  dz
  t        dz   dt        z  z
  t        dz   dt        z  z   z  t        «      k(  sJ ‚t	        t        dz  t        dz  z   t        z   t        t        dz  z
  t        «      }t	        t        dz  t        dz  z   dz    t        dz
  t        «      }|j!                  «       t!        |«      cxk(  r|k(  sJ ‚ J ‚t	        t        dz   t        dz
  z  t        dz
  t        dz   z  t        «      }	t	        t        dz   t        dz   t        «      }|	j!                  «       t!        |	«      cxk(  r|k(  sJ ‚ J ‚t	        dt        z
  dz  t        dz  dz   dz  t        «      }t	        ddt        «      }t"        t        t        z  z  t$        t        t        z  z  z   t&        t        t        z  z  z   t        t        z  t        t        z  z   z  }t(        t        t        z  z  t*        t        t        z  z  z   t,        t        z  t        z  t        t        z  z   z  }t&        t        t        z  z  t        t        z  z  t&        t        t        z  z  t        t        z  z  z   t$        t        t        z  z  t        t        z  z  z   t$        t        t        z  z  t        t        z  z  z   t"        t        t        z  z  t        t        z  z  z   t"        t        dt        z  z  z  z   }t(        t,        z  t        z  t        z  t        t        z  z  t(        t        t        z  z  t        t        z  z  z   t*        t,        z  t        z  t        t        z  z  t        z  z   t*        t        t        z  z  t        t        z  z  z   }t$        t"        z  t        z  t        t        z  z  t$        t        z  t        z  z   t"        t*        z  t        z  t        z  t        t        z  z  z   t*        t        dz  z  t        z  z   }t	        ||t        «      }t	        t&        t        t        z  z  t(        t        t        z  z  z
  t$        t        z  t*        t        z  t        z  z   t"        t        t        z  z  t        z   z  t        «      }|j/                  «       t	        t        dz  dt        z  z
  dz   t        dz  dt        dz  z  z   dz   t        «      k(  sJ ‚|	j/                  «       t	        t        dz  dt        z  z   dz
  t        dz  dt        z  z   dz
  t        «      k(  sJ ‚|j/                  «       |k(  sJ ‚|j/                  «       t	        ||t        «      k(  sJ ‚|j/                  «       t	        t&        t        t        z  z  t(        t        t        z  z  z
  |t        «      k(  sJ ‚t$        t        z  t&        z   }t,        t        dz  z  t*        t        z  z   t(        z   }t	        ||t        «      }t	        dt        z  dz   dt        dz  z  dt        z  z   dz   t        «      }t	        dt        z  dz   dt        dz  z  dt        z  z   dz   t        «      } |j1                  t&        dt$        dt(        dt*        dt,        di«      | k(  sJ ‚|j1                  t&        dt$        dt(        dt*        dt,        di«      j3                  «       |k(  sJ ‚| j3                  «       |k(  sJ ‚t5        d«      \  }!}"}#}$|!t        z  |$t        dz  z  |#t        dz  z  z   |"z
  }&}%t	        |%|&t        «      }'t	        dt        z  dt        dz  z  dt        dz  z  z   dz
  t        «      }(t	        dt        z  dt        dz  z  dt        dz  z  z   dz
  t        «      })|'j1                  |!d|"d|#d|$di«      |)k(  sJ ‚|'j1                  |!d|"d|#d|$di«      j3                  «       |(k(  sJ ‚|)j3                  «       |(k(  sJ ‚t	        t&        t        dz  z  t$        t        dz  z  z   t(        t        z  z
  t*        z   t$        t        z  t        z   t        «      }*t	        dt        dz  z  dt        dz  z  z   t        z
  dz   t        dt        z  z   t        «      }+t	        dt        dz  z  dt        dz  z  z   t        z
  dz   t        dt        z  z   t        «      },|*j1                  t&        dt$        dt(        dt*        di«      |,k(  sJ ‚|*j1                  t&        dt$        dt(        dt*        di«      j3                  «       |+k(  sJ ‚|,j3                  «       |+k(  sJ ‚t	        t        t$        t        dz  z  z
  t&        t        z  t        z   t        «      }-t	        dt        dz  z  t        z   t        t        z
  t        «      }.t	        dt        dz  z  t        z   t        t        z
  t        «      }/|-j1                  t&        dt$        di«      |/k(  sJ ‚|-j1                  t&        dt$        di«      j3                  «       |.k(  sJ ‚|/j3                  «       |.k(  sJ ‚|	j7                  t8        «      t8        dz  t8        dz  dt8        z  z   dz
  z  dt8        z  t8        dz  dt8        z  z   dz
  z  z   dt8        dz  dt8        z  z   dz
  z  z
  k(  sJ ‚|j7                  dt        z   «      t;        d«      d z  t;        d«      t        z  d z  z   k(  sJ ‚|j7                  t;        d«      dz  «      t&        t        t        z  z  t$        t"        z  t        t;        d«      dz  z  z  t;        d«      t$        z  t        z  dz  z   dt"        z  t*        z  t        t;        d«      dz  z  z  dz  z   t;        d «      t*        z  t        z  d
z  z   z  ddt;        d«      dz  z  z  dt;        d«      dz  z  z  t(        z  d
t$        z  t"        z  t        t;        d«      dz  z  z  d!t$        z  t        z  z   d!t"        z  t*        z  t        t;        d«      dz  z  z  z   d t*        z  t        z  z   z  z
  k(  sJ ‚|j=                  «       dk(  sJ ‚|	j=                  «       t?        dd«      k(  sJ ‚|'j=                  «       dk(  sJ ‚|.j=                  «       dk(  sJ ‚|)j=                  «       dk(  sJ ‚t	        dt        t        «      j=                  «       t@        k(  sJ ‚t	        tB        dz  tD        z
  tD        tB        «      }0t	        tD        tB        dz  tD        z
  tB        «      }1t	        tB        dz  tB        d"z  tB        z   tB        dz  z   tB        «      }2t	        tB        d"z  tB        z   tB        dz  z   tB        dz  tB        «      }3|jG                  «       t        t        t         t         gk(  sJ ‚|jG                  «       g k(  sJ ‚|	jG                  «       d#dgk(  sJ ‚|/jG                  «       t        gk(  sJ ‚|-jG                  «       t&         t        z  gk(  sJ ‚|+jG                  «       d$t        z  gk(  sJ ‚tI        |(jG                  «       «      tI        d%d&d't        z  z
  d&d't        z  z   g«      k(  sJ ‚tI        |jG                  «       «      tI        d(d)t        z  z
  d(d)t        z  z   g«      k(  sJ ‚|1jG                  «       tD        t?        dd«      z  tD        t?        dd«      z   t        tD        t?        dd«      z  z  t         tD        t?        dd«      z  z  gk(  sJ ‚|2jG                  «       tK        tB        d
z  tB        z   dz   d«      dtK        tB        d
z  tB        z   dz   d«      tK        tB        d
z  tB        z   dz   d«      tK        tB        d
z  tB        z   dz   d«      tK        tB        d
z  tB        z   dz   d«      tK        tB        d
z  tB        z   dz   d«      tK        tB        d
z  tB        z   dz   d	«      tK        tB        d
z  tB        z   dz   d«      tK        tB        d
z  tB        z   dz   d«      g
k(  sJ ‚t        tL        d*„ «       t5        d+d,¬-«      \  }4}5t5        d.d,¬/«      }6t	        t        dz  t&        z   t$        t        z  z
  |4t        z  |5z
  t        «      }2t	        t        dz  t&        z   t$        t        z  z
  |4t        z  dz
  t        «      }7t	        t        dz  t&        z   t$        t        z  z
  |4t        z  |6z
  t        «      }8|jO                  «       du sJ ‚|jO                  «       d,u sJ ‚|	jO                  «       du sJ ‚|(jO                  «       du sJ ‚|jO                  «       d,u sJ ‚|7jO                  «       d,u sJ ‚|8jO                  «       d,u sJ ‚|2jO                  «       du sJ ‚|/jO                  «       �J ‚|-jO                  «       �J ‚|jQ                  «       ddgk(  sJ ‚|jQ                  «       g k(  sJ ‚|	jQ                  «       ddgk(  sJ ‚|/jQ                  «       dt?        dd«      z  t         t?        dd«      z  z  dz  dt?        dd«      z   t         t?        dd«      z  z  d0z  tS        d«      dt?        dd«      z  z  t        z  t         t?        dd«      z  z  d0z  z
  dt?        dd«      z   t         t?        dd«      z  z  d0z  tS        d«      dt?        dd«      z  z  t        z  t         t?        dd«      z  z  d0z  z   gk(  sJ ‚|-jQ                  «       t        t$        z  t?        dd«      z  t        t$        z  t?        dd«      z   dz  tS        d«      t        z  t        t$        z  t?        dd«      z  z  dz  z
  t        t$        z  t?        dd«      z   dz  tS        d«      t        z  t        t$        z  t?        dd«      z  z  dz  z   gk(  sJ ‚tI        |+jQ                  «       «      tI        d1d2tS        d3t        dz  z  dz
  «      z  z
  d2tS        d3t        dz  z  dz
  «      z  d1z   g«      k(  sJ ‚|0jQ                  «       tD        t?        dd«      z  tD        t?        dd«      z   dz  tS        d«      t        z  tD        t?        dd«      z  z  dz  z
  tD        t?        dd«      z   dz  tS        d«      t        z  tD        t?        dd«      z  z  dz  z   gk(  sJ ‚|3jQ                  «       tK        tB        d
z  tB        z   dz   d«      dtK        tB        d
z  tB        z   dz   d«      tK        tB        d
z  tB        z   dz   d«      tK        tB        d
z  tB        z   dz   d«      tK        tB        d
z  tB        z   dz   d«      tK        tB        d
z  tB        z   dz   d«      tK        tB        d
z  tB        z   dz   d	«      tK        tB        d
z  tB        z   dz   d«      tK        tB        d
z  tB        z   dz   d«      g
k(  sJ ‚t        tL        d4„ «       t	        t        dz   t        dz  t        dz  z
  d
z   t        «      }t	        dt        z  dz   dt        z
  t        «      ŠD| t	        t         dz
  t        dz  t        dz  z
  d
z   t        «      k(  sJ ‚‰D t	        dt        z  dz
  dt        z
  t        «      k(  sJ ‚t	        t        dz   t        dz
  t        «      ŠEt	        t        dz  dz   dt        z
  t        «      ŠFt	        t        dz  dz   dz  dt        z
  dz  t        «      }(t	        t        dz   dz  t        dz
  dz  t        «      }‰E‰Ez  jU                  «       ‰Edz  cxk(  rtW        ‰Ed«      cxk(  r|k(  sJ ‚ J ‚‰F‰Fz  ‰Fz  jU                  «       ‰Fdz  cxk(  rtW        ‰Fd«      cxk(  r|(k(  sJ ‚ J ‚‰Fdz  tW        ‰Fd«      cxk(  rt	        ddt        «      k(  sJ ‚ J ‚tY        ‰E«      jU                  «       dz  ‰Edz  cxk(  r3tW        ‰Ed«      cxk(  r#t	        t        dz
  t        dz   t        «      k(  sJ ‚ J ‚‰F‰Fz  jU                  «       dz  ‰Fd5z  cxk(  r<tW        ‰Fd5«      cxk(  r,t	        dt        z
  dz  t        dz  dz   dz  t        «      k(  sJ ‚ J ‚t        t        ˆEfd6„«       t        t        ˆFfd7„«       t        t        ˆEˆFfd8„«       t	        t        dz
  t        dz  dt        z  z
  dz   t        «      }t	        t        t        z   t        dz  dz
  t        «      }9t[        |«      t	        t        dz
  t        dz
  dz  t        «      k(  sJ ‚|j\                  j1                  t        d«      |j^                  j1                  t        d«      cxk(  rdk(  sJ ‚ J ‚|j1                  t        d«      t	        t        dz
  t        dz  dt        z  z
  dz   t        «      k(  sJ ‚|9j1                  t        d«      t	        t        dz   dt        «      k(  sJ ‚‰Dja                  t        t        i«      t	        dt        z  dz   dt        z
  t        «      k(  sJ ‚t        tb        ˆDfd9„«       ‰Dj1                  t        t        d«      «      ‰Dk(  sJ ‚t	        t&        t        t        z  z  t$        t        t        z  z  z   t"        t        z  t        z
  t        «      }:|:ja                  t        tD        i«      t	        t&        tD        t        z  z  t$        t        tD        z  z  z   t"        t        z  tD        z
  tD        «      k(  sJ ‚|:j1                  t        tD        «      t	        t&        t        t        z  z  t$        t        t        z  z  z   t"        t        z  t        z
  t        «      k(  sJ ‚t	        t&        t        dz  z  dt        dz  z  z   dz   t        d	z  dz
  t        «      };t	        dt        z   dt        z   d	t        z   z  t        «      }<t	        ddt        «      }=t	        ddt        «      }>|;j                  «       t        t&        t        dz  z  dt        dz  z  z   dz   t        t        d	z  dz
  dd¬«      d¬«      k(  sJ ‚|<j                  «       t        t        dz   t        dt        z   d	t        z   z  dd¬«      d¬«      k(  sJ ‚|=j                  «       t        t;        d«      t        ddd¬«      d¬«      k(  sJ ‚|>j                  «       t        ddd¬«      k(  sJ ‚y ):Nr   éÿÿÿÿF©Úevaluater/   r2   r.   r3   r5   r4   r1   r7   c                  ó.   •— t        j                  ‰ «      S ©N©r   Úfrom_rational_expression)Úexpr_2s   €r>   r?   z1test_TransferFunction_functions.<locals>.<lambda>“   s   ø€ Ô&6×&OÑ&OÐPVÓ&W€ r=   c                  ó.   •— t        j                  ‰ «      S r{   r|   )Úexpr_3s   €r>   r?   z1test_TransferFunction_functions.<locals>.<lambda>”   ó   ø€ Ô/×HÑHÈÓP€ r=   c                  ó.   •— t        j                  ‰ «      S r{   r|   )Úexpr_4s   €r>   r?   z1test_TransferFunction_functions.<locals>.<lambda>—   r�   r=   )r3   r1   r2   rF   c                  ó:   •— t        j                  ‰‰ t        «      S r{   )r   Úfrom_coeff_listsr;   )Úden3Únum3s   €€r>   r?   z1test_TransferFunction_functions.<locals>.<lambda>«   s   ø€ Ô&6×&GÑ&GÈÈdÔTUÓ&V€ r=   y      ð¿       @y      ð¿       Àé   ç      ð?ç       @éýÿÿÿç      @ç      @ç      @zc1, d0:3g      @r8   éùÿÿÿé   é   é
   éûÿÿÿg      Ð¿g�ÞÍúSç?g3pUÍcâ¿gãH«8ó¹æ?gš™™™™™Ù¿gÄ%1Cõ9å?c                  óŒ   — t        t        dz  t        t        dz  z  t        z   t        dz  z   t        «      j                  «       S )Nr/   r’   )r   ÚxrN   Úpolesr<   r=   r>   r?   z1test_TransferFunction_functions.<locals>.<lambda>  s4   € Ô(8¼¸A¹¼rÄ!ÀRÁ%¹xÌ!¹|ÌaÐQRÉdÑ?RÔTUÓ(V×(\Ñ(\Ó(^€ r=   zq, rT)ÚnegativeÚt)Úpositiveé   g      À?gv¸-kÁÆñ?gâ3•ŽìÙ¿c                  óŒ   — t        t        t        dz  z  t        z   t        dz  z   t        dz  t        «      j                  «       S )Nr’   r/   )r   rN   r•   Úzerosr<   r=   r>   r?   z1test_TransferFunction_functions.<locals>.<lambda>2  s4   € Ô(8¼¼A¸r¹E¹ÄA¹ÌÈ1ÉÑ9LÌaÐQRÉdÔTUÓ(V×(\Ñ(\Ó(^€ r=   éþÿÿÿc                  ó0   •— ‰ t         dz  t         z   dz
  z  S ©Nr/   r.   ©r;   ©r^   s   €r>   r?   z1test_TransferFunction_functions.<locals>.<lambda>E  s   ø€ ˜s¤Q¨¡T¬A¡X°¡\Ñ2€ r=   c                  ó   •— ‰ t         z  S r{   r    ©r`   s   €r>   r?   z1test_TransferFunction_functions.<locals>.<lambda>F  s   ø€ ˜s¤A™v€ r=   c                  ó   •— ‰ ‰z  S r{   r<   ©r^   r`   s   €€r>   r?   z1test_TransferFunction_functions.<locals>.<lambda>G  s   ø€ ˜s C™x€ r=   c                  óD   •— ‰ j                  t        t        d«      i«      S ©Nr/   )ÚxreplacerI   r   ©r]   s   €r>   r?   z1test_TransferFunction_functions.<locals>.<lambda>R  s   ø€ ˜cŸl™l¬A¬s°1«v¨;Ó7€ r=   )2r   r
   r;   rI   r   r   ÚtauÚto_exprr}   r   r-   ÚZeroDivisionErrorrX   r…   Úfrom_zpkr   r   rP   rO   rN   rQ   rR   rW   ÚexpandÚsubsÚevalfr   Úeval_frequencyÚwnr   Údc_gainr   r	   r•   Úkr–   Ústrr   ÚNotImplementedErrorÚ	is_stablerœ   r   ÚdoitÚpowr   r   rK   rL   r¨   rY   )GÚexpr_1Úexpr_5Úexpr_6rZ   ÚdelayÚexpr_7ÚH1ÚH2Úexpr_8r[   Únum2Úden2r\   rœ   r–   ÚgainÚtf0rS   rT   ÚG1ÚG2ÚcrV   ÚeÚfrU   ÚG3ÚG4Úp1Úp2ÚSP1Úexpect1Úexpect1_Úc1Úd0Úd1Úd2Úp3Úp4ÚSP2Úexpect2Úexpect2_ÚSP3Úexpect3Úexpect3_ÚSP4Úexpect4Úexpect4_Útf_Ú_tfÚTF_Ú_TFÚqÚrr˜   Ú	stable_tfÚ
stable_tf_rb   rd   re   rh   ri   rk   r†   r~   r€   rƒ   r‡   r]   r^   r`   sG                                                                  @@@@@@@@r>   Útest_TransferFunction_functionsré   ƒ   s  ÿ€ ä�”Cœ˜2¨Ô.¸Ô?€FÜˆq‰S€FÜ”�1‘‰f�qœ‘s‰lœQ ™U Q™JÑ&€FØ€FØ�1”Q‘3‰w˜˜Qœq™S™Ñ! Q¨¬1©¡W¨q°1´Q¸±T±6©zÑ$:Ñ;€FØ”�1‘‰f�qœ˜A™‘v‰o Ñ!¤Q¨¡U¬Q°©U¡OÑ4€FÜ	œ!˜a™%¤ A¡¨¡¬1Ó	-€BÜ”�”3‘‹K€EØ�2—:‘:“<Ñ€FÜ	×	2Ñ	2°6¼1Ó	=€BÜ	œ!˜a™%¤! Q¡$¨¡(¬C´´#±«JÑ!6¼Ó	:€BÜ��Q”q‘Sœ!˜Q™$ ™(‘^¨eÔ4€Fä×4Ñ4°VÓ<Ô@PÐQRÔTUÔWXÓ@YÒYÐYÐYÜ
ÔÓWÔXÜ
Œ:ÓPÔQÜ×4Ñ4°V¼QÓ?ÔCSÔUVÔWXÐZ[ÑW[ÑU[Ð^_Ô`aÑ^aÑUaÔefÐijÑejÐmnÑdnÔpqÓCrÒrÐrÐrÜ×4Ñ4°V¼QÓ?ÔCSÔUVÔWXÐZ[ÑW[ÑU[Ð^_Ô`aÑ^aÑUaÔefÐijÑejÐmnÑdnÔpqÓCrÒrÐrÐrÜ
Œ:ÓPÔQÜ×4Ñ4°V¼QÓ?ÔCSÐTUÐWXÔZ[ÓC\Ò\Ð\Ð\Ü×4Ñ4°V¼QÓ?Ü˜!˜a¤™c™' A¨¬!©¡GÑ,¨q°1´Q±3©w¸¸Q¼qÀ!¹t¹V¹Ñ.DÄaÓHòIð Ið Iä×4Ñ4°V¼QÓ?Ü˜!œA˜q™D™& 1¤Q¨¡T¡6™/¨AÑ-´°Q±¼¸Q¹±ÄÓCòDð Dð Dà�Š8€Oˆ8Ü×4Ñ4°V¼QÓ?Ü˜œ1˜a™4™ !¤A¡#™¨Ñ)¬1¨a©4°!©8´QÓ7ò8ð 8ð 8ô ×
+Ñ
+¨Q°¨F²I¼qÓ
A€CÜˆq‰D�!”A‘#ˆ;€DÜˆq‰D”!�a‘%˜Ð€DÜ
×
+Ñ
+¨D°$¼Ó
:€CÚ€DØˆqˆ6€DàÔ"¤1 q¡5¨!¬A¨q©D©&°1´Q±3©,¸Ñ*:¼AÓ>Ò>Ð>Ð>ØÔ"¤1 a¡4¬¡6¨A¬a©C¡<´°A±´a¸±d±¼QÄÀAÁ¹YÑ1FÈÑ1JÌAÓNÒNÐNÐNÜ
ÔÔVÔWð ˆC€EØ�EˆN€EØ€DÜ
×
#Ñ
# E¨5°$¼Ó
:€CàÔ" 1¤Q¡3¨¡8¬a°#©g¸¼A¹©oÄÀCÁÈ#ÌaÉ%ÁÑ-PÔRSÓTÒTÐTÐTô œ1˜a™4¤! Q¡$™;¬™?¬A´°1±©H´aÓ
8€CÜœ1˜a™4¤! Q¡$™;¨™?Ð+¬Q°©U´AÓ6€AØ�<‰<‹>œX c›]Ô/¨aÒ/Ð/Ñ/Ð/Ð/ä
œA ™E¤A¨¡E™?¬Q°©U´Q¸±U©O¼QÓ
?€CÜœ˜Q™¤ A¡¤qÓ)€AØ�<‰<‹>œX c›]Ô/¨aÒ/Ð/Ñ/Ð/Ð/ô 
˜1œq™5 1™*¤q¨!¡t¨a¡x°!¡m´QÓ	7€BÜ	˜!˜R¤Ó	#€BÜ	ŒAŒq‰D‰”2”aœ‘d‘7Ñ	œR¤¤1¡™WÑ	$¤q¬!¡t¬a´©d¡{Ñ3€AÜ	ŒAŒq‰D‰”2”aœ‘d‘7Ñ	œR¤™T¤!™V¤a¬¡d™]Ñ+€AÜ
Œ1Œa‰4‰””1‘‰”rœ!œQ™$‘wœq¤!™t‘|Ñ#¤b¬¬A©¡g¬a´©d¡lÑ2´R¼¼1¹±W¼QÄ¹T±\ÑAÄBÄqÌ!ÁtÁGÌAÌqÉDÁLÑPÔSUÔVWÐZ[Ô\]ÑZ]ÑV^ÑS^Ñ^€AÜ
Œ2‰Œa‰”‰	”!”Q‘$‰œœAœq™D™¤¤A¡™Ñ%¬¬2©¬a©´´1±©´Q©Ñ6¼¼A¼q¹D¹ÄÄAÁ¹ÑE€AÜ
Œ2‰Œa‰””1‘‰”rœ!‘tœA‘vÑ¤¤2¡¤a¡¬¡	¬!¬Q©$¡Ñ.´´A°q±D±¼±Ñ:€AÜ	˜!˜Q¤Ó	"€BÜ	œ"œQ¤™T™'¤B¤q¬!¡t¡GÑ+¬b´©d´R¼±T¼!±V©m¼bÄÄAÁ¹gÌ¹kÑ-JÌAÓ	N€Bà�9‰9‹;Ô*¬1¨a©4°!´A±#©:¸©>¼1¸a¹4À!ÄAÀqÁDÁ&¹=È1Ñ;LÌaÓPÒPÐPÐPØ�:‰:‹<Ô+¬A¨q©D°1´Q±3©J¸©N¼A¸q¹DÀ1ÄQÁ3¹JÈ¹NÌAÓNÒNÐNÐNØ�9‰9‹;˜"ÒÐÐØ�9‰9‹;Ô*¨1¨a´Ó3Ò3Ð3Ð3Ø�9‰9‹;Ô*¬2¬a´©d©7´R¼¼1¹±WÑ+<¸aÄÓCÒCÐCÐCô 
ŒA‰”‰€BÜ	ŒAˆq‰D‰”2”a‘4‰œ"Ñ	€BÜ
˜2˜r¤1Ó
%€CÜ˜s¤1™u s™{¨C´°1±©H°s¼1±uÑ,<¸sÑ,BÄAÓF€GÜ ¤!¡ a¡¨¬1¨a©4©°!´A±#©¸Ñ)9¼1Ó=€HØ�8‰8”R˜œB ¤2 q¬"¨a´°QÐ7Ó8¸HÒDÐDÐDØ�8‰8”R˜œB ¤2 q¬"¨a´°QÐ7Ó8×>Ñ>Ó@ÀGÒKÐKÐKØ�>‰>Ó˜wÒ&Ð&Ð&ä˜ZÓ(�N€BˆˆB�Ø”‰T�2”a˜‘d‘7˜R¤ 1¡™WÑ$ rÑ)ˆ€BÜ
˜2˜r¤1Ó
%€CÜ˜s¤1™u c¬!¨Q©$¡h°´Q¸±T±Ñ&9¸CÑ&?ÄÓC€GÜ ¤!¡ Q¤q¨!¡t¡V¨a´°1±©f¡_°qÑ%8¼!Ó<€HØ�8‰8�R˜˜B  2 q¨"¨aÐ0Ó1°XÒ=Ð=Ð=Ø�8‰8�R˜˜B  2 q¨"¨aÐ0Ó1×7Ñ7Ó9¸WÒDÐDÐDØ�>‰>Ó˜wÒ&Ð&Ð&ä
œ2œa ™d™7¤R¬¨1©¡WÑ,¬r´!©tÑ3´bÑ8¼"¼Q¹$Ä¹(ÄAÓ
F€CÜ˜s¤1 a¡4™x¨#¬a°©d©(Ñ2´QÑ6¸Ñ<¼aÀ#ÄaÁ%¹iÌÓK€GÜ ¤! Q¡$¡¨¬1¨a©4©¡´!Ñ 3°aÑ 7¼¸Q¼q¹S¹Ä!ÓD€HØ�8‰8”R˜œB ¤2 q¬"¨aÐ0Ó1°XÒ=Ð=Ð=Ø�8‰8”R˜œB ¤2 q¬"¨aÐ0Ó1×7Ñ7Ó9¸WÒDÐDÐDØ�>‰>Ó˜wÒ&Ð&Ð&ä
œ1œr¤! Q¡$™w™;¬¬1©¬q©´!Ó
4€CÜ˜s¤1 a¡4™x¬!™|¬Q´©U´AÓ6€GÜ ¤! Q¡$¡¬¡
¬A´©E´1Ó5€HØ�8‰8”R˜œR Ð$Ó%¨Ò1Ð1Ð1Ø�8‰8”R˜œR Ð$Ó%×+Ñ+Ó-°Ò8Ð8Ð8Ø�>‰>Ó˜wÒ&Ð&Ð&ð ×ÑœbÓ!¤R¨¡U¬B°©E°A´b±D©L¸1Ñ,<Ñ%=ÀÄ"ÁÄbÈ!ÁeÈaÔPRÉdÁlÐUVÑFVÑ@WÑ%WÐZ[Ô]_ÐabÑ]bÐefÔgiÑeiÑ]iÐlmÑ]mÑZnÑ%nÒnÐnÐnØ×Ñ˜Q¤™UÓ#¤q¨£t¨B¡w´°1³´a±¸±Ñ':Ò:Ð:Ð:Ø×ÑœQ˜q›T !™VÓ$Ü
Œ1Œa‰4‰””B‘”qœ1˜Q›4 ™6‘{Ñ"¤Q q£T¬"¡W¬Q¡Y¨q¡[Ñ0°1´R±4¼±7¼1¼qÀ»tÀA¹v¹;Ñ3FÀqÑ3HÑHÌ1ÈRË5ÔQSÉ8ÔTUÉ:ÐVWÉ<ÑWÑXÐ[\Ð]^ÔabÐcdÓaeÐfgÑagÑ]hÑ[hÐijÔmnÐopÓmqÐrsÑmsÑitÑ[tÔuwÑ[wÐyzÔ{}Ñy}ô  Añ  zAô  BCô  FGð  HIó  FJð  KLñ  FLñ  BMñ  zMð  PRô  SUñ  PUô  VWñ  PWñ  zWð  Z\ô  ]_ñ  Z_ô  `bñ  Zbô  cdô  ghð  ijó  gkð  lmñ  gmñ  cnñ  Znñ  znð  qsô  tvñ  qvô  wxñ  qxñ  zxñ  \yñ  	yòyð yð yð �;‰;‹=˜AÒÐÐØ�;‰;‹=œH Q¨›NÒ*Ð*Ð*Ø�;‰;‹=˜AÒÐÐØ�?‰?Ó Ò"Ð"Ð"Ø×ÑÓ Ò"Ð"Ð"Ü˜Aœq¤!Ó$×,Ñ,Ó.´"Ò4Ð4Ð4ô œ1˜a™4¤!™8¤Q¬Ó
*€CÜ
œ1œa ™d¤Q™h¬Ó
*€CÜ
œ1˜a™4¤ B¡¬¡¬Q°©TÑ!1´1Ó
5€CÜ
œ1˜b™5¤1™9¤q¨!¡tÑ+¬Q°©T´1Ó
5€CØ�8‰8‹:œ!œQ¤ ¤Q B˜Ò'Ð'Ð'Ø�8‰8‹:˜ÒÐÐØ�9‰9‹;˜2˜q˜'Ò!Ð!Ð!Ø�>‰>Ó¤˜sÒ"Ð"Ð"Ø�9‰9‹;œB˜3œq™5˜'Ò!Ð!Ð!Ø�=‰=‹?˜u¤Q™w˜iÒ'Ð'Ð'Üˆw�}‰}‹Ó¤3Ð(9Ð;MÐPaÔbcÑPcÑ;cÐewð  {Lô  MNñ  {Nñ  fNð  (Oó  $Pò  Pð  Pð  PÜˆw�}‰}‹Ó¤3¨Ð/?ÄÑ/AÑ(AÀ4ÐJZÔ[\ÑJ\ÑC\Ð']Ó#^Ò^Ð^Ð^Ø�9‰9‹;œ1œx¨¨1›~Ñ.´´X¸aÀ³^Ñ1DÐ0DÄaÌÌHÐUVÐXYËNÑH[ÑF[Ô^_Ð]_Ô`aÔdlÐmnÐpqÓdrÑ`sÑ]sÐtÒtÐtÐtØ�9‰9‹;œ7¤1 a¡4¬!¡8¨a¡<°Ó3°Q¼ÄÀ1ÁÄqÁÈ1ÁÈaÓ8PÔRYÔZ[Ð]^ÑZ^ÔabÑZbÐefÑZfÐhiÓRjÜ”�1‘”q‘˜1‘˜aÓ ¤'¬!¨Q©$´©(°Q©,¸Ó":¼GÄAÀqÁDÌ1ÁHÈqÁLÐRSÓ<TÔV]Ô^_ÐabÑ^bÔefÑ^fÐijÑ^jÐlmÓVnÜ”�1‘”q‘˜1‘˜aÓ ¤'¬!¨Q©$´©(°Q©,¸Ó":ð<ò <ð <ð <ô ÔÑ ^Ô_ô �6 DÔ)�D€A€qÜ�˜dÔ#€AÜ
œ1˜a™4¤"™9¤r¬!¡tÑ+¨Q¬q©S°1©W´aÓ
8€CÜ ¤ A¡¬¡¬R´©TÑ!1°1´Q±3¸±7¼AÓ>€IÜ!¤! Q¡$¬¡)¬b´©dÑ"2°A´a±C¸!±G¼QÓ?€Jà�<‰<‹>˜UÑ"Ð"Ð"Ø�<‰<‹>˜TÑ!Ð!Ð!Ø�=‰=‹?˜eÑ#Ð#Ð#Ø×ÑÓ %Ñ'Ð'Ð'Ø×ÑÓ $Ñ&Ð&Ð&Ø×ÑÓ  DÑ(Ð(Ð(Ø×ÑÓ! TÑ)Ð)Ð)Ø�=‰=‹?˜eÑ#Ð#Ð#Ø×ÑÓÐ'Ð'Ð'Ø�=‰=‹?Ð"Ð"Ð"ð �8‰8‹:˜!˜Q˜ÒÐÐØ�8‰8‹:˜ÒÐÐØ�9‰9‹;˜2˜q˜'Ò!Ð!Ð!Ø�>‰>Ó ¤H¨Q°£NÑ 3´a°R¼8ÀAÀq»>Ñ4JÑ JÈ1Ñ LÈqÔS[Ð\]Ð_`ÓSaÑObÐNbÔefÐdfÔjrÐstÐvwÓjxÑcyÑNyÐz|ÑN|ÜˆQ‹�”H˜Q “NÑ#Ñ#¤AÑ%¬ r¬X°a¸«^Ñ&<Ñ<¸RÑ?ñO@ØBCÄhÈqÐRSÃnÑBUÐAUÔXYÐWYÔ]eÐfgÐijÓ]kÑVlÑAlÐmoÑAoÔrvÐwxÓryÐz{ô  Gð  HIð  KLó  Mñ  {Nñ  sNô  OPñ  sPô  STð  RTô  X`ð  abð  deó  Xfñ  Qgñ  sgð  hjñ  sjñ  Bjð kò kð kð kà�9‰9‹;œAœb™D¤H¨Q°£NÑ3´q¼±t¼xÈÈ1»~Ñ6NÐ5NÈqÑ5PÔSWÐXYÓSZÔ[\ÑS\Ô^_Ô`bÑ^bÔfnÐopÐrsÓftÑ]uÑSuÐvwÑSwÑ5wÜ
ŒB‰$”(˜1˜a“.Ñ	!Ð! !Ñ#¤d¨1£g¬a¡i´´2±¼À!ÀQ»Ñ0HÑ&HÈÑ&JÑJðLò Lð Lð Läˆw�}‰}‹Ó¤3¨Ð0@ÄÐFXÔYZÐ\]ÑY]ÑF]Ð`cÑFcÓAdÑ0dÑ(dØœÐ0´°A±Ñ5¸Ñ;Ó<Ñ<¸uÑDð(Fó $Gò Gð Gð Gà�9‰9‹;œ1œx¨¨1›~Ñ.´´X¸aÀ³^Ñ1DÐ0DÀQÑ0FÌÈaËÔQRÉÔSTÔW_Ð`aÐcdÓWeÑSfÑIfÐghÑIhÑ0hÜ	
ŒX�a˜‹^Ñ	Ð˜QÑ¤ a£¬¡¬1¬x¸¸1«~Ñ+>Ñ!>¸qÑ!@Ñ@ðBò Bð Bð Bà�9‰9‹;œ7¤1 a¡4¬!¡8¨a¡<°Ó3°Q¼ÄÀ1ÁÄqÁÈ1ÁÈaÓ8PÔRYÔZ[Ð]^ÑZ^ÔabÑZbÐefÑZfÐhiÓRjÜ”�1‘”q‘˜1‘˜aÓ ¤'¬!¨Q©$´©(°Q©,¸Ó":¼GÄAÀqÁDÌ1ÁHÈqÁLÐRSÓ<TÔV]Ô^_ÐabÑ^bÔefÑ^fÐijÑ^jÐlmÓVnÜ”�1‘”q‘˜1‘˜aÓ ¤'¬!¨Q©$´©(°Q©,¸Ó":ð<ò <ð <ð <ô ÔÑ ^Ô_ô œ1˜q™5¤! Q¡$¬¨A©¡+°¡/´1Ó
5€CÜ
˜2œa™4 !™8 Q¬¡U¬AÓ
.€CØˆ4Ô#¤Q B¨¡F¬A¨q©D´1°a±4©K¸!©O¼QÓ?Ò?Ð?Ð?Øˆ4Ô# A¤a¡C¨!¡G¨Q´©U´AÓ6Ò6Ð6Ð6ô œ1˜q™5¤! a¡%¬Ó
+€CÜ
œ1˜a™4 !™8 Q¬¡U¬AÓ
.€CÜ¤ 1¡ q¡¨1™}¨q´1©u°q©j¼!Ó<€GÜ¤ A¡¨™z¬A°©E°A©:´qÓ9€GØ�‰G�>‰>Ó˜s A™vÔ?¬¨S°!«Ô?¸Ò?Ð?Ñ?Ð?Ð?Ø�‰G�C‰K×ÑÓ 3¨¡6ÔC¬S°°a«[ÔC¸GÒCÐCÑCÐCÐCØ�‰6”S˜˜a“[Ô=Ô$4°Q¸¼1Ó$=Ò=Ð=Ñ=Ð=Ð=Ü�#‹;×ÑÓ˜rÑ! S¨"¡WÔa´°C¸³ÔaÔ@PÔQRÐUVÑQVÔXYÐ\]ÑX]Ô_`Ó@aÒaÐaÑaÐaÐaØ�‰G�>‰>Ó˜RÑ 3¨¡7Ôl¬c°#°r«lÔlÔ>NÐPQÔTUÑPUÐXYÉzÔ\]Ð_`Ñ\`ÐcdÑ\dÐghÑ[hÔjkÓ>lÒlÐlÑlÐlÐlä
Œ:Ó2Ô3Ü
Œ:“~Ô&Ü
Œ:Ô'Ô(ô 
œ!˜a™%¤ A¡¨¬!©¡¨a¡´Ó	3€BÜ
œ1œq™5¤! Q¡$¨¡(¬AÓ
.€CÜ�"‹:Ô)¬!¨a©%´!°a±%¸!±¼QÓ?Ò?Ð?Ð?Ø�6‰6�;‰;”q˜!Ó §¡§¡¬A¨qÓ 1Ô6°QÒ6Ð6Ñ6Ð6Ð6à�7‰7”1�a‹=Ô,¬Q°©U´A°q±D¸1¼Q¹3±JÀ±NÄAÓFÒFÐFÐFØ�8‰8”A�q‹>Ô-¬a°!©e°Q¼Ó:Ò:Ð:Ð:Ø�<‰<œœA˜ÓÔ#3°B´q±D¸1±H¸aÄ!¹eÄQÓ#GÒGÐGÐGÜ
Œ9Ó7Ô8Ø�8‰8”A”s˜1“vÓ #Ò%Ð%Ð%ä
œ2œa¤™d™7¤R¬¬1©¡WÑ,¬b´©d´Q©h¼Ó
:€CØ�<‰<œœA˜ÓÔ#3´B´q¼!±t±G¼bÄÄAÁ¹gÑ4EÄrÌ!ÁtÌaÁxÔQRÓ#SÒSÐSÐSØ�8‰8”A”q‹>Ô-¬b´´A±©g¼¼1¼a¹4¹Ñ.?ÄÄAÁÌÁÌ1ÓMÒMÐMÐMô œ2œa ™d™7 Q¤q¨!¡t¡VÑ+¨aÑ/´°A±¸±¼1Ó
=€CÜ
˜A¤™E Q¬¡U¨Q´©U¡O´QÓ
7€CÜ˜A˜q¤!Ó$€DÜ˜A˜q¤!Ó$€DØ�;‰;‹=œC¤¤A q¡D¡¨1¬Q°©T©6Ñ!1°AÑ!5¼¼QÀ¹TÀA¹XÈÐUZÔ8[ÐfkÔlÒlÐlÐlØ�;‰;‹=œC¤ Q¡¬¨a´!©e°a¼!±e©_¸bÈ5Ô)QÐ\aÔbÒbÐbÐbØ�<‰<‹>œS¤ 1£¤s¨1¨b¸5Ô'AÈEÔRÒRÐRÐRØ�<‰<‹>œS  B°Ô7Ò7Ð7Ñ7r=   c                  ód  ‡ ‡‡‡‡— t        t        dz   t        dz
  t        «      Št        t        dz   t        dz   t        «      Št        t        dz   t        dz  t        z   dz   t        «      Št        t        dt        z
  t        «      Š‰‰z   t        ‰‰«      k(  sJ ‚‰‰z   t        ‰‰«      k(  sJ ‚‰ ‰z   ‰z   t        ‰ ‰‰«      k(  sJ ‚‰‰‰z   z   t        ‰‰‰«      k(  sJ ‚t	        dd¬«      Š t        t        ˆfd	„«       t        t        ˆ ˆfd
„«       t        t        ˆˆfd„«       t        t        ˆfd„«       t        t        ˆfd„«       t        t        ˆfd„«       ‰‰z
  t        ‰‰ «      k(  sJ ‚‰‰z
  t        ‰‰ «      k(  sJ ‚‰ ‰z
  t        ‰ ‰ «      k(  sJ ‚‰‰z
  ‰z   t        ‰‰ ‰«      k(  sJ ‚t        t        ˆfd„«       t        t        ˆˆfd„«       t        t        ˆfd„«       t        t        ˆfd„«       t        t        ˆfd„«       t        t        ˆfd„«       y )Nr5   r2   r3   r.   r/   rÈ   F©Úcommutativec                  ó$   •— ‰ t        g d¢«      z   S rE   ©r   ©r[   s   €r>   r?   z@test_TransferFunction_addition_and_subtraction.<locals>.<lambda>q  ó   ø€ ˜s¤VªIÓ%6Ñ6€ r=   c                  ó   •— ‰‰ z   S r{   r<   )rÈ   r\   s   €€r>   r?   z@test_TransferFunction_addition_and_subtraction.<locals>.<lambda>r  ó   ø€ ˜s Q™w€ r=   c                  ó   •— ‰ ‰z   S r{   r<   ©r]   r^   s   €€r>   r?   z@test_TransferFunction_addition_and_subtraction.<locals>.<lambda>s  ó   ø€ ˜s S™y€ r=   c                  ó   •— ‰ t         dz
  z   S ©Nr.   r    rï   s   €r>   r?   z@test_TransferFunction_addition_and_subtraction.<locals>.<lambda>t  ó   ø€ ˜s¤a¨!¡e™}€ r=   c                  ó   •— ‰ dz   S ©Nr7   r<   rï   s   €r>   r?   z@test_TransferFunction_addition_and_subtraction.<locals>.<lambda>u  rò   r=   c                  ó"   •— dt         dz  z
  ‰ z   S ©Nr.   r3   ©rI   rï   s   €r>   r?   z@test_TransferFunction_addition_and_subtraction.<locals>.<lambda>v  ó   ø€  ¤A q¡D¡¨CÑ/€ r=   c                  ó$   •— ‰ t        g d¢«      z
  S rE   rî   rï   s   €r>   r?   z@test_TransferFunction_addition_and_subtraction.<locals>.<lambda>~  rð   r=   c                  ó   •— ‰ ‰z
  S r{   r<   rô   s   €€r>   r?   z@test_TransferFunction_addition_and_subtraction.<locals>.<lambda>  rõ   r=   c                  ó   •— ‰ t         dz
  z
  S r÷   r    rï   s   €r>   r?   z@test_TransferFunction_addition_and_subtraction.<locals>.<lambda>€  rø   r=   c                  ó   •— ‰ dz
  S rú   r<   rï   s   €r>   r?   z@test_TransferFunction_addition_and_subtraction.<locals>.<lambda>�  rò   r=   c                  ó   •— t         dz   ‰ z
  S )Nr2   r    )r\   s   €r>   r?   z@test_TransferFunction_addition_and_subtraction.<locals>.<lambda>‚  s   ø€ ¤ A¡¨™}€ r=   c                  ó"   •— dt         dz  z   ‰ z
  S )Nr.   r1   rý   rï   s   €r>   r?   z@test_TransferFunction_addition_and_subtraction.<locals>.<lambda>ƒ  rþ   r=   )r   r;   rI   r    r   r-   rX   )rÈ   r[   r\   r]   r^   s   @@@@@r>   Ú.test_TransferFunction_addition_and_subtractionr  d  sÜ  ü€ Ü
œ1˜q™5¤! a¡%¬Ó
+€CÜ
œ1˜q™5¤! a¡%¬Ó
+€CÜ
œ1˜q™5¤! Q¡$¬¡(¨Q¡,´Ó
2€CÜ
œ1˜a¤!™e¤QÓ
'€Cð �‰9œ  cÓ*Ò*Ð*Ð*Ø�‰9œ  cÓ*Ò*Ð*Ð*Øˆ4�#‰:˜Ñœx¨¨¨c°3Ó7Ò7Ð7Ð7Ø�#˜‘)Ñ¤¨¨c°3Ó 7Ò7Ð7Ð7ä� Ô'€AÜ
Œ:Ó6Ô7Ü
Œ:”Ô'Ü
Œ:Ô(Ô)Ü
Œ:Ó,Ô-Ü
Œ:“Ô'Ü
Œ:Ó/Ô0ð �‰9œ  s dÓ+Ò+Ð+Ð+Ø�‰9œ  s dÓ+Ò+Ð+Ð+Øˆ4�#‰:œ 3 $¨¨Ó-Ò-Ð-Ð-Ø�‰9�s‰?œh s¨S¨D°#Ó6Ò6Ð6Ð6ä
Œ:Ó6Ô7Ü
Œ:Ô(Ô)Ü
Œ:Ó,Ô-Ü
Œ:“Ô'Ü
Œ:Ó,Ô-Ü
Œ:Ó/Õ0r=   c            
      óˆ  ‡ ‡‡‡‡‡‡‡— t        t        dz   t        dz   dz   t        «      Š t        t        dz   t        dz
  t        «      Št        t        t        dz  dz
  t        «      Št        t        dz   t        dz
  t        «      Št        t        dz   t        dz
  t        «      Št        t        dz   t        dz   t        «      Št        ddt        «      Š‰ ‰z  t        ‰ ‰«      k(  sJ ‚‰  ‰z  t        ‰  ‰«      k(  sJ ‚‰ ‰z  ‰ z  t        ‰ ‰‰ «      k(  sJ ‚‰  ‰ z  ‰ z  ‰ z  t        ‰  ‰ ‰ ‰ «      k(  sJ ‚‰‰z  t        ‰‰«      k(  sJ ‚‰ ‰z  ‰‰z   z  t        ‰ ‰t        ddt        «      t        ‰‰«      «      k(  sJ ‚‰ ‰z  ‰‰z   z  t        ‰ ‰t	        ‰‰«      «      k(  sJ ‚‰‰z  t        ‰t        ‰d«      «      k(  sJ ‚‰ ‰z  t        ‰ t        ‰d«      «      k(  sJ ‚‰‰z  ‰z  t        ‰‰t        ‰d«      «      k(  sJ ‚t        dd	¬
«      Št        t        ˆfd„«       t        t        ˆ ˆfd„«       t        t        ˆˆfd„«       t        t        ˆfd„«       t        t        ˆfd„«       t        t        ˆfd„«       t        t        ˆfd„«       t        t        ˆˆfd„«       t        t        ˆfd„«       t        t        ˆfd„«       t        t        ˆfd„«       t        t        ˆfd„«       t        t        ˆˆfd„«       t        t        ˆˆˆfd„«       t        t        ˆˆˆfd„«       y )Nr3   r4   r.   r2   r1   r5   rw   rÈ   Frë   c                  ó$   •— ‰ t        g d¢«      z  S rE   rî   ©rË   s   €r>   r?   zCtest_TransferFunction_multiplication_and_division.<locals>.<lambda>Ÿ  ó   ø€ ˜r¤Fª9Ó$5Ñ5€ r=   c                  ó   •— ‰ ‰z  S r{   r<   )rÆ   rÈ   s   €€r>   r?   zCtest_TransferFunction_multiplication_and_division.<locals>.<lambda>   ó   ø€ ˜r A™v€ r=   c                  ó   •— ‰ ‰z  S r{   r<   ©rË   ÚG5s   €€r>   r?   zCtest_TransferFunction_multiplication_and_division.<locals>.<lambda>¡  ó   ø€ ˜r B™w€ r=   c                  ó   •— ‰ t         dz
  z  S r÷   r    ©r  s   €r>   r?   zCtest_TransferFunction_multiplication_and_division.<locals>.<lambda>¢  s   ø€ ˜r¤Q¨¡U™|€ r=   c                  ó   •— d‰ z  S ©Nr4   r<   r  s   €r>   r?   zCtest_TransferFunction_multiplication_and_division.<locals>.<lambda>£  ó   ø€ ˜q 2™v€ r=   c                  ó$   •— ‰ t        g d¢«      z  S rE   rî   r  s   €r>   r?   zCtest_TransferFunction_multiplication_and_division.<locals>.<lambda>¥  r	  r=   c                  ó   •— ‰ dz  S rB   r<   )ÚG6s   €r>   r?   zCtest_TransferFunction_multiplication_and_division.<locals>.<lambda>¦  r  r=   c                  ó   •— ‰ ‰z  S r{   r<   r  s   €€r>   r?   zCtest_TransferFunction_multiplication_and_division.<locals>.<lambda>§  r  r=   c                  ó   •— ‰ dz  S r§   r<   r  s   €r>   r?   zCtest_TransferFunction_multiplication_and_division.<locals>.<lambda>¨  r  r=   c                  ó   •— ‰ t         dz  z  S r§   r    r  s   €r>   r?   zCtest_TransferFunction_multiplication_and_division.<locals>.<lambda>©  s   ø€ ˜r¤A q¡D™y€ r=   c                  ó0   •— t         dt         dz  z  z
  ‰ z  S )Nr1   r/   r    )rÇ   s   €r>   r?   zCtest_TransferFunction_multiplication_and_division.<locals>.<lambda>ª  s   ø€ ¤ A¤a¨¡d¡F¡
¨bÑ0€ r=   c                  ó   •— d‰ z  S rB   r<   )rÌ   s   €r>   r?   zCtest_TransferFunction_multiplication_and_division.<locals>.<lambda>«  r  r=   c                  ó   •— ‰d‰ z   z  S r÷   r<   )r  ÚG7s   €€r>   r?   zCtest_TransferFunction_multiplication_and_division.<locals>.<lambda>¬  s   ø€ ˜r Q¨¡V™}€ r=   c                  ó   •— ‰‰ ‰z  z  S r{   r<   ©r  r  r  s   €€€r>   r?   zCtest_TransferFunction_multiplication_and_division.<locals>.<lambda>­  s   ø€ ˜r R¨"¡W™~€ r=   c                  ó   •— ‰‰‰ ‰z   z   z  S r{   r<   r   s   €€€r>   r?   zCtest_TransferFunction_multiplication_and_division.<locals>.<lambda>®  s   ø€ ˜r R¨2°©7¡^Ñ4€ r=   )	r   r;   rI   r   r    r¹   r   r-   rX   )rÆ   rÇ   rË   rÌ   r  r  r  rÈ   s   @@@@@@@@r>   Ú1test_TransferFunction_multiplication_and_divisionr"  †  sÄ  ÿ€ Ü	œ!˜a™%¤! Q¡$ ¨¡¬AÓ	.€BÜ	œ!˜a™%¤ Q¡¬Ó	*€BÜ	œ!œQ ™T A™X¤qÓ	)€BÜ	œ!˜a™%¤ Q¡¬Ó	*€BÜ	œ!˜a™%¤ Q¡¬Ó	*€BÜ	œ!˜a™%¤ Q¡¬Ó	*€BÜ	˜!˜Q¤Ó	"€Bð ˆb‰5”F˜2˜r“NÒ"Ð"Ð"Øˆ3ˆr‰6”V˜R˜C “_Ò$Ð$Ð$Øˆ3ˆr‰6�2�#‰:œ   R¨"¨Ó-Ò-Ð-Ð-Øˆ3�ˆs‰7�B�3‰;˜�s‰?œf b S¨2¨#°¨s°R°CÓ8Ò8Ð8Ð8Øˆb‰5”F˜2˜r“NÒ"Ð"Ð"Øˆr‰E�R˜‘U�8ÑÜˆr�2Ô'¨¨A¬qÓ1´6¸"¸b³>ÓBòCð Cð Càˆb‰5�"�r‘'‰?œf R¨¬X°b¸"Ó-=Ó>Ò>Ð>Ð>ð ˆb‰5”F˜2œs 2 r›{Ó+Ò+Ð+Ð+Øˆ3ˆr‰6”V˜R˜C¤ R¨£Ó-Ò-Ð-Ð-Øˆr‰E�2‰:œ  B¬¨B°«Ó4Ò4Ð4Ð4ä� Ô'€AÜ
Œ:Ó5Ô6Ü
Œ:”~Ô&Ü
Œ:”Ô'Ü
Œ:Ó+Ô,Ü
Œ:“~Ô&ä
Œ:Ó5Ô6Ü
Œ:“~Ô&Ü
Œ:”Ô'Ü
Œ:“~Ô&Ü
Œ:Ó(Ô)Ü
Œ:Ó0Ô1Ü
Œ:“~Ô&Ü
Œ:Ô,Ô-Ü
Œ:Õ-Ô.Ü
Œ:Õ4Õ5r=   c                  ó‚  — t        d«      \  } }}t        | dz  t        dz  t        | z  |z  t        z  z   | dz  z   | «      }t        |t        dz  z
  |t        dz  z   |«      }t        t        t
        z  t        dz  z  t        dz  z   t        t        z  z
  t        z   t
        t        t        dz  z  z
  t        «      }t        t
        t        dz  z  t        dz  z   t        t        z  z
  t        z   t
        t        dz  z
  t        «      }|j                  sJ ‚|j                  sJ ‚|j                  sJ ‚|j                  rJ ‚y ©Nzomega_o, zeta, taur/   r3   r1   )r   r   r;   rI   rS   rT   Ú	is_proper)rp   Úzetarª   rÆ   rÇ   rË   rÌ   s          r>   Útest_TransferFunction_is_properr'  ±  s  € Ü Ð!5Ó6Ñ€GˆT�3Ü	˜' 1™*¤a¨¡d¬Q¨w©Y°t©^¼AÑ-=Ñ&=ÀÈÁ
Ñ&JÈGÓ	T€BÜ	˜#¤ 1¡™* c¬A¨q©D¡j°#Ó	6€BÜ	œ!œA™#œa ™d™(¤Q¨¡T™/¬A¬a©CÑ/´!Ñ3´Q¼¼1¸a¹4¹±ZÄÓ	C€BÜ	œ!œA˜q™D™&¤1 a¡4™-¬!¬A©#Ñ-´Ñ1´1´q¸!±t±8¼QÓ	?€BØ�<Š<Ðˆ<Ø�<Š<Ðˆ<Ø�<Š<Ðˆ<Ø�|Š|ÐÐˆ|r=   c                  ó‚  — t        d«      \  } }}t        | dz  t        dz  t        | z  |z  t        z  z   | dz  z   | «      }t        |t        dz  z
  |t        dz  z   |«      }t        t        t
        z  t        dz  z  t        dz  z   t        t        z  z
  t        z   t
        t        t        dz  z  z
  t        «      }t        t
        t        dz  z  t        dz  z   t        t        z  z
  t        z   t
        t        dz  z
  t        «      }|j                  rJ ‚|j                  rJ ‚|j                  sJ ‚|j                  rJ ‚y r$  )r   r   r;   rI   rS   rT   Úis_strictly_proper)rp   r&  rª   r[   r\   r]   r^   s          r>   Ú(test_TransferFunction_is_strictly_properr*  ½  s  € Ü Ð!5Ó6Ñ€GˆT�3Ü
˜7 A™:¤q¨!¡t¬a°©i¸©n¼QÑ.>Ñ'>ÀÈ!ÁÑ'KÈWÓ
U€CÜ
˜3¤ A¡™: s¬Q°©T¡z°3Ó
7€CÜ
œ1œQ™3œq !™t™8¤a¨¡d™?¬Q¬q©SÑ0´1Ñ4´a¼!¼A¸q¹D¹&±jÄ!Ó
D€CÜ
œ1œQ ™T™6¤A q¡D™=¬1¬Q©3Ñ.´Ñ2´A¼¸1¹±H¼aÓ
@€CØ×%Ò%Ð%Ð%Ø×%Ò%Ð%Ð%Ø×!Ò!Ð!Ð!Ø×%Ò%Ð%Ð%Ð%r=   c                  ó‚  — t        d«      \  } }}t        |dz  t        dz  t        |z  |z  t        z  z   |dz  z   |«      }t        | t        dz  z
  | t        dz  z   | «      }t        t        t
        z  t        dz  z  t        dz  z   t        t        z  z
  t        z   t
        t        t        dz  z  z
  t        «      }t        t
        t        dz  z  t        dz  z   t        t        z  z
  t        z   t
        t        dz  z
  t        «      }|j                  sJ ‚|j                  sJ ‚|j                  rJ ‚|j                  rJ ‚y )Nztau, omega_o, zetar/   r3   r1   )r   r   r;   rI   rS   rT   Úis_biproper)rª   rp   r&  r[   r\   r]   r^   s          r>   Ú!test_TransferFunction_is_biproperr-  É  s  € Ü Ð!5Ó6Ñ€Cˆ�$Ü
˜7 A™:¤q¨!¡t¬a°©i¸©n¼QÑ.>Ñ'>ÀÈ!ÁÑ'KÈWÓ
U€CÜ
˜3¤ A¡™: s¬Q°©T¡z°3Ó
7€CÜ
œ1œQ™3œq !™t™8¤a¨¡d™?¬Q¬q©SÑ0´1Ñ4´a¼!¼A¸q¹D¹&±jÄ!Ó
D€CÜ
œ1œQ ™T™6¤A q¡D™=¬1¬Q©3Ñ.´Ñ2´A¼¸1¹±H¼aÓ
@€CØ�?Š?Ðˆ?Ø�?Š?Ðˆ?Ø�ŠÐÐØ�ŠÐÐˆr=   c            
      ó
  — t        d«      \  } }}}t        | |||«      }t        «       }t        |t        «      sJ ‚t        |t        «      sJ ‚|t        | |||t        «      k(  sJ ‚|t        | ||dt        «      k(  sJ ‚|j
                  |t        dz  z  |t        z  |z  z   |z   | t        dz  z  |z  z   | t        z  z   k(  sJ ‚|j                  t        dz  |z  t        z   k(  sJ ‚|j                  t        k(  sJ ‚|j                  | k(  sJ ‚|j                  |k(  sJ ‚|j                  |k(  sJ ‚|j                  |k(  sJ ‚|j                  «       t        |t        dz  z  |t        z  |z  z   |z   | t        dz  z  |z  z   | t        z  z   t        dz  |z  t        z   t        «      k(  sJ ‚|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  «       t        |t        dz  z  |z   | t        z  z   t        t        «      k(  sJ ‚t        t        t        dz   t        «      }t!        ||«      }t#        ||«      }t%        ||«      }	|t!        t        | |||t        «      t        t        t        dz   t        «      «      k(  sJ ‚|t#        t        | |||t        «      t        t        t        dz   t        «      «      k(  sJ ‚|	t%        t        | |||t        «      t        t        t        dz   t        «      «      k(  sJ ‚|j                  «       t        t        t        dz  |z  t        z   z  t        dz   |t        dz  z  |t        z  |z  z   |z   | t        dz  z  |z  z   | t        z  z   z  z   t        dz   t        dz  |z  t        z   z  t        «      k(  sJ ‚|j                  «       t        t        |t        dz  z  |t        z  |z  z   |z   | t        dz  z  |z  z   | t        z  z   z  t        dz   t        dz  |z  t        z   z  t        «      k(  sJ ‚|	j                  «       t        t        dz   t        dz  |z  t        z   z  |t        dz  z  |t        z  |z  z   |z   | t        dz  z  |z  z   | t        z  z   z  t        |t        dz  z  |t        z  |z  z   |z   | t        dz  z  |z  z   | t        z  z   z  t        dz   t        dz  |z  t        z   z  z   t        dz  |z  t        z   z  t        «      k(  sJ ‚y )Nzkp ki kd tfr   r/   TFr.   )r   r   Ú
isinstancer   r;   rK   rL   ÚvarÚkpÚkiÚkdrZ   r¸   r%  r,  r)  r    r   r!   )
r1  r2  r3  rZ   rÍ   rÎ   r[   Úpar1Úser1Úfed1s
             r>   Útest_PIDControllerr7  Õ  s  € Ü˜]Ó+�N€BˆˆB�Ü	�r˜2˜r 2Ó	&€BÜ	‹€Bô �bœ-Ô(Ð(Ð(Ü�bÔ*Ô+Ð+Ð+ð ”˜r 2 r¨2¬qÓ1Ò1Ð1Ð1Ø”˜r 2 r¨1¬aÓ0Ò0Ð0Ð0Ø�6‰6�Rœ˜1™‘W˜r¤!™t B™wÑ&¨Ñ+¨b´°A±©g°b©jÑ8¸2¼a¹4Ñ?Ò?Ð?Ð?Ø�6‰6”Q˜‘T˜"‘Wœq‘[Ò Ð Ð Ø�6‰6”QŠ;Ðˆ;Ø�5‰5�BŠ;Ðˆ;Ø�5‰5�BŠ;Ðˆ;Ø�5‰5�BŠ;Ðˆ;Ø�5‰5�BŠ;Ðˆ;ð �7‰7‹9Ô(¨¬A¨q©D©°2´a±4¸±7Ñ):¸RÑ)?À"ÄQÈÁTÁ'È"Á*Ñ)LÈrÔRSÉtÑ)SÔUVÐXYÑUYÐZ\ÑU\Ô_`ÑU`ÔbcÓdÒdÐdÐdØ�<‰<˜4ÒÐÐØ�>‰>˜TÒ!Ð!Ð!Ø× Ñ  EÒ)Ð)Ð)Ø�7‰7‹9Ô(¨¬A¨q©D©°2©¸¼1¹Ñ)<¼aÄÓCÒCÐCÐCô œ1œa !™e¤QÓ
'€CÜ�B˜Ó€DÜ�"�c‹?€DÜ�B˜Ó€DØ”8œM¨"¨b°"°b¼!Ó<Ô>NÌqÔRSÐVWÑRWÔYZÓ>[Ó\Ò\Ð\Ð\Ø”6œ-¨¨B°°B¼Ó:Ô<LÌQÔPQÐTUÑPUÔWXÓ<YÓZÒZÐZÐZØ”8œM¨"¨b°"°b¼!Ó<Ô>NÌqÔRSÐVWÑRWÔYZÓ>[Ó\Ò\Ð\Ð\Ø�9‰9‹;Ô*¬1¬a°©d°2©g¼©k©?¼aÀ!¹eÀbÌÈAÉÁgÐPRÔSTÑPTÐUWÑPWÑFWÐZ\ÑF\Ð_aÔbcÐefÑbfÑ_fÐgiÑ_iÑFiÐlnÔopÑlpÑFpÑ=qÑ+qÜ,-°©E´A°q±D¸±G¼a±KÑ+@Ä!óEò Eð Eð Eà�9‰9‹;Ô*¬1¨b´°A±©g¸¼1¹¸R¹Ñ.?À"Ñ.DÀrÌ!ÈQÉ$ÁwÈrÁzÑ.QÐTVÔWXÑTXÑ.XÑ+YÜ,-°©E´A°q±D¸±G¼a±KÑ+@Ä!óEò Eð Eð Eà�9‰9‹;Ô*¬A°©E´A°q±D¸±G¼a±KÑ+@À"ÄQÈÁTÁ'ÈBÌqÉDÐQSÉGÑBSÐVXÑBXÐ[]Ô^_ÐabÑ^bÑ[bÐceÑ[eÑBeÐhjÔklÑhlÑBlÑ+mÜ,-¨r´!°Q±$©w¸¼A¹¸b¹Ñ/@À2Ñ/EÈÌ1ÈaÉ4ÉÐPRÉ
Ñ/RÐUWÔXYÑUYÑ/YÑ,ZÔ^_ÐbcÑ^cÔfgÐijÑfjÐkmÑfmÔpqÑfqÑ]rÑ,rÔuvÐxyÑuyÐz|Ñu|ô  @Añ  vAñ  ,Bô  DEóFò Fð Fñ Fr=   c                  óz  ‡‡‡‡— t        t        t        dz  z  t        t        dz  z  z   t        t        z  z
  t
        t        dz  z  t        t        dz  z  z   t        t        z  t        z  z
  t        «      Št        t        t        z  t        z
  t        t        z  t        z   t        «      Št        t        t        z  t        t        z  z   t        z
  t        t        «      Št        dt        dz  dt        z  t        z  t        z  z   t        dz  z   t        «      Š t        d«      t        «      }  t        d«      t        «      }t        ‰‰«      }|j                  ‰‰fk(  sJ ‚|j                  t        k(  sJ ‚t        t        ‰‰ «      ‰«      }|j                  t        ‰‰ «      ‰fk(  sJ ‚|j                  t        k(  sJ ‚t        | dt        «      }t        | dt        «      }t        ‰t        ||«      ‰«      }|j                  ‰t        ||«      ‰fk(  sJ ‚t        ‰‰‰«      }|j                  ‰‰‰fk(  sJ ‚t        ||«      }|j                  ||fk(  sJ ‚|j                  t        k(  sJ ‚t        ‰‰t        ‰‰ «      ‰«      }	|	j                  ‰‰t        ‰‰ «      ‰fk(  sJ ‚t        ‰‰«      }
||
k(  sJ ‚||k(  rJ ‚t!        t"        ˆˆfd„«       t!        t"        ˆˆˆˆfd„«       t!        t"        ˆˆfd	„«       t!        t$        ˆˆfd
„«       t!        t$        ˆˆfd„«       t!        t$        ˆfd„«       y )Nr3   r/   r1   r.   ÚX_dÚXc                  ó   •— t        ‰ ‰«      S r{   ©r   ©rZ   r]   s   €€r>   r?   z*test_Series_construction.<locals>.<lambda>#  s   ø€ œv b¨#›€ r=   c                  ó    •— t        ‰ ‰‰‰«      S r{   r<  ©rZ   r\   r]   r^   s   €€€€r>   r?   z*test_Series_construction.<locals>.<lambda>$  s   ø€ œv b¨#¨s°CÓ8€ r=   c                  ó   •— t        ‰ ‰ «      S r{   r<  ©r\   r]   s   €€r>   r?   z*test_Series_construction.<locals>.<lambda>%  s   ø€ œv s d¨CÓ0€ r=   c                  ó   •— t        d‰ ‰«      S r§   r<  ©rZ   r^   s   €€r>   r?   z*test_Series_construction.<locals>.<lambda>&  s   ø€ œf Q¨¨CÓ0€ r=   c                  óH   •— t        t        dz  t        t        z  z   ‰‰ «      S r§   )r   r;   rI   rA  s   €€r>   r?   z*test_Series_construction.<locals>.<lambda>'  s   ø€ œf¤Q¨¡T¬A¬a©C¡Z°°cÓ:€ r=   c                  ó2   •— t        ‰ t        g d¢«      «      S ©N)r.   r/   r3   r1   )r   r   r©   s   €r>   r?   z*test_Series_construction.<locals>.<lambda>(  s   ø€ œf S¬&²Ó*>Ó?€ r=   )r   rN   r;   rO   rP   rQ   rI   rR   rW   r&  r²   r   r   rM   r0  r    r-   rX   rY   )ÚinpÚoutÚs0Ús1Útf3_r_   Ús2Ús3Ús4Ús6Ús7rZ   r\   r]   r^   s              @@@@r>   Útest_Series_constructionrQ     s�  û€ Ü	œ"œQ ™T™'¤B¤q¨!¡t¡GÑ+¬b´©dÑ2´B´q¸!±t±G¼bÄÀAÁ¹gÑ4EÌÌ1ÉÌQÉÑ4NÔPQÓ	R€BÜ
œ2œa™4¤!™8¤R¬¡T¬A¡X¬qÓ
1€CÜ
œ2œa™4¤!¤R¡%™<¬!Ñ+¬Q´Ó
2€CÜ
˜1œa ™d Q¤t¡V¬B¡Y¬q¡[Ñ0´2°q±5Ñ8¼!Ó
<€CØ
Œ(�5‹/œ!Ó
€CØ
Œ(�3‹-œÓ
€Cä	��C‹€BØ�7‰7�r˜3�iÒÐÐØ�6‰6”QŠ;Ðˆ;ä	”˜˜c˜TÓ" CÓ	(€BØ�7‰7”x  S DÓ)¨3Ð/Ò/Ð/Ð/Ø�6‰6”QŠ;Ðˆ;ä˜C ¤AÓ&€DÜ˜S˜D !¤QÓ'€DÜ	�”H˜T 4Ó(¨#Ó	.€BØ�7‰7�rœ8 D¨$Ó/°Ð5Ò5Ð5Ð5ä	��C˜Ó	€BØ�7‰7�r˜3 �nÒ$Ð$Ð$ä	��dÓ	€BØ�7‰7�t˜T�lÒ"Ð"Ð"Ø�6‰6”QŠ;Ðˆ;ä	��Sœ( 3¨¨Ó,¨cÓ	2€BØ�7‰7�s˜C¤¨#°¨sÓ!3°SÐ9Ò9Ð9Ð9ä	��C‹€BØ�Š8€Oˆ8Ø�RŠxÐˆ<ä
Œ:Ô.Ô/Ü
Œ:Ö8Ô9Ü
Œ:Ô0Ô1Ü
Œ9Ô0Ô1Ü
Œ9Ô:Ô;Ü
Œ9Ó?Õ@r=   c                  óF  ‡‡‡‡	‡
— t        t        t        dz  z  t        t        dz  z  z   t        t        z  z
  t
        t        dz  z  t        t        dz  z  z   t        t        z  t        z  z
  t        «      Št        t        t        z  t        z
  t        t        z  t        z   t        «      } t        dt        dz  dt        z  t        z  t        z  z   t        dz  z   t        «      }t        ‰| |g| |  ‰gg«      Št        |  g|  g| gg«      Št        | gg«      Š	t        t        gt        gt         gg«      }t        j                  t!        dt        z  g«      t        «      Š
t#        ‰‰«      }|j$                  ‰‰fk(  sJ ‚|j&                  t        k(  sJ ‚|j(                  |j*                  |j,                  fcxk(  rdk(  sJ ‚ J ‚t#        ‰	‰‰«      }|j$                  ‰	‰‰fk(  sJ ‚|j&                  t        k(  sJ ‚|j(                  |j*                  |j,                  fcxk(  rdk(  sJ ‚ J ‚t#        ‰	t/        ‰ | «      ‰«      }|j$                  ‰	t/        ‰ | «      ‰fk(  sJ ‚|j(                  |j*                  |j,                  fcxk(  rdk(  sJ ‚ J ‚t1        t2        d„ «       t1        t4        ˆˆfd„«       t1        t2        ˆˆfd„«       t1        t2        ˆ	ˆ
fd	„«       t1        t4        ˆˆ	fd
„«       t1        t4        ˆˆ	fd„«       t1        t4        ˆ	fd„«       y )Nr3   r/   r1   r.   )r/   r.   c                  ó   — t        «       S r{   ©r#   r<   r=   r>   r?   z.test_MIMOSeries_construction.<locals>.<lambda>E  s   € œz›|€ r=   c                  ó   •— t        ‰‰ «      S r{   rT  )Útf_1Útfm_1s   €€r>   r?   z.test_MIMOSeries_construction.<locals>.<lambda>H  s   ø€ œj¨°Ó5€ r=   c                  ó    •— t        ‰ ‰‰  «      S r{   rT  ©rW  Útfm_2s   €€r>   r?   z.test_MIMOSeries_construction.<locals>.<lambda>L  s   ø€ œz¨%°¸¸Ó?€ r=   c                  ó   •— t        ‰ ‰«      S r{   rT  )Útfm_3Útfm_5s   €€r>   r?   z.test_MIMOSeries_construction.<locals>.<lambda>O  s   ø€ œz¨%°Ó7€ r=   c                  ó   •— t        d‰ ‰«      S r§   rT  ©rZ  r\  s   €€r>   r?   z.test_MIMOSeries_construction.<locals>.<lambda>R  s   ø€ œj¨¨E°5Ó9€ r=   c                  óJ   •— t        t        dz  t        t        z  z   ‰  ‰«      S r§   )r#   r;   rI   r_  s   €€r>   r?   z.test_MIMOSeries_construction.<locals>.<lambda>S  s   ø€ œj¬¨A©´´!±©°e°V¸UÓC€ r=   c                  ó>   •— t        t        dt        z  g«      ‰ «      S r÷   )r#   r   rI   ©r\  s   €r>   r?   z.test_MIMOSeries_construction.<locals>.<lambda>T  s   ø€ œj¬°´1±°«¸Ó>€ r=   )r   rN   r;   rO   rP   rQ   rI   rR   rW   r&  r²   r"   ÚTF3ÚTF2ÚTF1Úfrom_Matrixr   r#   rM   r0  ÚshapeÚnum_outputsÚ
num_inputsr$   r-   rX   rY   )Útf_2Útf_3Útfm_4Ús8Ús9Ús11rV  rW  rZ  r\  r]  s         @@@@@r>   Útest_MIMOSeries_constructionrp  +  sš  ü€ ÜœBœq !™t™G¤b¬¨A©¡gÑ-´´1±Ñ4´b¼¸A¹±gÄÄ1ÀaÁ4ÁÑ6GÌ"ÌQÉ$ÌqÉ&Ñ6PÔRSÓT€DÜœBœq™D¤1™H¤b¬¡d¬Q¡h´Ó2€DÜ˜Aœq !™t a¬¡f¬R¡i´¡kÑ1´B¸±EÑ9¼1Ó=€Dä" T¨4°Ð$6¸$¸ÀÀÀtÐ8LÐ#MÓN€EÜ" d U G¨t¨e¨W¸°u°gÐ#>Ó?€EÜ" d U G 9Ó-€EÜ"¤S E¬C¨5´C°4°&Ð#9Ó:€EÜ"×.Ñ.¬v°q¼±s°e«}¼aÓ@€Eä	�E˜5Ó	!€BØ�7‰7�u˜e�nÒ$Ð$Ð$Ø�6‰6”QŠ;Ðˆ;Ø�8‰8˜Ÿ™¨¯©Ð6Ô@¸&Ò@Ð@Ñ@Ð@Ð@ä	�E˜5 %Ó	(€BØ�7‰7�u˜e UÐ+Ò+Ð+Ð+Ø�6‰6”QŠ;Ðˆ;Ø�8‰8˜Ÿ™¨¯©Ð6Ô@¸&Ò@Ð@Ñ@Ð@Ð@ä
�UœL¨%¨°%°Ó8¸%Ó
@€CØ�8‰8˜œ|¨U¨F°U°FÓ;¸UÐCÒCÐCÐCØ�9‰9˜Ÿ™¨#¯.©.Ð9ÔC¸VÒCÐCÑCÐCÐCô Œ:Ñ+Ô,ô Œ9Ô5Ô6ô Œ:Ô?Ô@ô Œ:Ô7Ô8ô Œ9Ô9Ô:Ü
Œ9ÔCÔDÜ
Œ9Ó>Õ?r=   c                  óÜ  ‡‡‡‡— t        dt        dz  dt        z  t        z  t        z  z   t        dz  z   t        «      Št        t        dt        «      Št        t
        t        z  t        z
  t
        t        z  t        z   t        «      Št        t        t        z  t        t        z  z   t        z
  t        t        «      Št        t        t        dz  z  t
        t        z  z   t        z
  t        t        z   t        «      } ‰‰z  ‰z  t        ‰‰‰«      cxk(  r4t        t        ‰‰«      ‰«      cxk(  rt        ‰t        ‰‰«      «      k(  sJ ‚ J ‚‰‰‰z   z  t        ‰t        ‰‰«      «      k(  sJ ‚‰‰z  | z   t        t        ‰‰«      | «      k(  sJ ‚‰‰z  | z
  t        t        ‰‰«      |  «      k(  sJ ‚‰‰z  ‰z   | z   t        t        ‰‰«      ‰| «      k(  sJ ‚‰‰z  ‰z
  | z
  t        t        ‰‰«      ‰ |  «      k(  sJ ‚‰‰z  ‰z
  | z   t        t        ‰‰«      ‰ | «      k(  sJ ‚‰‰z  ‰| z  z   t        t        ‰‰«      t        ‰| «      «      k(  sJ ‚‰‰z  ‰| z  z
  t        t        ‰‰«      t        t        ddt        «      t        ‰| «      «      «      k(  sJ ‚‰‰z  ‰‰z
  z  ‰z  t        ‰‰t        ‰‰ «      ‰«      k(  sJ ‚‰ ‰z  t        ‰ ‰«      k(  sJ ‚‰‰z   t        t        ddt        «      t        ‰‰«      «      k(  sJ ‚t        t        ˆˆˆfd„«       t        t        ˆˆˆfd„«       t        t        ˆfd„«       t        ‰‰d¬«      t        ‰‰«      j                  «       cxk(  rBt        t        t        dz  dt        z  t        z  t        z  z   t        dz  z   t        «      k(  sJ ‚ J ‚t        ‰‰t        ‰‰ «      d¬«      t        ‰‰t        ‰‰ «      «      j                  «       cxk(  r±t        t        t
        t        z  t        z   t
         t        z  t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  z   z  t
        t        z  t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   dz  z  t        «      k(  sJ ‚ J ‚t        ‰‰‰ d¬«      t        ‰‰‰ «      j                  «       cxk(  rmt        t        t
         t        z  t        z   z  t
        t        z  t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  t        «      k(  sJ ‚ J ‚t        ‰‰ d	¬«      t        ‰‰ «      j                  «       k(  rJ ‚t        t        ‰‰«      t        ‰‰ «      «      j                  «       t        t        t        dz  dt        z  t        z  t        z  z   t        dz  z   z  dz   t
         t        z  t        t
        t        z  t        z   z  z   t        z   z  t
        t        z  t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  t        «      k(  sJ ‚t        ‰ ‰ ‰ «      j                  «       t        t        t
         t        z  t        z   z  t
        t        z  t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  t        «      k(  sJ ‚t        ‰‰‰«      j                  «        t        t         t
        t        z  t        z
  z  t
        t        z  t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  t        «      k(  sJ ‚t        ‰‰t        ‰‰ «      ‰«      j                  «       t        t        t
        t        z  t        z
  dz  z  t        t        dz  dt        z  t        z  t        z  z   t        dz  z   z  dz
  z  t
        t        z  t        z   dz  t        dz  dt        z  t        z  t        z  z   t        dz  z   z  t        «      k(  sJ ‚t        ‰‰«      j                  t         «      t        t        t        dz  dt        z  t        z  t        z  z   t        dz  z   t        «      k(  sJ ‚t        ‰‰‰ «      j                  t         «      t        t        t
         t        z  t        z   z  t
        t        z  t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  t        «      k(  sJ ‚t        t        ‰‰«      t        ‰‰ «      «      }|j                  sJ ‚|j                   rJ ‚|j"                  sJ ‚t        ‰‰‰«      }|j                  sJ ‚|j                   sJ ‚|j"                  rJ ‚t        ‰‰ t        ‰‰ «      «      }|j                  sJ ‚|j                   sJ ‚|j"                  rJ ‚y )
Nr.   r/   rw   c                  ó   •— ‰ ‰z  ‰z  S r{   r<   ©r[   r\   r^   s   €€€r>   r?   z'test_Series_functions.<locals>.<lambda>k  s   ø€ ˜s 3™w s™{€ r=   c                  ó   •— ‰ ‰‰z
  z  S r{   r<   rs  s   €€€r>   r?   z'test_Series_functions.<locals>.<lambda>l  s   ø€ ˜s C¨#¡I™€ r=   c                  ó$   •— ‰ t        g d¢«      z  S rE   rî   r©   s   €r>   r?   z'test_Series_functions.<locals>.<lambda>m  s   ø€ ˜s¤6ª)Ó#4Ñ4€ r=   Trx   F)r   r;   r&  r²   r´   rP   rI   rN   rO   r   r    r-   rX   r¸   Úrewriter%  r)  r,  )r`   ÚS1ÚS2ÚS3r[   r\   r]   r^   s       @@@@r>   Útest_Series_functionsrz  W  s	  û€ Ü
˜1œa ™d Q¤t¡V¬B¡Y¬q¡[Ñ0´2°q±5Ñ8¼!Ó
<€CÜ
œ1˜a¤Ó
#€CÜ
œ2œa™4¤!™8¤R¬¡T¬A¡X¬qÓ
1€CÜ
œ2œa™4¤!¤R¡%™<¬!Ñ+¬Q´Ó
2€CÜ
œ2œa ™d™7¤R¬¡T™>¬BÑ.´´B±¼Ó
:€Càˆs‰7�3‰;œ&  c¨3Ó/ô )´6¼&ÀÀcÓ:JÈCÓ3Pô )Ü�#”v˜c 3Ó'Ó(ò)ð )ñ )ð )ð )à��c‘	‰?œf S¬(°3¸Ó*<Ó=Ò=Ð=Ð=Øˆs‰7�S‰=œH¤V¨C°Ó%5°sÓ;Ò;Ð;Ð;Øˆs‰7�S‰=œH¤V¨C°Ó%5¸°tÓ<Ò<Ð<Ð<Øˆs‰7�S‰=˜3Ñ¤(¬6°#°sÓ+;¸SÀ#Ó"FÒFÐFÐFØˆs‰7�S‰=˜3Ñ¤(¬6°#°sÓ+;¸c¸TÀCÀ4Ó"HÒHÐHÐHØˆs‰7�S‰=˜3Ñ¤(¬6°#°sÓ+;¸c¸TÀ3Ó"GÒGÐGÐGØˆs‰7�S˜‘WÑ¤¬°°SÓ)9¼6À#ÀsÓ;KÓ LÒLÐLÐLØˆs‰7�S˜‘WÑ¤¬°°SÓ)9¼6ÔBRÐSUÐWXÔZ[ÓB\Ô^dÐehÐjmÓ^nÓ;oÓ pÒpÐpÐpØˆs‰7�C˜#‘IÑ˜sÑ"¤f¨S°#´xÀÀcÀTÓ7JÈCÓ&PÒPÐPÐPØˆ4�‰8”v˜s˜d CÓ(Ò(Ð(Ð(Ø�‰Wˆ:œÔ 0°°Q¼Ó :¼FÀ3ÈÓ<LÓMÒMÐMÐMÜ
Œ:Õ*Ô+Ü
Œ:Õ.Ô/Ü
Œ:Ó4Ô5ô �#�s TÔ*¬f°S¸#Ó.>×.CÑ.CÓ.Eô ;ÜœœA˜q™D 1¤Q¡3¤r¡6¬$¡;Ñ.´°Q±Ñ6¼Ó:ò;ð ;ñ ;ð ;ð ;ä�#�sœH S¨3¨$Ó/¸$Ô?Ä6È#ÈsÔT\Ð]`ÐcfÐbfÓTgÓCh×CmÑCmÓCoô AÜœœBœq™D¤1™H¬¨¬A©´©	´A°q±D¸1¼Q¹3¼r¹6Ä$¹;Ñ4FÌÈQÉÑ4NÑ'OÑOÑPÔSUÔVWÑSWÔZ[ÑS[Ô^_ÐabÑ^bÐefÔghÑehÔikÑekÔlpÑepÑ^pÔsuÐwxÑsxÑ^xÐ{|Ñ]|ÑR|Ô~ó  	AòAð Añ Að Að Aä�#�s˜S˜D¨4Ô0´F¸3ÀÀcÀTÓ4J×4OÑ4OÓ4Qô TÜœœR˜C¤™E¤A™I™¬¬A©´©´A°q±D¸1¼Q¹3¼r¹6Ä$¹;Ñ4FÌÈQÉÑ4NÑ(OÔQRÓSòTð Tñ Tð Tð Tä�c˜C˜4¨%Ô0´F¸3ÀÀÓ4E×4JÑ4JÓ4LÒLÐLÐLä”(˜3 Ó$¤h¨s°S°DÓ&9Ó:×?Ñ?ÓAÜœ!œQ ™T A¤a¡C¬¡F¬4¡KÑ/´"°a±%Ñ7Ñ8¸1Ñ<Ä¸sÄ1¹uÄqÌ"ÌQÉ$ÔQRÉ(Á|Ñ?SÔVWÑ?WÑXÔ[]Ô^_Ñ[_ÔbcÑ[cÔfgÐijÑfjÐmnÔopÑmpÔqsÑmsÔtxÑmxÑfxÔ{}ð  @Añ  |Añ  gAñ  [Bô  DEó  	FòFð Fð Fä�3�$˜˜˜s˜dÓ#×(Ñ(Ó*ÜœœR˜C¤™E¤A™I™¬¬A©´©´A°q±D¸1¼Q¹3¼r¹6Ä$¹;Ñ4FÌÈQÉÑ4NÑ(OÔQRÓSòTð Tð Tä�3˜˜SÓ!×&Ñ&Ó(Ð(Üœ!˜œR¤™T¤A™X™¬¬A©´©´A°q±D¸1¼Q¹3¼r¹6Ä$¹;Ñ4FÌÈQÉÑ4NÑ(OÔQRÓSòTð Tð Tä�#�sœH S¨3¨$Ó/°Ó5×:Ñ:Ó<ÜœœBœq™D¤1™H q™=™¬!¬Q°©T°A´a±C¼±F¼4±KÑ-?Ä"ÀaÁ%Ñ-GÑ*HÈ1Ñ*LÑMÔPRÔSTÑPTÔWXÑPXÐ[\É}Ô^_ÐabÑ^bÐefÔghÑehÔikÑekÔlpÑepÑ^pÔsuÐwxÑsxÑ^xÑOyÔ{|Ó}ò~ð ~ð ~ô �#�sÓ×#Ñ#Ô$4Ó5Ô9IÌ!ÌQÐPQÉTÐTUÔVWÑTWÔXZÑTZÔ[_ÑT_ÑM_ÔbdÐfgÑbgÑMgÔijÓ9kÒkÐkÐkÜ�#�s˜S˜DÓ!×)Ñ)Ô*:Ó;ÜœœR˜C¤™E¤A™I™¬¬A©´©´A°q±D¸1¼Q¹3¼r¹6Ä$¹;Ñ4FÌÈQÉÑ4NÑ(OÔQRÓSòTð Tð Tô 
”˜˜cÓ"¤H¨S°3°$Ó$7Ó	8€BØ�<Š<Ðˆ<Ø×$Ò$Ð$Ð$Ø�>Š>Ðˆ>ä	��S˜#Ó	€BØ�<Š<Ðˆ<Ø× Ò Ð Ð Ø�~Š~ÐÐä	��c�Tœ8 C¨#¨Ó.Ó	/€BØ�<Š<Ðˆ<Ø× Ò Ð Ð Ø�~Š~ÐÐˆ~r=   c                  óF  ‡‡‡‡	‡
— t        t        t        t        gt         t         t        gg«      Št        t         gt         gt         gg«      Št        t         gg«      } t        t         t         gt         t        gg«      Št        t        t         gt         t         gg«      Š	t        t         gt        gg«      Š
t        t        gt         gg«      }‰‰z  ‰
z   t	        t        ‰‰«      ‰
«      k(  sJ ‚‰‰z  |z   ‰
z   t	        t        ‰‰«      |‰
«      k(  sJ ‚‰‰z  ‰
z
  |z
  t	        t        ‰‰«      ‰
 | «      k(  sJ ‚‰‰	z  ‰‰	z
  z   t	        t        ‰	‰«      ‰‰	 «      k(  sJ ‚‰‰
 z  ‰ ‰
z  z   t	        t        ‰
 ‰«      t        ‰
‰ «      «      k(  sJ ‚t        t        ˆˆfd„«       t        t        ˆˆfd„«       t        t        ˆˆ
fd„«       t        t        ˆˆ
fd„«       t        t        ˆˆfd„«       t        t        ˆˆˆfd„«       t        t        ˆˆˆˆ	fd„«       t        t        ˆˆˆˆ	fd„«       ‰‰z  |  z  t        |  ‰‰«      k(  sJ ‚‰‰ z  | z  t        | ‰ ‰«      k(  sJ ‚t        t        ˆˆ	fd	„«       t        t        ˆˆ	fd
„«       t        t        ˆˆ	fd„«       t        t        ˆˆ	fd„«       t        t        ˆˆ	fd„«       t        ‰‰d¬«      t        ‰‰«      j                  «       cxk(  �rut        t        t        dz   t        t        z  t        z   dz  z  t        dz  dt        z  t        z  t         z  z   t        dz  z   dz  z  t         t        z  t        z   t        t        z  t        z
  z  t        dz  dt        z  t        z  t         z  z   t        dz  z   dz  z  z   t        t        z  t        z   dz  z
  t        t        z  t        z   dz  t        dz  dt        z  t        z  t         z  z   t        dz  z   dz  z  t        «      ft        t        dz  t        t        z  t        z   dz  z  t        dz  dt        z  t        z  t         z  z   t        dz  z   dz  z  t         t        z  t        z   t        t        z  t        z   z  t        dz  dt        z  t        z  t         z  z   t        dz  z   z  z   t        t        z  t        z
  t        t        z  t        z   z  t        dz  dt        z  t        z  t         z  z   t        dz  z   z  z   t        t        z  t        z   dz  t        dz  dt        z  t        z  t         z  z   t        dz  z   dz  z  t        «      ff«      k(  sJ ‚ J ‚t#        ddt        z   z  dt        z   dt        dz  z   dt        z  z   dz  z  gg«      }t#        dt        z   gdt        dz  z   dt        z  z   dz  dt        z   z  gg«      }t        j$                  |t        «      t        j$                  |t        «      }}t        ||«      j                  «       t        t        dt        dz   dz  z  t        dz  dt        z  z   dz   dz  z  t        dz   dz  t        dz  dt        z  z   dz   dz  z  t        «      ff«      k(  sJ ‚t        ||«      j                  «       j'                  «       t        t        ddt        «      ff«      k(  sJ ‚t        |  ‰ ‰d¬«      t        |  ‰ ‰«      j                  «       cxk(  �rbt        t        t        dz  t        t        z  t        z   dz  z  t        dz  dt        z  t        z  t         z  z   t        dz  z   dz  z  t        t        z  t        z
  dz  t        dz  dt        z  t        z  t         z  z   t        dz  z   dz  z  z   t        t        z  t        z   dz  z   t        t        z  t        z   dz  t        dz  dt        z  t        z  t         z  z   t        dz  z   dz  z  t        «      ft        t        dz   t        t        z  t        z   dz  z  t        dz  dt        z  t        z  t         z  z   t        dz  z   dz  z  t         t        z  t        z   t        t        z  t        z   z  t        dz  dt        z  t        z  t         z  z   t        dz  z   z  z   t        t        z  t        z
  t        t        z  t        z   z  t        dz  dt        z  t        z  t         z  z   t        dz  z   z  z   t        t        z  t        z   dz  t        dz  dt        z  t        z  t         z  z   t        dz  z   dz  z  t        «      ff«      k(  sJ ‚ J ‚t        t	        ‰‰	«      ‰	d¬«      t        t	        ‰‰	«      ‰	«      j                  «       cxk(  �rVt        t        t         t         t        z  t        z
  t         t        z  t        z   t        dz  dt        z  t        z  t         z  z   t        dz  z   z  z   z  t        t        z  t        z   t        dz  dt        z  t        z  t         z  z   t        dz  z   z  t        «      t        t        t         t        z  t        t        t        z  t        z   z  z
  t        z   z  t        t        z  t        z   t        «      ft        t         t         t        z  t        z
  t         t        z  t        z   t        dz  dt        z  t        z  t         z  z   t        dz  z   z  z   z  t        t        z  t        z   t        dz  dt        z  t        z  t         z  z   t        dz  z   z  t        «      t        t         t        z  t        z   t         t        z  t        t        t        z  t        z   z  z
  t        z   z  t        t        z  t        z   dz  t        «      ff«      cxk(  r-t        t	        ‰‰	«      ‰	«      j)                  t         «      k(  sJ ‚ J ‚y )Nc                  ó   •— ‰ ‰z  t         z   S r{   ©re  ©Útfm1Útfm2s   €€r>   r?   z+test_MIMOSeries_functions.<locals>.<lambda>¤  s   ø€ ˜t D™y¬3™€ r=   c                  ó   •— ‰ ‰z  t         z   S r{   )rN   r~  s   €€r>   r?   z+test_MIMOSeries_functions.<locals>.<lambda>¥  s   ø€ ˜d 4™i¬"™n€ r=   c                  ó"   •— ‰ ‰z  t         dz
  z
  S r÷   r    ©Útfm4Útfm6s   €€r>   r?   z+test_MIMOSeries_functions.<locals>.<lambda>¦  s   ø€ ˜d 4™i¬1¨q©5Ñ1€ r=   c                  ó   •— ‰ ‰ z  dz
  S rú   r<   rƒ  s   €€r>   r?   z+test_MIMOSeries_functions.<locals>.<lambda>§  s   ø€ ˜d D 5™j¨1™n€ r=   c                  ó(   •— dt         dz  z   ‰ ‰z  z   S )Nrw   r2   rý   r~  s   €€r>   r?   z+test_MIMOSeries_functions.<locals>.<lambda>¨  s   ø€ ˜r¤A q¡D™y¨D°©IÑ5€ r=   c                  ó   •— ‰  ‰z  ‰z   S r{   r<   ©r  r€  r„  s   €€€r>   r?   z+test_MIMOSeries_functions.<locals>.<lambda>¬  s   ø€ ˜t˜e D™j¨4Ñ/€ r=   c                  ó   •— ‰ ‰z  ‰z
  ‰z   S r{   r<   ©r  r€  r„  Útfm5s   €€€€r>   r?   z+test_MIMOSeries_functions.<locals>.<lambda>­  s   ø€ ˜d 4™i¨$Ñ.°Ñ5€ r=   c                  ó   •— ‰ ‰z  ‰‰z  z
  S r{   r<   r‹  s   €€€€r>   r?   z+test_MIMOSeries_functions.<locals>.<lambda>®  s   ø€ ˜d 4™i¨$¨t©)Ñ3€ r=   c                  ó   •— ‰ ‰z  t         z  S r{   r}  ©r„  rŒ  s   €€r>   r?   z+test_MIMOSeries_functions.<locals>.<lambda>µ  s   ø€ ˜t D™y¬™}€ r=   c                  ó   •— ‰ ‰z  t         z  S r{   ©rO   r�  s   €€r>   r?   z+test_MIMOSeries_functions.<locals>.<lambda>¶  s   ø€ ˜d 4™i¬™l€ r=   c                  ó$   •— ‰ ‰ z  t         dz
  z  S r§   r    r�  s   €€r>   r?   z+test_MIMOSeries_functions.<locals>.<lambda>·  s   ø€ ˜d D 5™j¬!¨a©%Ñ0€ r=   c                  ó   •— ‰‰ z  dz  S r  r<   r�  s   €€r>   r?   z+test_MIMOSeries_functions.<locals>.<lambda>¸  s   ø€ ˜d 4™i¨™k€ r=   c                  ó*   •— t         dz   dz   ‰z  ‰ z  S )Nr3   r.   rý   r�  s   €€r>   r?   z+test_MIMOSeries_functions.<locals>.<lambda>¹  s   ø€ ¤ 1¡˜u q™y¨$Ñ.¨tÑ3€ r=   Trx   r/   r.   r3   )r"   re  rd  rc  r$   r#   r-   rX   rY   r¸   r   r´   rP   r;   rI   r²   r&  r   rf  r   rv  )Útfm3Útfm7Úmat_1Úmat_2Útm_1Útm_2r  r€  r„  rŒ  r…  s         @@@@@r>   Útest_MIMOSeries_functionsr›  •  sí  ü€ Ü!¤C¬¬c ?´c°T¼C¸4ÄÐ4EÐ"FÓG€DÜ!¤S D 6¬S¨D¨6´S°D°6Ð":Ó;€DÜ!¤S D 6 (Ó+€DÜ!¤S D¬3¨$ <´3°$¼°Ð"=Ó>€DÜ!¤C¬#¨ ;´#°¼°t°Ð"=Ó>€DÜ!¤S D 6¬C¨5 /Ó2€DÜ!¤C 5¬C¨4¨& /Ó2€Dà�‰9�tÑœ|¬J°t¸TÓ,BÀDÓIÒIÐIÐIØ�‰9�tÑ˜dÑ"¤l´:¸dÀDÓ3IÈ4ÐQUÓ&VÒVÐVÐVØ�‰9�tÑ˜dÑ"¤l´:¸dÀDÓ3IÈDÈ5ÐSWÐRWÓ&XÒXÐXÐXØ�‰9˜˜t™Ñ$¬´ZÀÀdÓ5KÈTÐTXÐSXÓ(YÒYÐYÐYØ��‰:˜$˜˜t™Ñ$¬´ZÀÀÀtÓ5LÌjÐY]Ð`dÐ_dÓNeÓ(fÒfÐfÐfä
Œ:Ô.Ô/Ü
Œ9Ô,Ô-Ü
Œ9Ô1Ô2Ü
Œ9Ô,Ô-Ü
Œ9Ô5Ô6ô Œ9Õ/Ô0Ü
Œ9Ö5Ô6Ü
Œ9Ö3Ô4à�‰9�d�U‰?œj¨$¨°°dÓ;Ò;Ð;Ð;Ø�$�‰J˜Ñ¤
¨4°$°¸Ó =Ò=Ð=Ð=ô Œ:Ô,Ô-Ü
Œ9Ô*Ô+Ü
Œ9Ô0Ô1Ü
Œ9Ô)Ô*Ü
Œ9Ô3Ô4ô �t˜T¨DÔ1´ZÀÀdÓ5K×5PÑ5PÓ5Rõ >Ü!Ô$4´a¸±d°U¼B¼q¹DÄ1¹HÀq¹=Ñ5HÌ!ÈQÉ$ÐQRÔSTÑQTÔUWÑQWÔX\ÑQ\ÑJ\Ô_aÐcdÑ_dÑJdÐghÑIhÑ5hÔmoÐloÔpqÑlqÔtuÑluÔxzÔ{|Ñx|ô  @Añ  yAñ  lBô  DEð  GHñ  DHð  KLô  MNñ  KNô  OQñ  KQô  RVñ  KVñ  DVô  Y[ð  ]^ñ  Y^ñ  D^ð  abñ  Cbñ  lbñ  6bô  fhô  ijñ  fjô  mnñ  fnð  qrñ  erñ  6rÜ	ŒA‰”‰�A‰”q˜!‘t˜a¤™c¤"™f¤T™kÑ)¬B°©EÑ1°AÑ5Ñ5´qó%:ð $<ä	œ!˜Q™$¤¤1¡¤q¡¨1™}Ñ,¬a°©d°Q´q±S¼±V¼D±[Ñ.@Ä2ÀqÁ5Ñ.HÈ1Ñ-LÑLÔQSÐPSÔTUÑPUÔXYÑPYÔ\^Ô_`Ñ\`ÔcdÑ\dÑOeÔghÐjkÑgkÐnoÔpqÑnqÔrtÑntÔuyÑnyÑgyÔ|~ð  ABñ  }Bñ  hBñ  PCñ  Cô  GIô  JKñ  GKô  NOñ  GOô  RTô  UVñ  RVô  YZñ  RZñ  F[ô  ]^ð  `añ  ]að  deô  fgñ  dgô  hjñ  djô  koñ  doñ  ]oô  rtð  vwñ  rwñ  ]wñ  Fxñ  xÜ	ŒA‰”‰�A‰”q˜!‘t˜a¤™c¤"™f¤T™kÑ)¬B°©EÑ1°AÑ5Ñ5´qó
:ð 	<ð#=ó >ò>ð ?ñ >ð ?ð >ô �Q˜œ!™‘W˜q¤™s Q¤q¨!¡t¡V¨A¬a©C¡Z°!¡OÑ3Ð4Ð5Ó6€EÜ�aœ‘c�G˜q¤ A¡™v a¬¡c™z¨A™o¨q´©sÑ3Ð4Ð5Ó6€EÜ'×3Ñ3°E¼1Ó=Ô?U×?aÑ?aÐbgÔijÓ?kˆ$€DÜ�t˜TÓ"×'Ñ'Ó)Ü!Ô$4°Q¼¸A¹À±z±\Ä1ÀaÁ4È!ÌAÉ#Á:ÐPQÁ>ÐTUÑBUÑ5UÔXYÐ\]ÑX]Ð`aÑWaÔcdÐfgÑcgÐjkÔlmÑjmÑcmÐpqÑcqÐtuÑbuÑWuÔwxÓ$yÐ#{Ð"}Ó~òð @ð ä�d˜DÓ!×&Ñ&Ó(×1Ñ1Ó3Ô7MÔP`ÐabÐdeÔghÓPiÐOkÐNmÓ7nÒnÐnÐnô ˜�u˜t˜e T°DÔ9Ü�t�e˜d˜U DÓ)×.Ñ.Ó0õ>ä!Ô$4´Q¸±T¼2¼a¹4Ä!¹8Àa¹-Ñ5GÌÈAÉÐPQÔRSÑPSÔTVÑPVÔW[ÑP[ÑI[Ô^`ÐbcÑ^cÑIcÐfgÑHgÑ5gÔkmÔnoÑkoÔrsÑksÐvwÑjwÔyzÐ|}Ñy}ð  ABô  CDñ  ADô  EGñ  AGô  HLñ  ALñ  zLô  OQð  STñ  OTñ  zTð  WXñ  yXñ  kXñ  6Xô  \^ô  _`ñ  \`ô  cdñ  \dð  ghñ  [hñ  6hÜ	ŒA‰”‰�A‰”q˜!‘t˜a¤™c¤"™f¤T™kÑ)¬B°©EÑ1°AÑ5Ñ5´qó%:ð $<ä	œ1˜a™4˜%¤¤A¡¬¡¨A¡Ñ-¬q°!©t°a¼±c¼"±f¼T±kÑ/AÄBÈÁEÑ/IÈAÑ.MÑMÔRTÐQTÔUVÑQVÔYZÑQZÔ]_Ô`aÑ]aÔdeÑ]eÑPfÔhiÐklÑhlÐopÔqrÑorÔsuÑouÔvzÑozÑhzÔ}ð  BCñ  ~Cñ  iCñ  QDñ  Dô  HJô  KLñ  HLô  OPñ  HPô  SUô  VWñ  SWô  Z[ñ  S[ñ  G\ô  ^_ð  abñ  ^bð  efô  ghñ  ehô  ikñ  ekô  lpñ  epñ  ^pô  suð  wxñ  sxñ  ^xñ  Gyñ  yÜ	ŒA‰”‰�A‰”q˜!‘t˜a¤™c¤"™f¤T™kÑ)¬B°©EÑ1°AÑ5Ñ5´qó
:ð 	<ð#=ó >ò>ð ?ñ >ð ?ð >ô ”| D¨$Ó/°ÀÔEÜ”l 4¨Ó.°Ó5×:Ñ:Ó<õhä!Ô$4´a°R¼"¸¼Q¹Ä¹ÄrÀcÌ!ÁeÌaÁiÔRSÐUVÑRVÐYZÔ[\ÑY\Ô]_ÑY_Ô`dÑYdÑRdÔgiÐklÑglÑRlÑEmÑ9mÑ5nÔqsÔtuÑquÔxyÑqyÔ|}ð  @Añ  }Að  DEô  FGñ  DGô  HJñ  DJô  KOñ  DOñ  }Oô  RTð  VWñ  RWñ  }Wñ  qXô  Z[ó  %\ô  ^nô  opô  suð  ruô  vwñ  rwÜŒr”!‰t”a‰x‰LñrÜñrñ oÜ!¤!™t¤a™x¬ó^,ð $-Ü/?ÄÀÄRÀCÌÁEÌAÁIÔRTÐQTÔUVÑQVÔYZÑQZÔ]^Ð`aÑ]aÐdeÔfgÑdgÔhjÑdjÔkoÑdoÑ]oÔrtÐvwÑrwÑ]wÑPxÑDxÑ@yÔ|~ô  @Añ  }Aô  DEñ  }Eô  HIð  KLñ  HLð  OPô  QRñ  ORô  SUñ  OUô  VZñ  OZñ  HZô  ]_ð  abñ  ]bñ  Hbñ  |cô  efó  0gÜœr˜c¤!™e¤a™i¬2¨#¬a©%´!´R¼±T¼A±X±,Ñ*>ÄÑ*BÑCÄbÌÁdÌQÁhÐQRÁ]ÔTUÓVð/Xð#Yó Zôhô ^hÔhtÐuyÐ{ó  iAð  CGó  ^H÷  ^Pñ  ^Pô  Qgó  ^hò	hð iñ hð iñ hr=   c                  óì  ‡‡‡‡— t        t        t        dz  z  t        t        dz  z  z   t        t        z  z
  t
        t        dz  z  t        t        dz  z  z   t        t        z  t        z  z
  t        «      Št        t        t        z  t        z
  t        t        z  t        z   t        «      Št        t        t        z  t        t        z  z   t        z
  t        t        «      Št        dt        dz  dt        z  t        z  t        z  z   t        dz  z   t        «      Š t        d«      t        «      }  t        d«      t        «      }t        ‰‰«      }|j                  ‰‰fk(  sJ ‚|j                  t        k(  sJ ‚t        t        ‰‰ «      ‰«      }|j                  t        ‰‰ «      ‰fk(  sJ ‚|j                  t        k(  sJ ‚t        | dt        «      }t        | dt        «      }t        ‰t        || «      ‰«      }|j                  ‰t        || «      ‰fk(  sJ ‚t        ‰‰‰«      }|j                  ‰‰‰fk(  sJ ‚t        ||«      }|j                  ||fk(  sJ ‚|j                  t        k(  sJ ‚t        ‰‰«      }	||	k(  sJ ‚||k(  rJ ‚t        ‰‰t        ‰‰ «      «      }
|
j                  ‰‰t        ‰‰ «      fk(  sJ ‚t        ‰‰t        ‰‰ «      ‰«      }|j                  ‰‰t        ‰‰ «      ‰fk(  sJ ‚t!        t"        ˆˆfd„«       t!        t"        ˆˆˆˆfd„«       t!        t"        ˆˆfd	„«       t!        t$        ˆˆfd
„«       t!        t$        ˆˆfd„«       t!        t$        ˆfd„«       y )Nr3   r/   r1   r.   r9  r:  c                  ó   •— t        ‰ ‰«      S r{   ©r    r=  s   €€r>   r?   z,test_Parallel_construction.<locals>.<lambda>þ  s   ø€ œx¨¨CÓ0€ r=   c                  ó    •— t        ‰ ‰‰‰«      S r{   rž  r?  s   €€€€r>   r?   z,test_Parallel_construction.<locals>.<lambda>ÿ  s   ø€ œx¨¨C°°cÓ:€ r=   c                  ó   •— t        ‰  ‰«      S r{   rž  rô   s   €€r>   r?   z,test_Parallel_construction.<locals>.<lambda>   s   ø€ œx¨¨¨cÓ2€ r=   c                  ó   •— t        d‰ ‰«      S r§   rž  rC  s   €€r>   r?   z,test_Parallel_construction.<locals>.<lambda>  s   ø€ œh q¨"¨cÓ2€ r=   c                  óH   •— t        t        dz  t        t        z  z   ‰‰ «      S r§   )r    r;   rI   rA  s   €€r>   r?   z,test_Parallel_construction.<locals>.<lambda>  s   ø€ œh¤q¨!¡t¬a´©c¡z°3¸Ó<€ r=   c                  ó2   •— t        ‰ t        g d¢«      «      S rF  )r    r   r©   s   €r>   r?   z,test_Parallel_construction.<locals>.<lambda>  s   ø€ œh s¬F²<Ó,@ÓA€ r=   )r   rN   r;   rO   rP   rQ   rI   rR   rW   r&  r²   r   r    rM   r0  r   r-   rX   rY   )rG  rH  Úp0rÍ   rK  r_   rÎ   rÖ   r×   Úp5Úp6Úp7rZ   r\   r]   r^   s               @@@@r>   Útest_Parallel_constructionr¨  Ø  sÜ  û€ Ü	œ"œQ ™T™'¤B¤q¨!¡t¡GÑ+¬b´©dÑ2´B´q¸!±t±G¼bÄÀAÁ¹gÑ4EÌÌ1ÉÌQÉÑ4NÔPQÓ	R€BÜ
œ2œa™4¤!™8¤R¬¡T¬A¡X¬qÓ
1€CÜ
œ2œa™4¤!¤R¡%™<¬!Ñ+¬Q´Ó
2€CÜ
˜1œa ™d Q¤t¡V¬B¡Y¬q¡[Ñ0´2°q±5Ñ8¼!Ó
<€CØ
Œ(�5‹/œ!Ó
€CØ
Œ(�3‹-œÓ
€Cä	�"�cÓ	€BØ�7‰7�r˜3�iÒÐÐØ�6‰6”QŠ;Ðˆ;ä	”&˜˜c˜TÓ" CÓ	(€BØ�7‰7”v˜b 3 $Ó'¨Ð-Ò-Ð-Ð-Ø�6‰6”QŠ;Ðˆ;ä˜C ¤AÓ&€DÜ˜S˜D !¤QÓ'€DÜ	�"”f˜T D 5Ó)¨3Ó	/€BØ�7‰7�rœ6 $¨¨Ó.°Ð4Ò4Ð4Ð4ä	�"�c˜3Ó	€BØ�7‰7�r˜3 �nÒ$Ð$Ð$ä	�$˜Ó	€BØ�7‰7�t˜T�lÒ"Ð"Ð"Ø�6‰6”QŠ;Ðˆ;ä	�"�cÓ	€BØ�Š8€Oˆ8Ø�RŠxÐˆ<ä	�#�sœF 3¨¨Ó-Ó	.€BØ�7‰7�s˜C¤¨¨c¨TÓ!2Ð3Ò3Ð3Ð3ä	�#�sœF 3¨¨Ó,¨cÓ	2€BØ�7‰7�s˜C¤¨¨b¨SÓ!1°3Ð7Ò7Ð7Ð7ä
Œ:Ô0Ô1Ü
Œ:Ö:Ô;Ü
Œ:Ô2Ô3Ü
Œ9Ô2Ô3Ü
Œ9Ô<Ô=Ü
Œ9ÓAÕBr=   c                  ój  ‡‡	‡
‡‡— t        t        gt        gt        gg«      Št        t         gt        gt        gg«      Š	t        t        gg«      Š
t        t        gt        gt        gg«      Št        t        t        gt        t        gg«      } t        t        t        gt        t        gg«      }t        j                  t        dt        z  gg«      t        «      Št        ‰‰	«      }|j                  ‰‰	fk(  sJ ‚|j                  t        k(  sJ ‚|j                  |j                  |j                  fcxk(  rdk(  sJ ‚ J ‚t        t        ‰
‰«      ‰	«      }|j                  t        ‰
‰«      ‰	fk(  sJ ‚|j                  t        k(  sJ ‚|j                  |j                  |j                  fcxk(  rdk(  sJ ‚ J ‚t        ‰t        ‰
‰«      ‰	«      }|j                  ‰t        ‰
‰«      ‰	fk(  sJ ‚|j                  t        k(  sJ ‚|j                  |j                  |j                  fcxk(  rdk(  sJ ‚ J ‚t        ‰	‰‰«      }|j                  ‰	‰‰fk(  sJ ‚|j                  |j                  |j                  fcxk(  rdk(  sJ ‚ J ‚t        || «      }|j                  || fk(  sJ ‚|j                  |j                  |j                  fcxk(  rdk(  sJ ‚ J ‚t        ‰	‰t        ‰
 ‰«      ‰ «      }|j                  ‰	‰t        ‰
 ‰«      ‰ fk(  sJ ‚|j                  |j                  |j                  fcxk(  rdk(  sJ ‚ J ‚t        t         d„ «       t        t         ˆˆ	fd„«       t        t         ˆˆ
ˆfd„«       t        t"        ˆ
ˆfd„«       t        t         ˆˆfd„«       t        t         ˆ	ˆfd	„«       y )
Nr.   )r3   r.   ©r/   r/   c                  ó   — t        d«      S )Nr<   ©r$   r<   r=   r>   r?   z0test_MIMOParallel_construction.<locals>.<lambda>+  s   € œl¨2Ó.€ r=   c                  ó&   •— t        ‰ ‰t        «      S r{   )r$   re  r~  s   €€r>   r?   z0test_MIMOParallel_construction.<locals>.<lambda>.  s   ø€ œl¨4°´sÓ;€ r=   c                  ó   •— t        ‰ ‰‰«      S r{   r¬  )r  r•  r„  s   €€€r>   r?   z0test_MIMOParallel_construction.<locals>.<lambda>1  s   ø€ œl¨4°°tÓ<€ r=   c                  ó   •— t        ‰ ‰«      S r{   r¬  )r•  r–  s   €€r>   r?   z0test_MIMOParallel_construction.<locals>.<lambda>4  s   ø€ œ|¨D°$Ó7€ r=   c                  ó   •— t        d‰ ‰«      S r§   r¬  )r  r„  s   €€r>   r?   z0test_MIMOParallel_construction.<locals>.<lambda>7  s   ø€ œl¨1¨d°DÓ9€ r=   c                  óJ   •— t        t        dz  t        t        z  z   ‰ ‰ «      S r§   )r$   r;   rI   )r€  r„  s   €€r>   r?   z0test_MIMOParallel_construction.<locals>.<lambda>8  s   ø€ œl¬1¨a©4´!´A±#©:¸°u¸dÓC€ r=   )r"   re  rd  rc  rf  r   rI   r$   rM   r0  r;   rg  rh  ri  r#   r-   rY   rX   )rŒ  r…  Úp8Úp9Úp10Úp11Úp12Úp13r  r€  r•  r„  r–  s           @@@@@r>   Útest_MIMOParallel_constructionr¸    s.  ü€ Ü!¤C 5¬3¨%´#°Ð"7Ó8€DÜ!¤S D 6¬C¨5´3°%Ð"8Ó9€DÜ!¤C 5 'Ó*€DÜ!¤C 5¬3¨%´#°Ð"7Ó8€DÜ!¤C¬ :´´S¨zÐ":Ó;€DÜ!¤C¬ :´´S¨zÐ":Ó;€DÜ!×-Ñ-¬f°q¼±s°e°W«o¼qÓA€Dä	�d˜DÓ	!€BØ�7‰7�t˜T�lÒ"Ð"Ð"Ø�6‰6”QŠ;Ðˆ;Ø�8‰8˜Ÿ™¨¯©Ð6Ô@¸&Ò@Ð@Ñ@Ð@Ð@ä	”j  tÓ,¨dÓ	3€BØ�7‰7”z $¨Ó-¨tÐ4Ò4Ð4Ð4Ø�6‰6”QŠ;Ðˆ;Ø�8‰8˜Ÿ™¨¯©Ð6Ô@¸&Ò@Ð@Ñ@Ð@Ð@ä
�tœZ¨¨dÓ3°TÓ
:€CØ�8‰8˜œj¨¨tÓ4°dÐ;Ò;Ð;Ð;Ø�7‰7”aŠ<Ðˆ<Ø�9‰9˜Ÿ™¨#¯.©.Ð9ÔC¸VÒCÐCÑCÐCÐCä
�t˜T 4Ó
(€CØ�8‰8˜˜d DÐ)Ò)Ð)Ð)Ø�9‰9˜Ÿ™¨#¯.©.Ð9ÔC¸VÒCÐCÑCÐCÐCä
�t˜TÓ
"€CØ�8‰8˜˜d�|Ò#Ð#Ð#Ø�9‰9˜Ÿ™¨#¯.©.Ð9ÔC¸VÒCÐCÑCÐCÐCä
�t˜T¤:¨t¨e°TÓ#:¸T¸EÓ
B€CØ�8‰8˜˜d¤J°¨u°dÓ$;¸d¸UÐCÒCÐCÐCØ�9‰9˜Ÿ™¨#¯.©.Ð9ÔC¸VÒCÐCÑCÐCÐCô Œ9Ñ.Ô/ô Œ9Ô;Ô<ô Œ9Õ<Ô=ô Œ:Ô7Ô8ô Œ9Ô9Ô:Ü
Œ9ÔCÕDr=   c            	      óP  ‡‡‡‡— t        dt        dz  dt        z  t        z  t        z  z   t        dz  z   t        «      Št        t        dt        «      Št        t
        t        z  t        z
  t
        t        z  t        z   t        «      Št        t        t        z  t        t        z  z   t        z
  t        t        «      Št        t        t        dz  z  t
        t        z  z   t        z
  t        t        z   t        «      } ‰‰z   ‰z   t        ‰‰‰«      k(  sJ ‚‰‰z   ‰z   | z   t        ‰‰‰| «      k(  sJ ‚‰‰z   ‰z
  | z
  t        ‰‰‰ |  «      k(  sJ ‚‰‰‰z  z   t        ‰t        ‰‰«      «      k(  sJ ‚‰‰‰z  z
  t        ‰t        ‰‰«       «      k(  sJ ‚‰ ‰z
  t        ‰ ‰ «      k(  sJ ‚‰‰z    t        t        ddt        «      t        ‰‰«      «      k(  sJ ‚‰‰z   ‰z  t        t        ‰‰«      ‰«      k(  sJ ‚‰‰z   ‰| z  z  t        t        ‰‰«      ‰| «      k(  sJ ‚‰‰z    |  z  t        t        ddt        «      t        ‰‰«      |  «      k(  sJ ‚‰‰z   ‰‰z  z   | z   t        ‰‰t        ‰‰«      | «      k(  sJ ‚‰‰z   ‰‰z  z   ‰z
  t        ‰‰t        ‰‰«      ‰ «      k(  sJ ‚‰‰z   | z   ‰| z   z  t        t        ‰‰| «      t        ‰| «      «      k(  sJ ‚t        t        ˆˆˆfd„«       t        t        ˆˆˆfd„«       t        t        ˆfd„«       t        ‰‰d¬«      t        ‰‰«      j                  «       cxk(  rqt        t        t        dz  dt        z  t        z  t        z  z   t        dz  z   z  dz   t        dz  dt        z  t        z  t        z  z   t        dz  z   t        «      k(  sJ ‚ J ‚t        ‰‰t        ‰ ‰«      d¬«      t        ‰‰t        ‰ ‰«      «      j                  «       cxk(  �r!t        t        t
        t        z  t        z   z  t        dz  dt        z  t        z  t        z  z   t        dz  z   dz  z  t
         t        z  t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  z   t
        t        z  t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  z   t
        t        z  t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   dz  z  t        «      k(  sJ ‚ J ‚t        ‰‰‰ d¬«      t        ‰‰‰ «      j                  «       cxk(  rït        t
        t        z  t        t
        t        z  t        z   z  t        dz  dt        z  t        z  t        z  z   t        dz  z   z  z   t        z   t
         t        z  t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  z   t
        t        z  t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  t        «      k(  sJ ‚ J ‚t        ‰‰ d	¬«      t        ‰‰ «      j                  «       k(  rJ ‚t        t        ‰‰«      t        ‰‰«      «      j                  «       t        t        t
        t        z  t        z
  z  t        dz  dt        z  t        z  t        z  z   t        dz  z   z  t        t
        t        z  t        z   z  z   t
        t        z  t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  t        «      k(  sJ ‚t        ‰ ‰ ‰ «      j                  «       t        t
         t        z  t        t
        t        z  t        z   z  t        dz  dt        z  t        z  t        z  z   t        dz  z   z  z
  t        z
  t
         t        z  t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  z   t
        t        z  t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  t        «      k(  sJ ‚t        ‰‰‰«      j                  «        t        t
         t        z  t        t
        t        z  t        z   z  t        dz  dt        z  t        z  t        z  z   t        dz  z   z  z
  t        z
  t
        t        z  t        z
  t        dz  dt        z  t        z  t        z  z   t        dz  z   z  z
  t
        t        z  t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  t        «      k(  sJ ‚t        ‰‰t        ‰‰ «      ‰«      j                  «       t        t        t
        t        z  t        z   z  t        dz  dt        z  t        z  t        z  z   t        dz  z   z  t        t
        t        z  t        z   z  z
  dt
        z  t        z  dt        z  z
  t        dz  dt        z  t        z  t        z  z   t        dz  z   z  z   t
        t        z  t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  t        «      k(  sJ ‚t        ‰‰«      j                  t         «      t        t        t        dz  dt        z  t        z  t        z  z   t        dz  z   z  dz   t        dz  dt        z  t        z  t        z  z   t        dz  z   t        «      k(  sJ ‚t        ‰‰‰ «      j                  t         «      t        t
        t        z  t        t
        t        z  t        z   z  t        dz  dt        z  t        z  t        z  z   t        dz  z   z  z   t        z   t
         t        z  t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  z   t
        t        z  t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  t        «      k(  sJ ‚t        ‰t        ‰‰«      «      t        ‰‰‰«      cxk(  rt        t        ‰‰«      ‰«      k(  sJ ‚ J ‚t        t        ‰‰«      t        ‰‰«      «      }|j                  sJ ‚|j                   rJ ‚|j"                  sJ ‚t        ‰‰ ‰ «      }|j                  sJ ‚|j                   rJ ‚|j"                  sJ ‚t        ‰‰ t        ‰‰«      «      }|j                  sJ ‚|j                   rJ ‚|j"                  sJ ‚y )
Nr.   r/   rw   c                  ó   •— ‰ ‰z   ‰z   S r{   r<   rs  s   €€€r>   r?   z)test_Parallel_functions.<locals>.<lambda>O  s   ø€ ˜s S™y¨3™€ r=   c                  ó   •— ‰ ‰‰z  z
  S r{   r<   rs  s   €€€r>   r?   z)test_Parallel_functions.<locals>.<lambda>P  s   ø€ ˜s S¨¡W™}€ r=   c                  ó$   •— ‰ t        g d¢«      z   S rE   rî   r©   s   €r>   r?   z)test_Parallel_functions.<locals>.<lambda>Q  rð   r=   Trx   F)r   r;   r&  r²   r´   rP   rI   rN   rO   r    r   r-   rX   r¸   rv  r%  r)  r,  )r`   ÚP1ÚP2ÚP3r[   r\   r]   r^   s       @@@@r>   Útest_Parallel_functionsrÀ  ;  s  û€ Ü
˜1œa ™d Q¤t¡V¬B¡Y¬q¡[Ñ0´2°q±5Ñ8¼!Ó
<€CÜ
œ1˜a¤Ó
#€CÜ
œ2œa™4¤!™8¤R¬¡T¬A¡X¬qÓ
1€CÜ
œ2œa™4¤!¤R¡%™<¬!Ñ+¬Q´Ó
2€CÜ
œ2œa ™d™7¤R¬¡T™>¬BÑ.´´B±¼Ó
:€Cà�‰9�s‰?œh s¨C°Ó5Ò5Ð5Ð5Ø�‰9�s‰?˜SÑ ¤H¨S°#°s¸CÓ$@Ò@Ð@Ð@Ø�‰9�s‰?˜SÑ ¤H¨S°#¸°t¸c¸TÓ$BÒBÐBÐBØ��S‘‰=œH S¬&°°cÓ*:Ó;Ò;Ð;Ð;Ø��S‘‰=œH S¬6°#°c«?Ð*:Ó;Ò;Ð;Ð;Øˆ4�#‰:œ 3 $¨¨Ó-Ò-Ð-Ð-Ø�3‰Yˆ<œ6Ô"2°2°q¼!Ó"<¼hÀsÈCÓ>PÓQÒQÐQÐQØ�#‰I�s‰?œf¤X¨c°3Ó%7¸Ó=Ò=Ð=Ð=Ø�#‰I˜˜C™Ñ ¤F¬8°C¸Ó+=¸sÀCÓ$HÒHÐHÐHØ�3‰Yˆ<˜˜Ñ¤Ô'7¸¸A¼qÓ'AÄ8ÈCÐQTÓCUÐX[ÐW[Ó \Ò\Ð\Ð\Ø�‰9�s˜3‘wÑ Ñ$¬°°c¼6À#ÀsÓ;KÈSÓ(QÒQÐQÐQØ�‰9�s˜3‘wÑ Ñ$¬°°c¼6À#ÀsÓ;KÈcÈTÓ(RÒRÐRÐRØ�#‰I˜‰O˜c C™iÑ(¬F´8¸CÀÀcÓ3JÌHÐUXÐZ]ÓL^Ó,_Ò_Ð_Ð_Ü
Œ:Õ.Ô/Ü
Œ:Õ,Ô-Ü
Œ:Ó6Ô7ô �C˜ tÔ,´¸¸cÓ0B×0GÑ0GÓ0Iô \ÜœœA˜q™D 1¤Q¡3¤r¡6¬$¡;Ñ.´°Q±Ñ6Ñ7¸!Ñ;¼QÀ¹TÀAÄaÁCÌÁFÌ4ÁKÑ=OÔRTÐVWÑRWÑ=WÔYZÓ[ò\ð \ñ \ð \ð \ä�C˜œf c T¨3Ó/¸$Ô?Ü��cœ6 3 $¨Ó,Ó-×2Ñ2Ó4õ,Ü8HÌÌBÌqÉDÔSTÉHÉÔWXÐZ[ÑW[Ð^_Ô`aÑ^aÔbdÑ^dÔeiÑ^iÑWiÔlnÐpqÑlqÑWqÐtuÑVuÑIuÜˆS”‰U”Q‰Yœ˜A™ ¤!¡¤B¡¤t¡Ñ+¬b°!©eÑ3Ñ4ñJ5Ü8:¼1¹¼q¹Ä1ÀaÁ4È!ÌAÉ#ÌbÉ&ÔQUÉ+ÑCUÔXZÐ\]ÑX]ÑC]Ñ7^ñJ_ÜacÔdeÑaeÔhiÑaiÔlmÐopÑlpØ”!‘”B‘”t‘ñmÜ  !™eñm$Ø&'ñl(ñ a(Ü)*ó9,ò,ð ,ñ ,ð ,ð ,ô �C˜˜s˜d¨TÔ2´h¸sÀCÈ#ÈÓ6N×6SÑ6SÓ6Uô :ÜœœA™¤¤2¤a¡4¬!¡8¡¬a°©d°Q´q±S¼±V¼D±[Ñ.@Ä2ÀqÁ5Ñ.HÑ IÑIÌAÑMÔRTÐQTÔUVÑQVÔYZÑQZÔ]^Ð`aÑ]aÐdeÔfgÑdgÔhjÑdjÔkoÑdoÑ]oÔrtÐvwÑrwÑ]wÑPxÑxÜ”!‰t”a‰xœ!˜Q™$ ¤1¡¤R¡¬¡Ñ,¬r°1©uÑ4Ñ5´qó	:ò:ð :ñ :ð :ð :ô ˜˜c˜T¨EÔ2´h¸sÀSÀDÓ6I×6NÑ6NÓ6PÒPÐPÐPä”F˜3 Ó$¤f¨S°#Ó&6Ó7×<Ñ<Ó>ÜœœBœq™D¤1™H™¤q¨!¡t¨a´©c´"©f´T©kÑ'9¼BÀ¹EÑ'AÑBÄQÌÌ1ÉÌqÉÁ\ÑQÔTVÔWXÑTXÔ[\ÑT\Ô_`ÐbcÑ_cÐfgÔhiÑfiÔjlÑflÔmqÑfqÑ_qÔtvÐxyÑtyÑ_yÑSzÔ|}Ó~òð ð ä�S�D˜3˜$  Ó%×*Ñ*Ó,Üœ"˜œQ™¤¤B¤q¡D¬1¡H¡¬q°!©t°a¼±c¼"±f¼T±kÑ/AÄBÈÁEÑ/IÑ!JÑJÌQÑNÔSUÐRUÔVWÑRWÔZ[ÑR[Ô^_ÐabÑ^bÐefÔghÑehÔikÑekÔlpÑepÑ^pÔsuÐwxÑsxÑ^xÑQyÑyÜ”‰T”A‰Xœ˜1™˜q¤™s¤2™v¤d™{Ñ*¬R°©UÑ2Ñ3´Qó	8ò8ð 8ð 8ô �S˜#˜sÓ#×(Ñ(Ó*Ð*Üœ"˜œQ™¤¤B¤q¡D¬1¡H¡¬q°!©t°a¼±c¼"±f¼T±kÑ/AÄBÈÁEÑ/IÑ!JÑJÌQÑNÔRTÔUVÑRVÔYZÑRZÔ]^Ð`aÑ]aÐdeÔfgÑdgÔhjÑdjÔkoÑdoÑ]oÔrtÐvwÑrwÑ]wÑQxÑxÜ”‰T”A‰Xœ˜1™˜q¤™s¤2™v¤d™{Ñ*¬R°©UÑ2Ñ3´Qó	8ò8ð 8ð 8ô �C˜œf S¨3¨$Ó/°Ó5×:Ñ:Ó<ÜœœBœq™D¤1™H™¤q¨!¡t¨a´©c´"©f´T©kÑ'9¼BÀ¹EÑ'AÑBÄQÌÌ1ÉÌqÉÁ\ÑQÐUVÔWYÑUYÔZ[ÑU[Ð^_Ô`aÑ^aÑUaÔdeÐghÑdhÐklÔmnÑknÔoqÑkqÔrvÑkvÑdvÜ�!‰eñeñ Uñ Üœ!‘tœa‘x¤! Q¡$¨¬1©¬R©´©Ñ"4´r¸1±uÑ"<Ñ=¼qó	BòBð Bð Bô �C˜Ó×%Ñ%Ô&6Ó7ÜœœA˜q™D 1¤Q¡3¤r¡6¬$¡;Ñ.´°Q±Ñ6Ñ7¸!Ñ;¼QÀ¹TÀAÄaÁCÌÁFÌ4ÁKÑ=OÔRTÐVWÑRWÑ=WÔYZÓ[ò\ð \ð \ä�C˜˜s˜dÓ#×+Ñ+Ô,<Ó=ÜœœA™¤¤2¤a¡4¬!¡8¡¬a°©d°Q´q±S¼±V¼D±[Ñ.@Ä2ÀqÁ5Ñ.HÑ IÑIÌAÑMÔRTÐQTÔUVÑQVÔYZÑQZÔ]^Ð`aÑ]aÐdeÔfgÑdgÔhjÑdjÔkoÑdoÑ]oÜ�‰Uñ^ñ Qñ Üœ‘dœQ‘h¤ A¡¨¬!©¬B©¬t©Ñ!3´b¸!±eÑ!;Ñ<¼aó	AòAð Að Aô �Cœ # sÓ+Ó,´¸¸cÀ3Ó0GÔlÌ8ÔT\Ð]`ÐbeÓTfÐhkÓKlÒlÐlÑlÐlÐlä	”&˜˜cÓ"¤F¨3°Ó$4Ó	5€BØ�<Š<Ðˆ<Ø×$Ò$Ð$Ð$Ø�>Š>Ðˆ>ä	�#˜�t˜c˜TÓ	"€BØ�<Š<Ðˆ<Ø×$Ò$Ð$Ð$Ø�>Š>Ðˆ>ä	�#˜�tœV C¨Ó-Ó	.€BØ�<Š<Ðˆ<Ø×$Ò$Ð$Ð$Ø�>Š>Ð‰>r=   c                  ó(  ‡‡‡‡‡‡— t        t        t        z  t        t        z  z   t        z
  t        t        «      } t        t        t        dz  z  t
        t        z  z   t        z
  t        t        z   t        «      }t        t        gt        gt        gg«      Št        t         g|gt         gg«      Št        |g| gt        gg«      Št        t        | gt        |gg«      Št        t        t        gt        | gg«      Št        t         gg«      }t        | g|  g| gg«      Š‰‰z   ‰z   t        ‰‰‰«      cxk(  rt        t        ‰‰«      ‰«      k(  sJ ‚ J ‚‰‰z
  ‰z
  t        ‰‰ ‰ «      k(  sJ ‚‰‰z
  ‰ |z  | z  z   t        ‰‰ t        | |‰ «      «      k(  sJ ‚‰‰z   ‰ |z  z
  t        ‰‰t        |‰ «       «      k(  sJ ‚‰‰z
  ‰z
  ‰z   t        ‰‰ ‰ ‰«      k(  sJ ‚‰‰z   ‰z
  ‰z
  t        ‰‰‰ ‰ «      k(  sJ ‚t        t        ˆˆfd„«       t        t        ˆˆfd„«       t        t        ˆˆfd„«       t        t        ˆˆfd„«       t        t        ˆˆfd„«       t        t        ˆˆˆfd„«       t        t        ˆˆˆfd„«       t        t        ˆˆˆfd	„«       t        t        ˆˆˆfd
„«       ‰‰z   |z  t        |t        ‰‰«      «      k(  sJ ‚‰‰z
  |z  | z  t        | |t        ‰‰ «      «      k(  sJ ‚‰‰z
  ‰z
  ||z   z  t        t        ||«      t        ‰‰ ‰ «      «      k(  sJ ‚t        t        ˆˆfd„«       t        t        ˆˆfd„«       t        t        ˆˆfd„«       t        t        ˆˆˆfd„«       t        t        ˆˆfd„«       t        t        ˆˆˆˆfd„«       t        t        ˆˆˆfd„«       t        ‰‰d¬«      t        ‰‰«      j                  «       cxk(  �r™t        ‰‰«      j!                  t        «      cxk(  �rut        t        t"         t        dz  dt        z  t$        z  t&        z  z   t$        dz  z   z  dz   t        dz  dt        z  t$        z  t&        z  z   t$        dz  z   t        «      ft        t         t        t        dz  z  z   t
        t        z  z   t"        t        t        z   z  z   t        t        z   t        «      ft        t
         t        z  t        z
  t
        t        z  t        z
  t        dz  dt        z  t$        z  t&        z  z   t$        dz  z   z  z   t
        t        z  t        z   t        dz  dt        z  t$        z  t&        z  z   t$        dz  z   z  t        «      ff«      k(  sJ ‚ J ‚y )Nr/   c                  ó   •— ‰ ‰z   t         z   S r{   )rd  r~  s   €€r>   r?   z-test_MIMOParallel_functions.<locals>.<lambda>•  s   ø€ ˜t d™{¬SÑ0€ r=   c                  ó   •— ‰ ‰z
  t         z
  S r{   r‘  r~  s   €€r>   r?   z-test_MIMOParallel_functions.<locals>.<lambda>–  s   ø€ ˜d T™k¬BÑ.€ r=   c                  ó"   •— ‰ ‰z
  t         dz
  z
  S r÷   r    ©r€  r•  s   €€r>   r?   z-test_MIMOParallel_functions.<locals>.<lambda>—  s   ø€ ˜d T™k¬Q°©UÑ3€ r=   c                  ó   •— ‰ ‰ z
  dz
  S r  r<   rÅ  s   €€r>   r?   z-test_MIMOParallel_functions.<locals>.<lambda>˜  s   ø€ ˜t˜e d™l¨QÑ.€ r=   c                  ó(   •— dt         dz  z
  ‰z
  ‰ z
  S rü   rý   rÅ  s   €€r>   r?   z-test_MIMOParallel_functions.<locals>.<lambda>™  s   ø€ ˜q¤1 a¡4™x¨4Ñ/°$Ñ6€ r=   c                  ó   •— ‰‰ z
  ‰z
  S r{   r<   )r€  r•  r–  s   €€€r>   r?   z-test_MIMOParallel_functions.<locals>.<lambda>›  ó   ø€ ˜t d™{¨TÑ1€ r=   c                  ó   •— ‰‰ z
  ‰z   S r{   r<   )r  r€  r–  s   €€€r>   r?   z-test_MIMOParallel_functions.<locals>.<lambda>œ  rÉ  r=   c                  ó   •— ‰ ‰z   ‰z   S r{   r<   r‰  s   €€€r>   r?   z-test_MIMOParallel_functions.<locals>.<lambda>ž  s   ø€ ˜d T™k¨DÑ0€ r=   c                  ó   •— ‰ ‰z
  ‰z
  S r{   r<   r‰  s   €€€r>   r?   z-test_MIMOParallel_functions.<locals>.<lambda>Ÿ  s   ø€ ˜t d™{¨dÑ2€ r=   c                  ó   •— ‰ ‰z   t         z  S r{   r}  r�  s   €€r>   r?   z-test_MIMOParallel_functions.<locals>.<lambda>¤  s   ø€   t¡¬SÑ0€ r=   c                  ó   •— ‰ ‰z
  t         z  S r{   )rP   rÅ  s   €€r>   r?   z-test_MIMOParallel_functions.<locals>.<lambda>¥  s   ø€ ˜t d™{¬BÑ.€ r=   c                  ó"   •— ‰‰ z   t         dz
  z  S )Nr5   r    rÅ  s   €€r>   r?   z-test_MIMOParallel_functions.<locals>.<lambda>¦  s   ø€ ˜t d™{¬Q°©UÑ3€ r=   c                  ó   •— ‰ ‰z   ‰z   dz  S rB   r<   )r  r€  r•  s   €€€r>   r?   z-test_MIMOParallel_functions.<locals>.<lambda>§  s   ø€ ˜t d™{¨TÑ1°1Ñ4€ r=   c                  ó(   •— dt         dz  z
  ‰ ‰z   z  S rü   rý   )r  r•  s   €€r>   r?   z-test_MIMOParallel_functions.<locals>.<lambda>¨  s   ø€ ˜q¤1 a¡4™x¨$°©+Ñ6€ r=   c                  ó   •— ‰‰ z
  ‰z  ‰z  S r{   r<   )r€  r•  r„  rŒ  s   €€€€r>   r?   z-test_MIMOParallel_functions.<locals>.<lambda>«  s   ø€   t¡¨TÑ1°$Ñ6€ r=   c                  ó   •— ‰ ‰z
  ‰z  S r{   r<   )r  r€  rŒ  s   €€€r>   r?   z-test_MIMOParallel_functions.<locals>.<lambda>­  s   ø€   t¡¨TÑ1€ r=   Trx   r.   )r   rN   rI   rO   r;   rP   r"   re  rd  rc  r$   r#   r-   rX   rY   r¸   rv  r´   r²   r&  )	r^   r`   r…  r  r€  r•  r„  rŒ  r–  s	      @@@@@@r>   Útest_MIMOParallel_functionsrÔ  ƒ  s  ý€ Ü
œ2œa™4¤!¤R¡%™<¬!Ñ+¬Q´Ó
2€CÜ
œ2œa ™d™7¤R¬¡T™>¬BÑ.´´B±¼Ó
:€Cä!¤C 5¬3¨%´#°Ð"7Ó8€DÜ!¤S D 6¨C¨5´C°4°&Ð"9Ó:€DÜ! C 5¨C¨4¨&´3°%Ð"8Ó9€DÜ!¤C¨#¨ ;´°c°
Ð";Ó<€DÜ!¤C¬ :´°c°T¨{Ð";Ó<€DÜ!¤S D 6 (Ó+€DÜ! C 5¨C¨4¨&°3°%Ð"8Ó9€Dà�$‰;˜Ñ¤¨d°D¸$Ó!?ÔoÄ<ÔP\Ð]aÐcgÓPhÐjnÓCoÒoÐoÑoÐoÐoØ�$‰;˜Ñ¤¨d°T°E¸D¸5Ó!AÒAÐAÐAØ�$‰;˜4˜% ™* d UÑ*Ñ+¬|¸DÀ4À%ÌÐUYÐTYÐ[_ÐbfÐafÓIgÓ/hÒhÐhÐhØ�$‰;˜4˜% ™*Ñ%¬°d¸DÄ:ÈdÐUYÐTYÓCZÐBZÓ)[Ò[Ð[Ð[Ø�$‰;˜Ñ Ñ$¬°T¸D¸5À4À%ÈÓ(NÒNÐNÐNØ�$‰;˜Ñ Ñ$¬°T¸4À$ÀÈÈÓ(NÒNÐNÐNÜ
Œ:Ô0Ô1Ü
Œ9Ô.Ô/Ü
Œ9Ô3Ô4Ü
Œ9Ô.Ô/Ü
Œ9Ô6Ô7ä
Œ:Õ1Ô2Ü
Œ:Õ1Ô2ä
Œ9Õ0Ô1Ü
Œ9Õ2Ô3à�4‰K˜Ñ¤¨D´,¸tÀTÓ2JÓ!KÒKÐKÐKØ�4‰K˜Ñ˜t˜eÑ#¤z°4°%¸¼|ÈDÐSWÐRWÓ?XÓ'YÒYÐYÐYØ�4‰K˜$Ñ ¨¡Ñ-´¼LÈÈtÓ<TÔVbÐcgÐjnÐinÐquÐpuÓVvÓ1wÒwÐwÐwÜ
Œ:Ô0Ô1Ü
Œ9Ô.Ô/Ü
Œ9Ô3Ô4Ü
Œ9Õ4Ô5Ü
Œ9Ô6Ô7ô Œ:Ö6Ô7ä
Œ:Õ1Ô2ô ˜˜t¨dÔ3´|ÀDÈ$Ó7O×7TÑ7TÓ7Võ VÜ�D˜$Ó×'Ñ'Ô(>Ó?õVäÔ 0´!°´Q¸±T¸A¼a¹CÄ¹FÄ4¹KÑ5GÌ"ÈaÉ%Ñ5OÑ1PÐSTÑ1TÔVWÐYZÑVZÐ]^Ô_`Ñ]`ÔacÑ]cÔdhÑ]hÑVhÔkmÐopÑkpÑVpÔrsÓ tÐvÜ	œ2˜#¤¤1 a¡4¡™-¬"¬Q©$Ñ.´´B¼±F±Ñ;¼RÄ!¹VÄQÓ	GÐIÔL\Ô^`Ð]`ÔabÑ]bÔefÑ]fÔjlÔmnÑjnÔqrÑjrÜ	
ˆA‰�”!‘”B‘”t‘Ñ	œb !™eÑ	#ñj%ñ ^%Ü')¬!¡t¬a¡x´!°Q±$¸¼1¹¼R¹Ä¹Ñ2DÄrÈ1ÁuÑ2LÑ&MÌqóMRð LTðUó VòVð Wñ Vð Wñ Vr=   c                  óX	  ‡‡	‡
‡‡— t        dt        dz  dt        z  t        z  t        z  z   t        dz  z   t        «      Št        t        dt        «      Š	t        t
        t        z  t        z
  t
        t        z  t        z   t        «      Š
t        t        t        z  t        t        z  z   t        z
  t        t        «      Št        t        t        dz  z  t
        t        z  z   t        z
  t        t        z   t        «      Št        t        t        z
  t        t        z   t        «      } t        t        ddt        «      ‰‰	z  ‰
z  «      }|j                  t        ddt        «      t        ‰‰	‰
«      dfk(  sJ ‚|j                  t        ddt        «      k(  sJ ‚|j                  t        ‰‰	‰
«      k(  sJ ‚|j                  t        k(  sJ ‚t        ‰‰	‰
z  «      }|j                  ‰t        ‰	‰
«      dfk(  sJ ‚|j                  ‰k(  sJ ‚|j                  t        ‰	‰
«      k(  sJ ‚|j                  t        k(  sJ ‚t        ‰‰	z  ‰«      }|j                  t        ‰‰	«      ‰dfk(  sJ ‚|j                  t        ‰‰	«      k(  sJ ‚t        ‰| «      }|j                  ‰| dfk(  sJ ‚|j                  ‰k(  sJ ‚|j                  t        k(  sJ ‚t        ‰t        ddt        «      «      }|j                  ‰t        ddt        «      dfk(  sJ ‚|j                  t        k(  sJ ‚|t        ‰«      k(  sJ ‚t        t        ddt        «      ‰«      }|j                  t        ddt        «      ‰dfk(  sJ ‚|j                  t        k(  sJ ‚t        ‰| z  t        ddt        «      «       }|j                  t        t        ddt        «      t        ‰| «      «      t        ddt        «       dfk(  sJ ‚|j                  t        t        ddt        «      t        ‰| «      «      k(  sJ ‚t        t         ˆˆ	ˆ
fd„«       t        t         ˆfd„«       t        t         d„ «       t        t         d„ «       t        t"        ˆ	ˆˆfd„«       t        t"        ˆˆ	fd	„«       t        t"        ˆfd
„«       t        t"        ˆˆfd„«       y )Nr.   r/   rw   c                  ó"   •— t        ‰ ‰‰z   «      S r{   ©r!   ©r[   r\   r]   s   €€€r>   r?   z,test_Feedback_construction.<locals>.<lambda>â  s   ø€ œh s¨C°#©IÓ6€ r=   c                  ó2   •— t        ‰ t        g d¢«      «      S rE   )r!   r   rï   s   €r>   r?   z,test_Feedback_construction.<locals>.<lambda>ã  s   ø€ œh s¬F²9Ó,=Ó>€ r=   c                  óF   — t        t        ddt        «      t        dz
  «      S r÷   )r!   r   r;   r<   r=   r>   r?   z,test_Feedback_construction.<locals>.<lambda>ä  s   € œhÔ'7¸¸1¼aÓ'@Ä!ÀaÁ%ÓH€ r=   c                  ó   — t        dd«      S r÷   r×  r<   r=   r>   r?   z,test_Feedback_construction.<locals>.<lambda>å  s   € œh q¨!›n€ r=   c                  ó"   •— t        ‰ ‰‰z  «      S r{   r×  )r\   r^   r`   s   €€€r>   r?   z,test_Feedback_construction.<locals>.<lambda>ç  s   ø€ œx¨¨S°©WÓ5€ r=   c                  ó   •— t        ‰‰ d«      S )Nç      ø?r×  ©r[   r\   s   €€r>   r?   z,test_Feedback_construction.<locals>.<lambda>è  s   ø€ œx¨¨S°#Ó6€ r=   c                  ó$   •— t        ‰ ‰ dz   «      S )Nrw   r×  rï   s   €r>   r?   z,test_Feedback_construction.<locals>.<lambda>é  s   ø€ œx¨¨c°2©g¨XÓ6€ r=   c                  ó   •— t        ‰ ‰«      S r{   r×  r¥   s   €€r>   r?   z,test_Feedback_construction.<locals>.<lambda>ê  s   ø€ œx¨¨SÓ1€ r=   )r   r;   r&  r²   r´   rP   rI   rN   rO   r!   rM   r   Úsys1Úsys2r0  r-   rY   rX   )rb   Úf1Úf2Úf3Úf4Úf5Úf6Úf7r[   r\   r]   r^   r`   s           @@@@@r>   Útest_Feedback_constructionrë  ·  sÅ  ü€ Ü
˜1œa ™d Q¤t¡V¬B¡Y¬q¡[Ñ0´2°q±5Ñ8¼!Ó
<€CÜ
œ1˜a¤Ó
#€CÜ
œ2œa™4¤!™8¤R¬¡T¬A¡X¬qÓ
1€CÜ
œ2œa™4¤!¤R¡%™<¬!Ñ+¬Q´Ó
2€CÜ
œ2œa ™d™7¤R¬¡T™>¬BÑ.´´B±¼Ó
:€CÜ
œ1œq™5¤!¤a¡%¬Ó
+€Cä	Ô" 1 a¬Ó+¨S°©W°S©[Ó	9€BØ�7‰7Ô'¨¨1¬aÓ0´&¸¸cÀ3Ó2GÈÐLÒLÐLÐLØ�7‰7Ô& q¨!¬QÓ/Ò/Ð/Ð/Ø�7‰7”f˜S # sÓ+Ò+Ð+Ð+Ø�6‰6”QŠ;Ðˆ;ä	�#�s˜3‘wÓ	€BØ�7‰7�sœF 3¨Ó,¨bÐ1Ò1Ð1Ð1Ø�7‰7�cŠ>Ðˆ>Ø�7‰7”f˜S #Ó&Ò&Ð&Ð&Ø�6‰6”QŠ;Ðˆ;ä	�#�c‘'˜3Ó	€BØ�7‰7”v˜c 3Ó'¨¨bÐ1Ò1Ð1Ð1Ø�7‰7”f˜S #Ó&Ò&Ð&Ð&ä	�#�sÓ	€BØ�7‰7�s˜C �nÒ$Ð$Ð$Ø�7‰7�cŠ>Ðˆ>Ø�6‰6”QŠ;Ðˆ;ä	�#Ô'¨¨1¬aÓ0Ó	1€BØ�7‰7�sÔ,¨Q°´1Ó5°rÐ:Ò:Ð:Ð:Ø�6‰6”QŠ;Ðˆ;Ø”˜#“ÒÐÐä	Ô" 1 a¬Ó+¨SÓ	1€BØ�7‰7Ô'¨¨1¬aÓ0°#°rÐ:Ò:Ð:Ð:Ø�6‰6”QŠ;Ðˆ;ä
�3�s‘7Ô,¨Q°´1Ó5Ó
6Ð	6€BØ�7‰7”vÔ.¨r°1´aÓ8¼&ÀÀcÓ:JÓKÔN^Ð_`ÐbcÔefÓNgÐMgÐikÐlÒlÐlÐlØ�7‰7”fÔ-¨b°!´QÓ7¼ÀÀSÓ9IÓJÒJÐJÐJô Œ9Õ6Ô7Ü
Œ9Ó>Ô?Ü
Œ9ÑHÔIÜ
Œ9Ñ,Ô-ä
Œ:Õ5Ô6Ü
Œ:Ô6Ô7Ü
Œ:Ó6Ô7Ü
Œ:Ô1Õ2r=   c            
      óÀ  ‡‡‡‡‡— t        ddt        «      Št        dt        dz  dt        z  t        z  t        z  z   t        dz  z   t        «      Št        t        dt        «      Št        t
        t        z  t        z
  t
        t        z  t        z   t        «      Št        t        t        z  t        t        z  z   t        z
  t        t        «      Št        t        t        dz  z  t
        t        z  z   t        z
  t        t        z   t        «      } t        t        t        z
  t        t        z   t        «      }‰‰z  ‰z  ‰z  | z  t        ‰‰‰t        ‰d«      | «      k(  sJ ‚‰‰z  ‰z  ‰| z  z  t        ‰‰z  ‰z  j                  «       t        ‰| z  j                  «       d«      «      k(  sJ ‚‰‰‰z   z  t        ‰‰«      k(  sJ ‚‰‰‰‰z  ‰z  z   z  t        ‰‰‰z  ‰z  «      k(  sJ ‚‰‰‰‰z  ‰z  z   z  t        ‰‰‰z  «      k(  sJ ‚‰‰z  ‰‰‰z  z   z  t        ‰‰z  ‰«      k(  sJ ‚‰‰z  ‰‰‰z  | z  z   z  t        ‰‰z  | «      k(  sJ ‚‰‰z  ‰‰‰z  | z  ‰z  z   z  t        ‰‰z  | ‰z  «      t        ‰‰z  ‰| z  «      fv sJ ‚‰t        ddt        «      ‰|z  z   z  t        ‰|«      k(  sJ ‚| ‰| z   z  t        | ‰«      k(  sJ ‚t        t        ˆˆˆfd„«       t        t        ˆˆˆˆfd„«       t        ‰‰‰z  ‰z  «      j                  «       t        t
        t        z  t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  t        t
        t        z  t        z
  z  t
        t        z  t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  z   t        «      k(  sJ ‚t        ‰‰‰z  ‰z  «      j                   dt        t
        t        z  t        z
  z  t
        t        z  t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  z  dz   z  k(  sJ ‚t        ‰‰‰z  «      j                  «       t        t
        t        z  t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  t        t
        t        z  t        z
  z  t
        t        z  t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  t        «      k(  sJ ‚t        ‰‰‰z  «      j                   dt        t
        t        z  t        z
  z  t
        t        z  t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  z  dz   z  k(  sJ ‚t        ‰‰z  | «      j                  «       t        t        t        t        z   z  t        dz  dt        z  t        z  t        z  z   t        dz  z   z  t        t         t        t        dz  z  z   t
        t        z  z   z  t        t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  t        «      k(  sJ ‚t        ‰‰z  | d«      j                   dt         t         t        t        dz  z  z   t
        t        z  z   z  t        t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  z  dz   z  k(  sJ ‚t        ‰|«      j                  «       t        t        t        t        z   z  t        t        z  t        t        z  z   t        z
  z  t        t        t        t        z   z  t         t        z   t        t        z  t        t        z  z   t        z
  z  z   z  t        «      k(  sJ ‚t        ‰|z  t        ddt        «      «      j                  «        t        t         t         t        z   z  t        t        z   z  t        t        z  t        t        z  z   t        z
  z  t        t        t        z   z  t        t        t        z   z  t         t        z   t        t        z  t        t        z  z   t        z
  z  z   z  t        «      k(  sJ ‚t        ‰‰«      j                  «       t        ddt        «      k(  sJ ‚t        ‰‰| z  «      j#                  t         «      t        t        t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  t        t         t        t        dz  z  z   t
        t        z  z   z  t        t        z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  z   t        dz  dt        z  t        z  t        z  z   t        dz  z   z  t        «      k(  sJ ‚t        t        ddt        «      ‰«      j#                  t         «      t        t        t        t        z  t        z   t        t        z  z   t        z
  t        «      k(  sJ ‚y )Nr.   r/   rw   c                  ó,   •— ‰ ‰z  ‰z  d‰ ‰z  ‰z  z   z  S r÷   r<   rØ  s   €€€r>   r?   z)test_Feedback_functions.<locals>.<lambda>  s    ø€ ˜c #™g c™k¨Q°°S±¸±©_Ñ=€ r=   c                  ó&   •— ‰‰z  ‰ ‰‰z  ‰z  z   z  S r{   r<   r?  s   €€€€r>   r?   z)test_Feedback_functions.<locals>.<lambda>  s   ø€ ˜s 3™w¨"¨s°3©w°s©{Ñ*:Ñ;€ r=   )r   r;   r&  r²   r´   rP   rI   rN   rO   r   r¹   r¸   r!   r-   rY   rX   Úsensitivityrv  )r`   rb   rZ   r[   r\   r]   r^   s     @@@@@r>   Útest_Feedback_functionsrð  í  s	  ü€ Ü	˜!˜Q¤Ó	"€BÜ
˜1œa ™d Q¤t¡V¬B¡Y¬q¡[Ñ0´2°q±5Ñ8¼!Ó
<€CÜ
œ1˜a¤Ó
#€CÜ
œ2œa™4¤!™8¤R¬¡T¬A¡X¬qÓ
1€CÜ
œ2œa™4¤!¤R¡%™<¬!Ñ+¬Q´Ó
2€CÜ
œ2œa ™d™7¤R¬¡T™>¬BÑ.´´B±¼Ó
:€CÜ
œ1œq™5¤!¤a¡%¬Ó
+€Cà�‰G�C‰K˜#Ñ˜cÑ!¤f¨S°#°s¼CÀÀR»LÈ#Ó&NÒNÐNÐNØ�‰G�C‰K˜C ™GÑ$¬°°C±¸±×/AÑ/AÓ/CÄSÈ#ÈcÉ'ÏÉÓIYÐZ\ÓE]Ó(^Ò^Ð^Ð^Ø��c‘‰?œh r¨3Ó/Ò/Ð/Ð/Ø��c˜#‘g˜c‘kÑ!Ñ"¤h¨r°3°s±7¸3±;Ó&?Ò?Ð?Ð?Ø�"�s˜3‘w˜s‘{Ñ"Ñ#¤x°°S¸±WÓ'=Ò=Ð=Ð=Ø�‰G˜˜S ™W™Ñ%¬°#°c±'¸2Ó)>Ò>Ð>Ð>Ø�‰G˜˜S ™W S™[Ñ(Ñ)¬X°c¸#±g¸sÓ-CÒCÐCÐCØ�‰G˜˜S ™W S™[¨™_Ñ,Ñ-´(¸3¸s¹7ÀCÈÁGÓ2LÌhÐWZÐ[^ÑW^Ð`cÐdgÑ`gÓNhÐ1iÑiÐiÐiØÔ" 1 a¬Ó+¨c°#©gÑ5Ñ6¼(À3ÈÓ:LÒLÐLÐLØ�"�s‘(Ñœx¨¨RÓ0Ò0Ð0Ð0ä
Œ9Õ=Ô>Ü
Œ:Ö;Ô<ä�B˜˜C™ ™Ó$×)Ñ)Ó+Üœ"œQ™$¤™(¤Q¨¡T¨A¬a©C´©F´4©KÑ%7¼"¸a¹%Ñ%?Ñ@Ä!ÄRÌÁTÌAÁXÁ,Ü	ŒA‰”‰”A�q‘D˜1œQ™3œr™6¤$™;Ñ&¬¨Q©Ñ.Ñ/ñC0Ü12ó	4ò4ð 4ð 4ô �B˜˜C™ ™Ó$×0Ñ0Ø	Œ1Œb”‰d”Q‰h‰<œ"œQ™$¤™(¤Q¨¡T¨A¬a©C´©F´4©KÑ%7¼"¸a¹%Ñ%?Ñ@ÑAÀAÑEÑFòGð Gð Gä�C˜˜S™Ó!×&Ñ&Ó(Üœ"œQ™$¤™(¤Q¨¡T¨A¬a©C´©F´4©KÑ%7¼"¸a¹%Ñ%?Ñ@Ä1ÄbÌÁdÌQÁhÁ<Ü	ŒA‰”‰”A�q‘D˜1œQ™3œr™6¤$™;Ñ&¬¨Q©Ñ.Ñ/ñD0Ü23°Q±$¸¼1¹¼R¹Ä¹Ñ2DÄrÈ1ÁuÑ2LñCNÜOPó	RòRð Rð Rô �C˜˜S™Ó!×-Ñ-Ø	Œ1Œb”‰d”Q‰h‰<œ"œQ™$¤™(¤Q¨¡T¨A¬a©C´©F´4©KÑ%7¼"¸a¹%Ñ%?Ñ@ÑAÀAÑEÑFòGð Gð Gä�C˜‘G˜SÓ!×&Ñ&Ó(ÜœœB¤™F™¤Q¨¡T¨A¬a©C´©F´4©KÑ%7¼"¸a¹%Ñ%?Ñ@Ä1ÄrÀcÌBÌqÐRSÉtÉGÁmÔVXÔYZÑVZÑFZÑC[Ü	Œa‰”!�Q‘$˜œ1™œR™¤™Ñ$¤r¨1¡uÑ,Ñ-ñD.Ü01°1±°q¼±s¼2±v¼d±{Ñ0BÄRÈÁUÑ0JñCLÜMNó	PòPð Pð Pô �C˜‘G˜S !Ó$×0Ñ0Ø	ŒAˆ2”ˆs”Rœ˜1™‘W‰}œr¤!™tÑ#Ñ$¤r¬A¡v´°1±°q¼±s¼2±v¼d±{Ñ0BÄRÈÁUÑ0JÑ&KÑLÈqÑPÑQòRð Rð Rä�C˜Ó×"Ñ"Ó$ÜœœA¤™E™¤B¤q¡D¬1¬b©5¡L´1Ñ$4Ñ5´q¼!¼QÄ¹U¹)ÌÀrÌAÁvÔPRÔSTÑPTÔWXÔZ\ÑW\ÑP\Ô_`ÑP`ÑFaÑ:aÑ7bÔdeÓfògð gð gä�S˜‘WÔ.¨q°!´QÓ7Ó8×=Ñ=Ó?Ð?Üœ!˜œa˜R¤!™V™¤a¬!¡eÑ,¬b´©d´Q¼±U©l¼QÑ.>Ñ?ÄÄAÌÁEÁÌAÌqÔSTÉuÉIÔZ[ÐY[Ô^_ÑY_ÔbdÔefÑbfÔijÔlnÑinÑbnÔqrÑbrÑXsÑLsÑAtÔvwÓxòyð yð yä�B˜Ó× Ñ Ó"Ô&6°q¸!¼QÓ&?Ò?Ð?Ð?ä�C˜˜S™Ó!×)Ñ)Ô*:Ó;Üœ"œq™&¤1 a¡4¨!¬A©#¬b©&´©+Ñ#5¼¸A¹Ñ#=Ñ>ÄÄRÀCÌ"ÌQÐPQÉTÉ'ÁMÔTVÔWXÑTXÑDXÑAYÜ	Œa‰”!�Q‘$˜œ1™œR™¤™Ñ$¤r¨1¡uÑ,Ñ-ñB.Ü01°1±°q¼±s¼2±v¼d±{Ñ0BÄRÈÁUÑ0JñALÜMNó	PòPð Pð Pô Ô$ Q¨¬1Ó-¨sÓ3×;Ñ;Ô<LÓMÜœœBœq™D¤1™H¤q¬"¡uÑ,¬qÑ0´!Ó4ò5ð 5ñ 5r=   c                  óä  — t        t        dz   dt        «      } t        t        dz   dt        «      }t        | |d«      }t        | |d«      }t        ddt        «      }t        |t        «      sJ ‚t        |t        «      sJ ‚|j
                  | k(  sJ ‚|j
                  | k(  sJ ‚|j                  t        |t        || «      «      k(  sJ ‚|j                  t        |t        || «       «      k(  sJ ‚t        | |«      }t        | |«      }| |z  |k(  sJ ‚| |z   |k(  sJ ‚|j                  «       t        t        dz   dz  t        dz   t        dz   z  dz   t        «      k(  sJ ‚|j                  «       t        t        t        dz   t        dz   t        dz   z  dz   z  z   dz   t        dz   t        dz   z  dz   t        «      k(  sJ ‚t        | |z  |d«      }|t        t        | |«      |«      k(  sJ ‚|j
                  | |z  k(  sJ ‚|j                  t        |t        |t        | |«      «      «      k(  sJ ‚t        | |z  |t        «      }|t        t        | |«      |t        «      k(  sJ ‚|j
                  | |z  k(  sJ ‚y )Nr.   r/   rw   )
r   r;   r!   r/  r   rK   rL   r    r   r¸   )	r[   r\   Úfd1Úfd2ÚunitrJ  rÍ   Úfd3r]   s	            r>   Útest_Feedback_with_Seriesrö     s[  € ä
œ1˜Q™3 ¤1Ó
%€CÜ
œ1˜Q™3 ¤1Ó
%€CÜ
�3˜˜RÓ
 €CÜ
�3˜˜QÓ
€CÜ˜A˜q¤!Ó$€Dô �cÔ2Ô3Ð3Ð3Ü�cœ8Ô$Ð$Ð$ð �7‰7�cŠ>Ðˆ>Ø�7‰7�cŠ>Ðˆ>Ø�7‰7”h˜t¤V¨C°Ó%5Ó6Ò6Ð6Ð6Ø�7‰7”h˜t¤f¨S°#Ó&6Ð%6Ó7Ò7Ð7Ð7ô 
��SÓ	€BÜ	�#�sÓ	€BØ�‰9˜Š?Ðˆ?Ø�‰9˜Š?Ðˆ?Ø�7‰7‹9Ô(¬!¨a©%°!©´a¸!±e¼aÀ!¹e±_ÀqÑ5HÌ!ÓLÒLÐLÐLØ�7‰7‹9Ô(¬¬a°!©e´q¸1±u¼qÀ1¹u±oÈÑ6IÑ-JÑ)JÈQÑ)NÔQRÐUVÑQVÔYZÐ]^ÑY^ÑP_ÐbcÑPcÔefÓgÒgÐgÐgô �3�s‘7˜C Ó
$€CØ”(œ6 # sÓ+¨SÓ1Ò1Ð1Ð1Ø�7‰7�c˜C‘iÒÐÐØ�7‰7”h˜t¤V¨C´¸¸SÓ1AÓ%BÓCÒCÐCÐCô ˜3˜s™7 C¬Ó
+€CØÔ"¤6¨#¨sÓ#3°S¼!Ó<Ò<Ð<Ð<Ø�7‰7�c˜#‘gÒÐÑr=   c                  ó¶  — t        ddd¬«      \  } }}}}}t        dd¬«      \  }}}| ||dz  z  z   |z  t        z  |z  }	||z  }
|||z   z  }|dz  t        z  ||z   z  }t        | |
t        z  dz   z  |	t        dz  z  dz
  t        «      }t        d|t        dz  z  t        t        z  z   t        «      }t        d|t        z  t        «      }t        |t        z  dt        «      }t        |t        t        «      }t        ddt        «      }t        ||z  |«      }t        ||z  |z  |«      }|t        t        |t        ||«      «      |«      k(  sJ ‚|j                  t        |t        ||«      «      k(  sJ ‚|j                  t        |t        |t        |t        ||«      «      «      «      k(  sJ ‚||z  t        z  t        dz  z  |dz  z  ||z   z  |t        dz  z  t        t        z  z   dz  z  t         |z  |z  t        dz  | |dz  |z  z   z  z   z  | t        z  |z  |z  t        z  |dz  z  |t        z  |z   z  t        |z  ||z   z  |t        dz  z  t        t        z  z   z  t         |z  |z  t        dz  | |dz  |z  z   z  z   z  z   z  t        dz  |z  |t        dz  z  t        t        z  z   z  | t        z  |z  |z  t        z  |dz  z  |t        z  |z   z  t        |z  ||z   z  |t        dz  z  t        t        z  z   z  t         |z  |z  t        dz  | |dz  |z  z   z  z   z  z   z  ||z  t        z  t        z  |z  ||z   dz  z  |t        dz  z  t        t        z  z   z  t         |z  |z  t        dz  | |dz  |z  z   z  z   z  t        dz  |z  |t        dz  z  t        t        z  z   z  | t        z  |z  |z  t        z  |dz  z  |t        z  |z   z  t        |z  ||z   z  |t        dz  z  t        t        z  z   z  t         |z  |z  t        dz  | |dz  |z  z   z  z   z  z   z  z   z  ||z   z  z  }|j                  «       |z
  j                  «       d	k(  sJ ‚y )
NzI_b, I_s, m, h, l2, l1T)ÚrealÚnonnegativezK_D, K_P, v)rø  r/   r.   r3   r   )r   rU   r   r;   rÈ   r!   r   rK   rL   r    r«   r   )ÚIbÚIsÚmÚhÚl2Úl1ÚKDÚKPÚvÚtau1_sqÚtau2Útau3ÚKÚGthetaÚGdeltaÚGpsiÚDcontÚPIcontÚGunityÚGinnerÚGouterÚexprs                         r>   Útest_issue_26161r  F  sÝ  € ä"Ð#;Ø15À4ôIÑ€BˆˆAˆq�"�bä˜¨DÔ1�I€BˆˆAà�A˜˜Q™‘J‰ !Ñ#¤aÑ'¨!Ñ+€GØ�‰6€DØ��R‘‰=€DØ	ˆQ‰”‰
�b˜2‘gÑ€Aä˜q˜b D¬1¡H¨q¡LÑ1°7¼QÀ!¹VÑ3CÀaÑ3GÌÓK€FÜ˜a ¤a¨1¡f¡¬q´1©uÑ!4´aÓ8€FÜ˜A˜t¤a™x¬Ó+€DÜ˜R¤!™V Q¬Ó*€EÜ˜b¤!¤QÓ'€FÜ˜a ¤AÓ&€Fä�e˜f‘n fÓ-€FÜ�f˜v‘o¨Ñ,¨fÓ5€FØ”Xœf V¬V°F¸DÓ-AÓBÀFÓKÒKÐKÐKØ�:‰:œ ¬¨v°tÓ(<Ó=Ò=Ð=Ð=Ø�:‰:œ &¬&°¼ÀÌÈvÐW[ÓH\Ó9]Ó*^Ó_Ò_Ð_Ð_Øˆr‰E”!‰G”A�q‘D‰L˜˜A™Ñ˜r B™wÑ'¨¬A¨q©D©´1´Q±3©¸Ñ(:Ñ:¼Q¸B¸q¹DÀ¹FÄQÈÁTÈ2ÐPQÐSTÑPTÐUVÑPVÉ;ÑEWÑ<WÑXÐ[]ÐZ]Ô^_ÑZ_Ð`aÑZaÐbcÑZcÔdeÑZeÐfgÐijÑfjÑZjÐlnÔopÑlpÐstÑltÑZuÜˆa‰C��b‘‰M˜2œa ™d™7¤Q¤q¡S™=Ñ)¬A¨2¨a©4°©6´A°q±D¸"¸qÀ!¹tÀA¹v¹+Ñ4FÑ+FÑGñ[Hñ IÜLMÈqÉDÐQRÉFÐTVÔWXÐZ[ÑW[ÑT[Ô^_Ô`aÑ^aÑTaÑLbÐegÐdgÔhiÑdiÐjkÑdkÐlmÑdmÔnoÑdoÐpqÐstÑptÑdtØ”‰T�A‰XñeÜ˜1™˜b 2™g™¨¬1¨a©4©´!´A±#©Ñ6¼¸¸1¹¸Q¹ÄÀAÁÀrÈAÈqÉDÐQRÉFÁ{ÑASÑ8SÑTñeUñ MVØWYÐZ\ÑW\Ô]^ÑW^Ô_`ÑW`ÐabÑWbÐdfÐikÑdkÐnoÑcoÑWoØ”�1‘‰W”qœ‘s‰]ñXÜ˜R ™T !™V¤a¨¡d¨B°°A±°a±©KÑ&8Ñ8ñX:Ü<=¸q¹DÀ¹FÀBÄqÈ!ÁtÁGÌaÔPQÉcÁMÑ<RÐUWÐTWÔXYÑTYÐZ[ÑT[Ð\]ÑT]Ô^_ÑT_Ð`aÐcdÑ`dÑTdÐfhÔijÑfjÐmnÑfnÑToÜˆa‰C��b‘‰M˜2œa ™d™7¤Q¤q¡S™=Ñ)¬A¨2¨a©4°©6´A°q±D¸"¸qÀ!¹tÀA¹v¹+Ñ4FÑ+FÑGñUHñ =IñXIñMJð LNÐPRÉ7ñMTñV€Dð �N‰NÓ˜tÑ#×-Ñ-Ó/°1Ò4Ð4Ñ4r=   c                  óø  — t        dt        t        «      } t        t        t        dz  dz
  t        «      }t        t        t        dz   t        «      }t        t        t        dz  dz   t        «      }t        | |g||gg«      }t        ||g|| gg«      }t        ||g| |gg«      }t        ||«      }|j                  ||dfk(  sJ ‚|j
                  |k(  sJ ‚|j                  |k(  sJ ‚|j                  t        k(  sJ ‚|j                  dk(  sJ ‚|  |k(  sJ ‚t        ||d«      }|j                  ||dfk(  sJ ‚|j
                  |k(  sJ ‚|j                  |k(  sJ ‚|j                  t        k(  sJ ‚|j                  dk(  sJ ‚t        |t        ||«      «      }	|	j                  |t        ||«      dfk(  sJ ‚|	j
                  |k(  sJ ‚|	j                  t        ||«      k(  sJ ‚|	j                  t        k(  sJ ‚|	j                  dk(  sJ ‚t        ddt        z  gddgg«      }
t        j                  |
t        «      x}}t        ||«      }|j                  ||dfk(  sJ ‚|j
                  |j                  cxk(  r|k(  sJ ‚ J ‚y )Nr.   r3   r/   rw   r   )r   r;   r"   r%   rM   râ  rã  r0  Úsignr#   r   rf  )r[   r\   r]   r^   rW  rZ  r\  rä  rå  ræ  Úmatrâ  Ú
controllerrç  s                 r>   Útest_MIMOFeedback_constructionr  f  sm  € Ü
˜1œa¤Ó
#€CÜ
œ1œa ™d Q™h¬Ó
*€CÜ
œ1œa !™e¤QÓ
'€CÜ
œ1œa ™d Q™h¬Ó
*€Cä" S¨# J°°c°
Ð#;Ó<€EÜ" S¨# J°°c°
Ð#;Ó<€EÜ" S¨# J°°c°
Ð#;Ó<€Eä	�e˜UÓ	#€BØ�7‰7�u˜e RÐ(Ò(Ð(Ð(Ø�7‰7�eÒÐÐØ�7‰7�eÒÐÐØ�6‰6”QŠ;Ðˆ;Ø�7‰7�bŠ=Ðˆ=ØˆSˆ6�RŠ<Ðˆ<ä	�e˜U AÓ	&€BØ�7‰7�u˜e QÐ'Ò'Ð'Ð'Ø�7‰7�eÒÐÐØ�7‰7�eÒÐÐØ�6‰6”QŠ;Ðˆ;Ø�7‰7�aŠ<Ðˆ<ä	�eœZ¨¨uÓ5Ó	6€BØ�7‰7�uœj¨°Ó6¸Ð;Ò;Ð;Ð;Ø�7‰7�eÒÐÐØ�7‰7”j ¨Ó.Ò.Ð.Ð.Ø�6‰6”QŠ;Ðˆ;Ø�7‰7�bŠ=Ðˆ=ä
�1�aœ‘c�(˜Q ˜FÐ#Ó
$€CÜ.×:Ñ:¸3ÄÓBÐB€Dˆ:Ü	�d˜JÓ	'€BØ�7‰7�t˜Z¨Ð,Ò,Ð,Ð,Ø�7‰7�b—g‘gÔ% Ò%Ð%Ñ%Ð%Ñ%r=   c                  ó   ‡‡‡‡‡‡	‡
‡‡‡— t        dt        t        «      Št        t        t        dz  dz
  t        «      Št        t        t        dz
  t        «      } t        t        t        dz  dz   t        «      }t        ddt        «      }t        dt        dz
  t        «      }t        ‰‰g| |gg«      Št        ‰| g|‰gg«      Št        j                  t	        d«      t        ¬«      Št        ‰|g||gg«      Š	t        |  | g| |gg«      Š
t        |  gg«      Št        | |gg«      Št        t        ˆˆfd„«       t        t        ˆˆˆfd„«       t        t        ˆˆfd„«       t        t        ˆfd	„«       t        t        ˆˆfd
„«       t        t        ˆ	ˆ
fd„«       t        t        ˆ	ˆ
fd„«       t        t        ˆfd„«       t        j                  t	        d«      t        ¬«      Št        t        ˆˆfd„«       y )Nr.   r3   r/   rw   ©r0  c                  ó   •— t        ‰ ‰«      S r{   ©r%   rß  s   €€r>   r?   z*test_MIMOFeedback_errors.<locals>.<lambda>Ÿ  s   ø€ œl¨3°Ó4€ r=   c                  ó0   •— t        t        ‰ ‰«      ‰«      S r{   )r%   r$   )rW  rZ  r\  s   €€€r>   r?   z*test_MIMOFeedback_errors.<locals>.<lambda>   s   ø€ œl¬<¸¸uÓ+EÀuÓM€ r=   c                  ó   •— t        ‰ ‰d«      S r÷   r  )rW  Útfm_6s   €€r>   r?   z*test_MIMOFeedback_errors.<locals>.<lambda>¢  ó   ø€ œ|¨E°5¸!Ó<€ r=   c                  ó   •— t        ‰ ‰ «      S r{   r  )Útfm_7s   €r>   r?   z*test_MIMOFeedback_errors.<locals>.<lambda>£  s   ø€ œ|¨E°5Ó9€ r=   c                  ó   •— t        ‰ ‰d«      S )Nr�   r  rY  s   €€r>   r?   z*test_MIMOFeedback_errors.<locals>.<lambda>¥  s   ø€ œ|¨E°5¸"Ó=€ r=   c                  ó   •— t        ‰‰ d«      S r÷   r  ©rl  r]  s   €€r>   r?   z*test_MIMOFeedback_errors.<locals>.<lambda>§  r  r=   c                  ó   •— t        ‰ ‰ «      S r{   r  r"  s   €€r>   r?   z*test_MIMOFeedback_errors.<locals>.<lambda>¨  s   ø€ œ|¨E°E°6Ó:€ r=   c                  ó   •— t        ‰ ‰ d«      S r÷   r  rb  s   €r>   r?   z*test_MIMOFeedback_errors.<locals>.<lambda>©  r  r=   c                  ó   •— t        ‰ ‰d«      S r÷   r  )rW  Útfm_8s   €€r>   r?   z*test_MIMOFeedback_errors.<locals>.<lambda>¬  r  r=   )	r   r;   r"   rf  r   r-   rY   rX   rI   )r]   r^   r`   rb   r[   r\   rW  rZ  r\  rl  r]  r  r  r&  s       @@@@@@@@@@r>   Útest_MIMOFeedback_errorsr'  �  s  ÿù€ Ü
˜1œa¤Ó
#€CÜ
œ1œa ™d Q™h¬Ó
*€CÜ
œ1œa !™e¤QÓ
'€CÜ
œ1œa ™d Q™h¬Ó
*€CÜ
˜1˜a¤Ó
#€CÜ
˜2œq 1™u¤aÓ
(€Cä" S¨# J°°c°
Ð#;Ó<€EÜ" S¨# J°°c°
Ð#;Ó<€EÜ"×.Ñ.¬s°1«v¼1Ô=€EÜ" S¨# J°°c°
Ð#;Ó<€EÜ" c T¨3 K°#°s°Ð#<Ó=€Eä" c T F 8Ó,€EÜ" S¨# J <Ó0€Eô Œ9Ô4Ô5Ü
Œ9ÕMÔNä
Œ:Ô<Ô=Ü
Œ:Ó9Ô:ä
Œ:Ô=Ô>ä
Œ:Ô<Ô=Ü
Œ:Ô:Ô;Ü
Œ:Ó<Ô=ä"×.Ñ.¬s°1«v¼1Ô=€EÜ
Œ:Ô<Õ=r=   c            
      óŽ  — t        dt        t        «      } t        t        t        dz
  t        «      }t        ddt        «      }t        dt        dz
  t        «      }t        j                  t	        d«      t        ¬«      }t        | |g||gg«      }t        | |g||gg«      }t        | |g| | gg«      }t        ||«      }t        |t        || «      d«      }	|j                  t        t        j                  dgdt        j                  gg«      k(  sJ ‚|	j                  t        dt        dz  z  t        dz  z   t        dz  t        z
  dz   z  dt        dz  z  t        dz  z
  t        dz  t        z
  dz   z  gt        dz   t        gg«      k(  sJ ‚|j                  «       t        t        ddt        z  t        «      t        ddt        «      ft        ddt        «      t        ddt        «      ff«      cxk(  r|j                  t        «      k(  sJ ‚ J ‚|	j                  d	d
¬«      t        t        t        dz   dt        dz  z  z   dt        dz  z  z
  t        dz  z   t        dz  dt        dz  z  z
  dt        dz  z  z   dt        dz  z  z
  t        z   t        «      t        dt        dz  z  dt        dz  z  z   t        dz  t        z
  dz   t        «      ft        ddt        «      t        t        dz   t        z   dt        «      ff«      k(  sJ ‚|	j                  d	¬«      t        t        t        dt        dz  z  t        dz  z
  z  t        dz  t        z
  dz   z  dt        dz  z  t        dz  z   t        dz  t        z
  dz   z  z   t        t        dz  t        z
  dz   dz  z  t        «      t        dt        dz  z  dt        dz  z  z   t        dz  t        z
  dz   t        «      ft        ddt        «      t        t        dz   t        z   dt        «      ff«      k(  sJ ‚|	j                  «       t        t        t        dt        dz  z  t        dt        z  dz
  z  z   dz   z  t        dz  t        z
  dz   t        «      t        dt        dz  z  t        dz
  z  t        dz  t        z
  dz   t        «      ft        ddt        «      t        t        dt        z
  z  dt        «      ff«      k(  sJ ‚|	j                  d
¬«      t        t        t        dz   t        z   t        dz  t        z
  dz   t        «      t        dt        dz  z  dt        dz  z  z   t        dz  t        z
  dz   t        «      ft        ddt        «      t        t        dz   t        z   dt        «      ff«      k(  sJ ‚|j                  «        | j                  «       k(  sJ ‚y )Nr.   rw   r/   r  r   r�   r1   r3   FT)Úcancelr®   r2   )r)  )r®   )r   r;   r"   rf  r   r%   r#   rï  r   r   ÚHalfr¸   rv  )
r[   r\   r]   r^   rW  rZ  r\  rl  ÚF_1ÚF_2s
             r>   Útest_MIMOFeedback_functionsr-  ¯  sÁ  € Ü
˜1œa¤Ó
#€CÜ
œ1œa !™e¤QÓ
'€CÜ
˜1˜a¤Ó
#€CÜ
˜2œq 1™u¤aÓ
(€Cä"×.Ñ.¬s°1«v¼1Ô=€EÜ" S¨# J°°c°
Ð#;Ó<€EÜ" c T¨3 K°#°s°Ð#<Ó=€EÜ" S¨# J°#°°s°Ð#<Ó=€Eô �u˜eÓ
$€CÜ
�uœj¨°°Ó7¸Ó
;€Cà�?‰?œf¤q§v¡v¨q k°A´q·v±v°;Ð%?Ó@Ò@Ð@Ð@Ø�?‰?œf¨¬1¨a©4©´!°Q±$©¼¸A¹Ä¹ÀA¹Ñ'FØ	
Œ1ˆa‰4‰”!�Q‘$‰œ˜A™¤™ A™Ñ&ð'(Ü+,¨a©4¨%´¨ð&5ó 6ò 6ð 6ð 6ð �8‰8‹:ÜÔ!1°!°Q´q±S¼!Ó!<Ü˜˜AœqÓ!ð!#Ü%5°a¸¼AÓ%>Ü˜˜AœqÓ!ð%#ð $ó 	%ôLð ),¯©Ô4JÓ(KòLð Lñ Lð Lð Lð �8‰8˜5¨ˆ8Ó.ÜÔ!1´1°a±4°%¸!¼A¸q¹D¹&±.À1ÄQÈÁTÁ6Ñ2IÌAÈqÉDÑ2PÔRSÐUVÑRVÐYZÔ[\Ð^_Ñ[_ÑY_ÑR_ÐbcÔdeÐghÑdhÑbhÑRhÐklÔmnÐpqÑmqÑkqÑRqÔtuÑRuÔwxÓ!yÜ˜œA˜q™D™ 1¤Q¨¡T¡6Ñ)¬1¨a©4´!©8°a©<¼Ó;ð!=Ü?OÐPQÐSTÔVWÓ?XÔZjÔlmÐopÑlpÐkpÔstÑktÐvwÔyzÓZ{Ð>|ð ~ó 	òð ð ð �8‰8˜5ˆ8Ó!ÜÔ!1´!°Q´q¸!±t±V¼aÀ¹d±]Ñ2CÄQÈÁTÌAÁXÐPQÁ\Ñ2RØ	ŒAˆq‰D‰”1�a‘4‰œ!˜Q™$¤™( Q™,Ñ'ñ3(Ü)*¬A¨q©D´1©H°q©L¸1Ñ+<Ñ)<¼aó"AÜBRÐSUÔVWÐYZÑVZÑSZÐ]^Ô_`ÐbcÑ_cÑ]cÑScÔefÐhiÑeiÔlmÑemÐpqÑeqÔstÓBuð!wä	˜!˜Q¤Ó	"Ô$4´a¸±d°U¼Q±YÀÄ1Ó$EÐFð Hó 	IòIð Ið Ið �8‰8‹:ÜÔ!1´!°R¼¸1¹±W¼qÀ!ÄAÁ#ÈÁ'¹{Ñ5JÈQÑ5NÑ2OÔQRÐTUÑQUÔXYÑQYÐ\]ÑQ]Ô_`Ó!aÜ˜œA˜q™D™¤! a¡%™¬!¨Q©$´©(°Q©,¼Ó:ð!<Ü>NÈqÐRSÔUVÓ>WÔYiÔjkÐmnÔqrÑmrÑjsÐuvÔxyÓYzÐ={ð }ó 	~ò~ð ~ð ~ð �8‰8˜4ˆ8Ó ÜÔ!1´1°a±4°%¼!±)¼QÀ¹TÄA¹XÈ¹\Ì1Ó!MÔO_Ð`bÔcdÐfgÑcgÑ`gÐjkÔlmÐopÑlpÑjpÑ`pÔrsÐuvÑrvÔyzÑrzÐ}~Ñr~ô  ABó  PCð  !DÜ	˜!˜Q¤Ó	"Ô$4´a¸±d°U¼Q±YÀÄ1Ó$EÐFð Hó 	IòIð Ið Ið �X‰X‹Zˆ=˜c˜TŸK™K›MÒ)Ð)Ñ)r=   c                  óö  ‡‡— t        t        t        dz  z  t        t        z  z   t        z
  t        t        z   t        «      Št        t        t
        z  t
        t        z  z   t        z
  t
        t
        «      Št        t         gg«      } | j                  | j                  | j                  fcxk(  rdk(  sJ ‚ J ‚| j                  t        t        t        t         «      «      «      k(  sJ ‚| j                  t        k(  sJ ‚t        t        t         gt        ‰gg«      }|j                  |j                  |j                  fcxk(  rdk(  sJ ‚ J ‚|j                  t        t        t        t        t         «      t        t        ‰«      «      «      k(  sJ ‚|j                  t        k(  sJ ‚t        t        t        gt        ‰ g‰ t        gg«      }|j                  |j                  |j                  fcxk(  rdk(  sJ ‚ J ‚|j                  t        t        t        t        t        «      t        t        ‰ «      t        ‰ t        «      «      «      k(  sJ ‚|j                  t        k(  sJ ‚t!        t"        ˆfd„«       t!        t"        ˆˆfd„«       t!        t"        ˆfd„«       t!        t"        ˆfd„«       t!        t$        d	„ «       t!        t$        d
„ «       t!        t"        ˆfd„«       t!        t"        d„ «       y )Nr/   )r.   r.   rª  )r3   r/   c                  ó6   •— t        t        gt        g‰ gg«      S r{   ©r"   re  rd  r¡   s   €r>   r?   z:test_TransferFunctionMatrix_construction.<locals>.<lambda>ë  s   ø€ Ô5¼°u¼s¸eÀcÀUÐ6KÓL€ r=   c                  ó6   •— t        t        ‰ gt        ‰gg«      S r{   ©r"   re  rc  r¥   s   €€r>   r?   z:test_TransferFunctionMatrix_construction.<locals>.<lambda>ì  s   ø€ Ô5¼¸S°zÄCÈÀ:Ð6NÓO€ r=   c                  ó4   •— t        t        gt        ‰ gg«      S r{   r2  r£   s   €r>   r?   z:test_TransferFunctionMatrix_construction.<locals>.<lambda>ï  s   ø€ Ô5¼°u¼sÀC¸jÐ6IÓJ€ r=   c                  ó4   •— t        t        t        g‰ gg«      S r{   r2  r£   s   €r>   r?   z:test_TransferFunctionMatrix_construction.<locals>.<lambda>ð  s   ø€ Ô5¼¼S°zÀCÀ5Ð6IÓJ€ r=   c                  óR   — t        t        t        gt        t	        ddg«      gg«      S ©Nr.   r/   )r"   re  rd  rc  r   r<   r=   r>   r?   z:test_TransferFunctionMatrix_construction.<locals>.<lambda>ó  s$   € Ô4´s¼C°jÄ3ÌÐPQÐSTÈvËÐBWÐ5XÓY€ r=   c                  óR   — t        t        t        ddg«      gt        t        gg«      S r6  )r"   re  r   rc  rd  r<   r=   r>   r?   z:test_TransferFunctionMatrix_construction.<locals>.<lambda>ô  s#   € Ô4´s¼FÀAÀqÀ6»NÐ6KÌcÔSVÈZÐ5XÓY€ r=   c                  ó0   •— t        t        t        ‰ g«      S r{   r0  r£   s   €r>   r?   z:test_TransferFunctionMatrix_construction.<locals>.<lambda>÷  s   ø€ Ô5´s¼CÀ°oÓF€ r=   c                  ó"   — t        t        g«      S r{   )r"   re  r<   r=   r>   r?   z:test_TransferFunctionMatrix_construction.<locals>.<lambda>ø  s   € Ô5´s°eÓ<€ r=   )r   rO   r;   rP   rN   rI   r"   rc  rg  rh  ri  rM   r   r0  re  rd  r-   rX   rY   )Útfm3_rŒ  r–  r^   r`   s      @@r>   Ú(test_TransferFunctionMatrix_constructionr;  ×  s1  ù€ Ü
œ2œa ™d™7¤R¬¡T™>¬BÑ.´´B±¼Ó
:€CÜ
œ2œa™4¤!¤R¡%™<¬!Ñ+¬Q´Ó
2€Cä"¤c T F 8Ó,€EØ�;‰;˜5×,Ñ,¨e×.>Ñ.>Ð?ÔIÀ6ÒIÐIÑIÐIÐIØ�:‰:œœu¤U¬C¨4£[Ó1Ó2Ò2Ð2Ð2Ø�9‰9œŠ>Ðˆ>ä!¤C¬#¨ ;´°c°
Ð";Ó<€DØ�:‰:˜$×*Ñ*¨D¯O©OÐ<ÔFÀÒFÐFÑFÐFÐFØ�9‰9œœe¤E¬#´¨tÓ$4´e¼CÀ³oÓFÓGÒGÐGÐGØ�8‰8”qŠ=Ðˆ=ä!¤C¬ :´°c°T¨{¸c¸TÄ3¸KÐ"HÓI€DØ�:‰:˜$×*Ñ*¨D¯O©OÐ<ÔFÀÒFÐFÑFÐFÐFØ�9‰9œœe¤E¬#¬s£O´U¼3ÀÀÓ5EÄuÈcÈTÔSVÓGWÓXÓYÒYÐYÐYØ�8‰8”qŠ=Ðˆ=ô Œ:ÓLÔMÜ
Œ:ÔOÔPô Œ:ÓJÔKÜ
Œ:ÓJÔKô Œ9ÑYÔZÜ
Œ9ÑYÔZô Œ:ÓFÔGÜ
Œ:Ñ<Õ=r=   c                  ó”$  — t        t        t        dz  z  t        t        z  z   t        z
  t        t        z   t        «      } t        t        t        dz   z  t        dz
  z  t        dz  dz   z  dgt        t        t        dz   z  t        t        dz  dz   z  z  gg«      }t        dt        z  dz   t        dz  dz
  z  gg«      }t        ddgddgg«      }t        j                  |t        «      t        t        t        t        dz
  z  t        dz   z  t        dz  dz   t        «      t        ddt        «      gt        t        dt        «      t        t        t        t        «      gg«      k(  sJ ‚t        j                  |t        «      t        t        dt        z  dz   t        dz  dz
  t        «      gg«      k(  sJ ‚t        j                  |t        «      t        t        ddt        «      t        ddt        «      gt        ddt        «      t        ddt        «      gg«      k(  sJ ‚t        t        gt        gg«      }| t        t         gt         gg«      k(  sJ ‚t        t        t        t        g| t         t         gg«      }| t        t         t         t         g|  t        t        gg«      k(  sJ ‚t        j                  |t        «      }t        t        t        t        z  t        z  t        t        dz  z  t        «      t        t        t        z  t        t        dz  t        z
  z  t        «      gg«      }|j                  t        d«      t        t        t        t        dz
  z  t        dz   z  t        dz  dz   t        «      t        ddt        «      gt        ddt        «      t        dt        t        «      gg«      k(  sJ ‚|j                  t        di«      t        t        t        t        dz
  z  t        dz   z  t        dz  dz   t        «      t        ddt        «      gt        ddt        «      t        dt        t        «      gg«      k(  sJ ‚|j                  t        dt        di«      t        t        t        t        dz
  z  t        dz   z  t        dz  dz   t        «      t        ddt        «      gt        ddt        «      t        dt        t        «      gg«      k(  sJ ‚|j                  t        d«      t        t        dt        z  t        z  t        t        dz  z  t        «      t        dt        z  t        t         t        dz  z   z  t        «      gg«      k(  sJ ‚|j                  t        d«      t        t        t        t        z  t        z  t        dz  t        «      t        t        t        z  t         t        dz  z   t        «      gg«      k(  sJ ‚|j                  t        d«      t        t        dt        t        dz  z  t        «      t        t        t        z  t        t        dz  z  t        «      gg«      k(  sJ ‚|j                  t        dt        dt        t        i«      t        t        t        t        z  t        dz  t        «      t        t        t         t        dz  z   t        «      gg«      k(  sJ ‚|j                  t!        d«      dz  t"        z   «      t%        dt        z  t        z  dt        z  z  dt"        z  t        z  t        z  dt        z  z  z
  t"        t        z  t         t        z  dt        z  dz  z
  t"        t        z  z   z  t        dt        z  t        z  dt        z  dz  z
  dt"        z  t        z  z   z  z   gg«      k(  sJ ‚|j'                  «       t        t        t        t        dz
  z  t        dz   z  t        dz  dz   t        «      t        t        dt        «      gt        ddt        «      t        t        t        t        «      gg«      k(  sJ ‚|j'                  «       t        t        t        t        z  t        z  t        t        dz  z  t        «      gt        t        t        z  t        t         t        dz  z   z  t        «      gg«      k(  sJ ‚|j'                  «       j'                  «       |k(  sJ ‚|j'                  «       j'                  «       |k(  sJ ‚|j)                  «       t+        d«       dz  t+        d«      t"        z  dz  z
  t+        d«       dz  t+        d«      t"        z  dz  z   t+        d«      dz  t+        d«      t"        z  dz  z
  t+        d«      dz  t+        d«      t"        z  dz  z   gg gg dgggk(  sJ ‚|j)                  «       ddgt+        t        «      t+        t        «       gggk(  sJ ‚|j)                  «       t,        t.         t+        t.        dz
  t.        dz   z  «      z   z  t,        t.         t+        t.        dz
  t.        dz   z  «      z
  z  gg t         t        z  ggt         gt,        t.         t+        t.        dz
  t.        dz   z  «      z   z  t,        t.         t+        t.        dz
  t.        dz   z  «      z
  z  gt         t        z  gggk(  sJ ‚|j1                  «       g d	¢g gg g ggk(  sJ ‚|j1                  «       dgdgggk(  sJ ‚|j1                  «       g g t        t        z  ggt         dt        z  z  t+        dt        z  t        z  t        dz  z   «      dt        z  z  z
  t         dt        z  z  t+        dt        z  t        z  t        dz  z   «      dt        z  z  z   gg t        t        z  gggk(  sJ ‚t        t3        t        dt        dz  dz
  t        «      t        t        dz  dt        z  z
  dz   dt        «      t        dt        t        «      «      gg«      }t        t5        t        t        dz  dz
  dt        dz  z  t        dz  z
  dt        z  z
  dz   t        «      t        dt        dz  z
  dt        dz  z  t        dz  z
  dt        z  z
  dz   t        «      «      gg«      }	|j7                  «       t        t        t        dz  dt        z  z
  dz   t        t        dz  dz
  z  t        «      gg«      k(  sJ ‚|	j7                  «       t        t        ddt        dz  z  t        dz  z
  dt        z  z
  dz   t        «      gg«      k(  sJ ‚|j9                  «       t        t        t        dz
  z  t        dz   z  t        dz  dz   t        «      t        ddt        «      t        t        dt        «      t        t        t        t        «      gk(  sJ ‚|j9                  «       t        t        t        z  t        z  t        t        dz  z  t        «      t        t        t        z  t        t         t        dz  z   z  t        «      gk(  sJ ‚|j9                  «       t3        t        dt        dz  dz
  t        «      t        t        dz  dt        z  z
  dz   dt        «      t        dt        t        «      «      gk(  sJ ‚|	j9                  «       t5        t        t        dz  dz
  dt        dz  z  t        dz  z
  dt        z  z
  dz   t        «      t        dt        dz  z
  dt        dz  z  t        dz  z
  dt        z  z
  dz   t        «      «      gk(  sJ ‚|j;                  «       t        t        t        t        d
z
  z  t        dz   z  t        dz  dz   t        «      t        ddt        «      ft        dt        z  dt        «      t        t        t        t        «      ff«      k(  sJ ‚|j                  t        dt        dt        di«      j;                  «       t        t        dt        t        «      t        dt        z  dt        dz  z  dz
  t        «      ff«      k(  sJ ‚t        t        t        dz  t        dz  z   t        z   t        t        dz  z
  t        «      t        t        dz   t        dz
  z  t        dz
  t        dz   z  t        «      gg«      }
|
j=                  «       t=        |
«      cxk(  rZt        t        t        dz   t        dz  z
  dz
  t        dz
  t        «      t        t        dz   t        dz   t        «      ff«      k(  sJ ‚ J ‚|j?                  «       t        t        t        dz  dt        dz  z  z
  dt        z  z
  t        dz  dz   t        «      t        ddt        «      ft        t        dt        «      t        t        t        t        «      ff«      k(  sJ ‚|
j?                  «       t        t        t        dz  t        dz  z   t        z   t        dz   t        z   t        «      t        t        dz  dt        z  z   dz
  t        dz  dt        z  z   dz
  t        «      ff«      k(  sJ ‚y )Nr/   r.   r3   r1   r4   r   r2   r�   )rw   r   r3   rŽ   r‰   rŠ   gTã¥›Ä 	@g
×£p=
@gÖÿ9Ì—@gTã¥›Ä @) r   rO   r;   rP   rN   r   rI   r"   rf  re  rd  rc  rS   r´   r¯   r±   r   r   r   Ú	transposeÚ
elem_polesr   r²   r&  Ú
elem_zerosr   r    r¸   Ú_flatr°   r   r®   )r`   r—  r˜  Úmat_3r  r€  ÚH_1ÚH_2ÚH_3ÚH_4ÚH_5s              r>   Ú%test_TransferFunctionMatrix_functionsrG  ú  s3  € Ü
œ2œa ™d™7¤R¬¡T™>¬BÑ.´´B±¼Ó
:€Cô Ü	
ŒA�‰E‰”A˜‘EÑ	œA˜q™D 1™HÑ	% qÐ)Ü	
ŒAŒq�1‰u‰I”qœ!˜Q™$ ™(‘|Ñ$Ð%ð
ó €Eô ˜q¤™s Q™w¬¨A©°©Ñ2Ð3Ð4Ó5€EÜ˜a ˜V a¨ VÐ,Ó-€EÜ!×-Ñ-¨e´QÓ7ÜÔ!1´!´Q¸±U±)¼QÀ¹UÑ2CÄQÈÁTÈAÁXÌqÓ!QÔScÐdeÐghÔjkÓSlÐ mÜ	œ!˜Q¤Ó	"Ô$4´Q¼¼1Ó$=Ð>ð @ó 	AòAð Að Aô "×-Ñ-¨e´QÓ7ÜÔ!1°!´A±#¸±'¼1¸a¹4À!¹8ÄQÓ!GÐ HÐIÓJòKð Kð Kä!×-Ñ-¨e´QÓ7ÜÔ!1°!°Q¼Ó!:Ô<LÈQÐPQÔSTÓ<UÐ VÜ	˜!˜Q¤Ó	"Ô$4°Q¸¼1Ó$=Ð>ð @ó 	AòAð Að Aô "¤C 5¬3¨% .Ó1€DØˆ5Ô*¬c¨T¨F´c°T°FÐ+;Ó<Ò<Ð<Ð<ä!¤C¬¬c ?°S¼3¸$ÄÀÐ4EÐ"FÓG€DØˆ5Ô*¬c¨T´C°4¼#¸Ð,>À#ÀÄsÌCÐ@PÐ+QÓRÒRÐRÐRô !×
,Ñ
,¨U´AÓ
6€CÜ
 Ô#3´A´a±C¼±E¼1¼QÀ¹T¹6Ä1Ó#EÔGWÔXYÔZ[ÑX[Ô]^Ô`aÐcdÑ`dÔghÑ`hÑ]iÔklÓGmÐ"nÐ!oÓ
p€CØ�8‰8”A�q‹>Ô3Ô6FÄqÌ!ÈaÉ%ÁyÔRSÐVWÑRWÑGXÔZ[Ð]^ÑZ^ÐabÑZbÔdeÓ6fÔhxÐyzÐ|}ô  @Aó  iBð  6Cô  FVð  WXð  Z[ô  ]^ó  F_ô  aqð  rsô  uvô  xyó  azð  E{ð  5|ó  }ò  }ð  }ð  }Ø�8‰8”Q˜�FÓÔ5Ô8HÌÌAÐPQÉEÉÔTUÐXYÑTYÑIZÔ\]Ð_`Ñ\`ÐcdÑ\dÔfgÓ8hÔjzÐ{|Ð~ô  BCó  kDð  8Eô  HXð  YZð  \]ô  _`ó  Haô  csð  tuô  wxô  z{ó  c|ð  G}ð  7~ó   ò  ð  ð  Ø�8‰8”Q˜œ1˜a�LÓ!Ô%;Ô>NÌqÔRSÐVWÑRWÉyÔZ[Ð^_ÑZ_ÑO`ÔbcÐefÑbfÐijÑbjÔlmÓ>nô  qAð  BCð  EFô  HIó  qJð  >Kô  N^ð  _`ð  bcô  efó  Ngô  iyð  z{ô  }~ô  @Aó  iBð  MCð  =Dó  &Eò  Eð  Eð  EØ�8‰8”A�q‹>Ô3Ô6FÀqÌÁsÌ1ÁuÌaÔPQÐSTÑPTÉfÔVWÓ6XÔZjÐklÔmnÑknÔpqÔtuÐsuÔxyÐ{|Ñx|Ñs|Ñp}ô  @Aó  [Bð  6Cð  5Dó  Eò  Eð  Eð  EØ�8‰8”A�q‹>Ô3Ô6FÄqÌÁsÌ1ÁuÌaÐQRÉdÔTUÓ6VÔXhÔijÔklÑilÔopÐnpÔstÐvwÑswÑnwÔyzÓX{Ð5|Ð4}Ó~Ò~Ð~Ð~Ø�8‰8”A�q‹>Ô3Ô6FÀqÌ!ÌAÈqÉDÉ&ÔRSÓ6TÔVfÔghÔijÑgjÔlmÔnoÐqrÑnrÑlrÔtuÓVvÐ5wÐ4xÓyÒyÐyÐyØ�8‰8”Q˜œ1˜a¤¤BÐ'Ó(Ô,BÔEUÔVXÔYZÑVZÔ\]Ð_`Ñ\`ÔbcÓEdÔfvÔwxÔ{}Ðz}ô  ABð  DEñ  AEñ  {Eô  GHó  gIð  EJð  DKó  -Lò  Lð  Lð  Lð ×Ñœa ›d 1™f¤q™jÓ)¬V°a¼±c¼!±e¸Q¼q¹S±kÀAÄaÁCÌÁEÌ!ÁGÈQÌqÉSÁMÑ6QÔSTÔUVÑSVÔYZÐXZÔ[\ÑX\Ð_`ÔabÑ_bÐcdÑ_dÑXdÔghÔijÑgjÑXjÑSkÔnoÐqsÔtuÑquÔvwÑqwÐz{Ô|}Ñz}Ð~ÑzÑqð  CDô  EFñ  CFô  GHñ  CHñ  rHñ  oIñ  TIð  6Jð  5Kó  .Lò  Lð  Lð  Lð �=‰=‹?Ô4Ô7GÌÌ1ÈqÉ5É	ÔSTÐWXÑSXÑHYÔ[\Ð^_Ñ[_ÐbcÑ[cÔefÓ7gÔiyÔz{Ð}~ô  ABó  jCð  7Dô  GWð  XYð  [\ô  ^_ó  G`ô  brô  stô  vwô  yzó  b{ð  F|ð  6}ó  ~ò  ~ð  ~ð  ~Ø�=‰=‹?Ô4Ô7GÌÌ!ÉÌAÉÌqÔQRÐTUÑQUÉvÔWXÓ7YÐ6ZÔ]mÔnoÔpqÑnqÔstÔwxÐvxÔ{|Ð~Ñ{Ñvñ  tAô  CDó  ^Eð  ]Fð  6Gó  Hò  Hð  Hð  HØ�=‰=‹?×$Ñ$Ó&¨#Ò-Ð-Ð-Ø�=‰=‹?×$Ñ$Ó&¨#Ò-Ð-Ð-ð �>‰>Ó¤4¨£7 (¨1¡*¬t°A«w´q©y¸©{Ñ":¼TÀ!»W¸HÀQ¹JÌÈaËÔQRÉÐSTÉÑ<TÔVZÐ[\ÓV]Ð^_ÑV_ÔbfÐghÓbiÔjkÑbkÐlmÑbmÑVmÔosÐtuÓovÐwxÑoxÔ{ð  ABó  |Cô  DEñ  |Eð  FGñ  |Gñ  pGð  "Hð  JLð  !MØ	ˆaˆSˆ	ð ò ð ð à�>‰>Ó ! Q ¬$¬q«'´D¼³G°8Ð)<Ð =Ð>Ò>Ð>Ð>Ø�?‰?Ó¤2¬ u¬t´T¸A±XÄÀqÁÑ4IÓ/JÑ'JÑ#KÌRÔRVÐQVÔY]Ô_cÐfgÑ_gÔjnÐqrÑjrÑ^sÓYtÑQtÑMuÐ"vÐxzÔ~Ð}ô  ACñ  ~Cð  }Dð  "EÜˆ#ˆ””d�UœT¤4¨!¡8¬d°Q©hÑ"7Ó8Ñ8Ñ9¼2Ä¸uÄtÌTÐTUÉXÔX\Ð_`ÑX`ÑLaÓGbÑ?bÑ;cÐdÔhiÐgiÔjlÑglÐfmÐnð!pò pð pð pð
 �>‰>Ó¢¨RÐ 0°2°r°(Ð;Ò;Ð;Ð;Ø�>‰>Ó !  q c 
˜|Ò+Ð+Ð+Ø�?‰?Ó " b¬2¬a©4¨&Ð!1Üˆ#ˆq”‰t‰*”t˜Aœb™D¤™G¤b¨!¡e™OÓ,¨a´©dÑ3Ñ
3´b°S¸!¼B¹$±ZÄ$ÀqÌÁtÌBÁwÔQSÐUVÑQVÁÓBWÐYZÔ[]ÑY]ÑB^Ñ5^Ð	_ÐacÔfhÔijÑfjÐekÐlð!nò nð nð nô
 !¤6Ô*:¸1¼aÀ¹dÀQ¹hÌÓ*JÔL\Ô]^Ð`aÑ]aÐdeÔfgÑdgÑ]gÐjkÑ]kÐmnÔpqÓLrô  uEð  FGô  IJô  LMó  uNó  $Oð  #Pð  "Qó  R€CÜ
 ¤8Ô,<¼QÀ¹TÀA¹XÀqÌÈAÉÁvÔPQÐSTÑPTÁ}ÐWXÔYZÑWZÑGZÐ]^ÑG^Ô`aÓ,bÔdtÐuvÔyzÐ|}Ñy}Ñu}ð  @Aô  BCð  EFñ  BFñ  @Fô  IJð  LMñ  IMñ  @Mð  PQô  RSñ  PSñ  @Sð  VWñ  @Wô  YZó  e[ó  $\ð  #]ð  "^ó  _€Cà�8‰8‹:Ô/Ô2BÄ1ÀaÁ4È!ÌAÉ#Á:ÐPQÁ>ÔSTÔVWÐYZÑVZÐ]^ÑV^ÑS_ÔabÓ2cÐ1dÐ0eÓfÒfÐfÐfØ�8‰8‹:Ô/Ô2BÀ1ÀaÌÈ1ÉÁfÌqÐRSÉtÁmÐVWÔXYÑVYÑFYÐ\]ÑF]Ô_`Ó2aÐ1bÐ0cÓdÒdÐdÐdð �9‰9‹;Ô+¬A¬q°1©u©I´q¸1±uÑ,=¼qÀ!¹tÀa¹xÌÓKÔM]Ð^_ÐabÔdeÓMfÔhxÔyzÐ|}ô  @Aó  iBô  DTô  UVô  XYô  [\ó  D]ð  ^ò  ^ð  ^ð  ^Ø�9‰9‹;Ô+¬A¬a©C´©E´1´Q¸±T±6¼1Ó=Ô?OÔPQÔRSÑPSÔUVÔYZÐXZÔ]^Ð`aÑ]aÑXaÑUbÔdeÓ?fÐgÒgÐgÐgØ�9‰9‹;œ6Ô"2°1´a¸±d¸Q±hÄÓ"BÔDTÔUVÐXYÑUYÐ\]Ô^_Ñ\_ÑU_ÐbcÑUcÐefÔhiÓDjÔl|Ð}~ô  ABô  DEó  mFó  Gð  Hò  Hð  Hð  HØ�9‰9‹;œ8Ô$4´Q¸±T¸A±X¸qÄÀAÁ¹vÌÈ1É¹}ÈqÔQRÉsÑ?RÐUVÑ?VÔXYÓ$ZÔ\lÐmnÔqrÐtuÑquÑmuÐwxÔyzÐ|}Ñy}Ñw}ô  ABð  DEñ  AEñ  xEð  HIô  JKñ  HKñ  xKð  NOñ  xOô  QRó  ]Só  Tð  Uò  Uð  Uð  Uð �9‰9‹;ÜÔ!1´!´Q¸±W±+¼qÀ3¹wÑ2GÌÈAÉÐPSÉÔUVÓ!WÔYiÐjmÐopÔrsÓYtÐ uô  yIð  JMô  NOñ  JOð  QRô  TUó  yVô  Xhô  ijô  lmô  opó  Xqð  xrð   só  	tòtð tð tà�8‰8”Q�uœa ¤a¨Ð*Ó+×1Ñ1Ó3ÜÔ!1Ð2eÔghÔjkÓ!lÜÐMÌaÑOÐQTÔUVÐXYÑUYÑQYð  ]Oñ  ROô  QRó  	Sð!Tð  Vó 	WòWð Wð Wô !Ô#3´A°q±D¼1¸a¹4±KÄ!±OÄQÌÈAÉÁXÌqÓ#QÜœ!˜a™%¤! a¡%™¬1¨q©5´1°q±5©/¼1Ó=ð#?ð "@ó A€Cð �<‰<‹>œX c›]ô uÜÔ!1´1°a±4°%¼!¸Q¹$±,ÀÑ2BÄAÈÁEÌ1Ó!MÔO_Ô`aÐdeÑ`eÔghÐklÑglÔnoÓOpÐ qÐsÓtòuð uñ uð uð uð
 �J‰J‹LÜ%Ô(8¼¸A¹ÀÄ!ÀQÁ$Á¹ÈÌ1ÉÑ9LÌaÐQRÉdÐUVÉhÔXYÓ(ZÔ\lÐmnÐpqÔstÓ\uÐ'vÜœa ¤AÓ&Ô(8¼¼A¼qÓ(AÐBð'Dó EòEð Fð Eð �:‰:‹<ÜÔ!1´!°Q±$¼¸A¹±+Ä±/ÄAÀqÁDÀ5Ì1Á9ÌaÓ!PÔRbÔcdÐfgÑcgÐjkÔlmÑjmÑcmÐpqÑcqÔstÐvwÑswÐz{Ô|}Ñz}Ñs}ð  ABñ  tBô  DEó  SFð  !Gð   Ió  	JòJð Jñ Jr=   c                  óö  — t        dt        t        z  t        z   t        «      } t	        | t
        d«      \  }}t        t        |d   z  |d   z   t        |d   z  |d   z   t        «      }t        t        t
        z  dt        t        t
        z  dz  z   z  z  t
        dt        t        t
        z  dz  z   z  z  z   t        t         t        t
        z  dz  z   t        t        t
        z  dz  z   z  z   t        «      }t        j                  |j                  «       |j                  «       z
  j                  «       j                  k(  sJ ‚t        dt        t        z  t        z   t        «      } t	        | t
        d«      \  }}t        |d   t        |d   z  |d   z   t        «      }t        t
        t        z  t        t         t        t
        z  z   t        z  z   t        «      }t        j                  |j                  «       |j                  «       z
  j                  «       j                  k(  sJ ‚t        dt        t        z  t        z   t        «      } t	        | t
        d«      \  }}t        t        |d   z  t        |d   z  |d   z   t        «      }t        t        t
        z  t        t        t
        z  z   z  t        t        t        t        t
        z  z   z  z
  t        «      }t        j                  |j                  «       |j                  «       z
  j                  «       j                  k(  sJ ‚t        dt        t        z  t        z   t        «      } t	        | t
        d«      \  }}t        t        |d   z  |d   z   t        |d   z  |d   z   t        «      }t        t        dz  t
        z  dt        dt        z  t
        z  dz  z   z  z  dt
        z  dt        dt        z  t
        z  dz  z   z  z  z   t        t         dt        z  t
        z  dz  z   t        dt        z  t
        z  dz  z   z  z   t        «      }t        j                  |j                  «       |j                  «       z
  j                  «       j                  k(  sJ ‚y )	Nr.   r6   r   r/   g333333Ó?r3   r’   r8   )
r   rS   r;   rT   r'   ÚTr   ÚZeror   rK   )rZ   ÚnumZÚdenZÚtf_test_bilinearÚtf_test_manualÚtf_test_forwardÚtf_test_backwardÚtf_test_gbts           r>   Útest_TransferFunction_gbtrR  b  s•  € ä	˜!œQœq™S¤™U¤AÓ	&€BÜ�Rœ˜C“�J€Dˆ$ä'¬¨D°©G©°d¸1±gÑ(=¼qÀ4ÈÁ7¹{ÈTÐRSÉWÑ?TÔVWÓXÐä%¤a¬!¡e¨Q´´A´a±C¸±E±	©]Ñ&;¼aÀÄAÌÌ!ÉÈAÉÁIÁÑ>OÑ&OÔQRÔWXÐVXÔ[\Ô]^Ñ[^Ð_`Ñ[`ÑV`ÔcdÔghÔijÑgjÐklÑglÑclÑUmÑQmÔopÓq€Nä�6‰6Ð&×/Ñ/Ó1°.×2IÑ2IÓ2KÑK×UÑUÓW×[Ñ[Ò[Ð[Ð[ä	˜!œQœq™S¤™U¤AÓ	&€BÜ�Rœ˜A“�J€Dˆ$ä& t¨A¡w´°$°q±'±	¸$¸q¹'Ñ0AÄ1ÓE€Oä%¤a¬¡c¬1´°´Q´q±S±¼!©|Ñ+;¼QÓ?€Nä�6‰6�o×.Ñ.Ó0°×1HÑ1HÓ1JÑJ×TÑTÓV×ZÑZÒZÐZÐZä	˜!œQœq™S¤™U¤AÓ	&€BÜ�Rœ˜A“�J€Dˆ$ä'¬¨$¨q©'©	´1°T¸!±W±9¸TÀ!¹WÑ3DÄaÓHÐä%¤a¬!¡e¬Q´´1±©W¡o´q¼1¼aÄ!ÄAÁ#¹g¹;±ÌÓJ€Nä�6‰6Ð&×/Ñ/Ó1°.×2IÑ2IÓ2KÑK×UÑUÓW×[Ñ[Ò[Ð[Ð[ä	˜!œQœq™S¤™U¤AÓ	&€BÜ�Rœ˜C“�J€Dˆ$ä"¤1 T¨!¡W¡9¨T°!©WÑ#4´a¸¸Q¹±iÀÀQÁÑ6GÌÓK€Kä%¤a¨¡c¬!¡e¨R´°Q´q±S¼±U¸2±X±Ñ->Ñ&?À!ÄAÁ#ÀrÌ1ÈqÔQRÉsÔSTÉuÐUWÉxÉ<ÑGXÑBYÑ&YÔ[\ÔabÐ`bÐefÔghÑehÔijÑejÐkmÑemÑ`mÔpqÐtuÔvwÑtwÔxyÑtyÐz|Ñt|Ñp|Ñ_}Ñ[}ô  @Aó  B€Nä�6‰6�k×*Ñ*Ó,¨^×-DÑ-DÓ-FÑF×PÑPÓR×VÑVÒVÐVÑVr=   c                  ó†  — t        dt        t        z  t        z   t        «      } t	        | t
        «      \  }}t        t        |d   z  |d   z   t        |d   z  |d   z   t        «      }t        t        t
        z  dt        t        t
        z  dz  z   z  z  t
        dt        t        t
        z  dz  z   z  z  z   t        t         t        t
        z  dz  z   t        t        t
        z  dz  z   z  z   t        «      }t        j                  |j                  «       |j                  «       z
  j                  «       j                  k(  sJ ‚y )Nr.   r   r/   )
r   rS   r;   rT   r(   rI  r   rJ  r   rK   )rZ   rK  rL  rM  rN  s        r>   Útest_TransferFunction_bilinearrT  ˆ  s  € ä	˜!œQœq™S¤™U¤AÓ	&€BÜ˜"œa“�J€Dˆ$ä'¬¨$¨q©'©	°$°q±'Ñ(9¼1¸TÀ!¹W¹9ÀTÈ!ÁWÑ;LÌaÓPÐä%¤a¬!¡e¨Q´´A´a±C¸±E±	©]Ñ&;¼aÀÄAÌÌ!ÉÈAÉÁIÁÑ>OÑ&OÔQRÔWXÐVXÔ[\Ô]^Ñ[^Ð_`Ñ[`ÑV`ÔcdÔghÔijÑgjÐklÑglÑclÑUmÑQmÔopÓq€Nä�6‰6Ð&×/Ñ/Ó1°.×2IÑ2IÓ2KÑK×UÑUÓW×[Ñ[Ò[Ð[Ñ[r=   c                  óÊ  — t        dt        t        z  t        z   t        «      } t	        | t
        «      \  }}t        |d   t        |d   z  |d   z   t        «      }t        t
        t        z  t        t         t        t
        z  z   t        z  z   t        «      }t        j                  |j                  «       |j                  «       z
  j                  «       j                  k(  sJ ‚y ©Nr.   r   )
r   rS   r;   rT   r)   rI  r   rJ  r   rK   )rZ   rK  rL  rO  rN  s        r>   Ú"test_TransferFunction_forward_diffrW  “  s¨   € ä	˜!œQœq™S¤™U¤AÓ	&€BÜ˜b¤!Ó$�J€Dˆ$ä& t¨A¡w´°$°q±'±	¸$¸q¹'Ñ0AÄ1ÓE€Oä%¤a¬¡c¬1´°´Q´q±S±¼!©|Ñ+;¼QÓ?€Nä�6‰6�o×.Ñ.Ó0°×1HÑ1HÓ1JÑJ×TÑTÓV×ZÑZÒZÐZÑZr=   c                  ó  — t        dt        t        z  t        z   t        «      } t	        | t
        «      \  }}t        t        |d   z  |d   z   t        |d   z  |d   z   t        «      }t        t        t
        z  t        t        t
        z  z   z  t        t        t        t        t
        z  z   z  z
  t        «      }t        j                  |j                  «       |j                  «       z
  j                  «       j                  k(  sJ ‚y rV  )
r   rS   r;   rT   r*   rI  r   rJ  r   rK   )rZ   rK  rL  rP  rN  s        r>   Ú#test_TransferFunction_backward_diffrY  ž  sÀ   € ä	˜!œQœq™S¤™U¤AÓ	&€BÜ˜r¤1Ó%�J€Dˆ$ä'¬¨$¨q©'©	°$°q±'Ñ(9¼1¸TÀ!¹W¹9ÀTÈ!ÁWÑ;LÌaÓPÐä%¤a¬!¡e¬Q´´1±©W¡o´q¼1¼aÄ!ÄAÁ#¹g¹;±ÌÓJ€Nä�6‰6Ð&×/Ñ/Ó1°.×2IÑ2IÓ2KÑK×UÑUÓW×[Ñ[Ò[Ð[Ñ[r=   c            	      ó<  ‡‡‡— t        dt        dz  dz   t        «      } t        t        dz  dt        «      }t        dt        t        z  t        z   t        «      Št        t        dz   t        t        t        z  «      z  t        dz  dz   t        «      Št        |g‰gg«      Št        | «      ddt        dt        d«      z  «      z  t        z  z   k(  sJ ‚t        |«      dk(  sJ ‚t        t        ˆfd	„«       t        t        ˆfd
„«       t        t        ˆfd„«       y )Nr’   r3   r.   r/   iLÿÿÿé´   é   r   c                  ó   •— t        ‰ «      S r{   ©r+   r¡   s   €r>   r?   z4test_TransferFunction_phase_margin.<locals>.<lambda>´  s   ø€ ¬°SÓ(9€ r=   c                  ó   •— t        ‰ «      S r{   r^  r©   s   €r>   r?   z4test_TransferFunction_phase_margin.<locals>.<lambda>µ  s   ø€ œ|¨CÓ0€ r=   c                  ó,   •— t        t        ‰ «      «      S r{   )r+   r#   ©Útf_ms   €r>   r?   z4test_TransferFunction_phase_margin.<locals>.<lambda>¶  s   ø€ œ|¬J°tÓ,<Ó=€ r=   )r   rI   r;   rS   rT   r   rª   r"   r+   r   r   r   r-   r¶   rX   ©r[   r\   r]   r^   rb  s     @@@r>   Ú"test_TransferFunction_phase_marginrd  ©  sÞ   ú€ ä
˜2œq !™t a™x¬Ó
+€CÜ
œ1˜a™4 ¤QÓ
'€CÜ
˜1œa¤™c¤!™e¤QÓ
'€CÜ
œA ™E¤3¤q¬¡u£:Ñ-¬q°!©t°a©x¼Ó
;€CÜ! C 5¨#¨ -Ó0€Dä˜Ó  s¬4°´$°r³(±
Ó+;Ñ';¼BÑ'>Ñ >Ò>Ð>Ð>Ü˜Ó Ò!Ð!Ð!ä
ÔÓ 9Ô:Ü
Œ:Ó0Ô1Ü
Œ:Ó=Õ>r=   c                  ó˜  ‡‡‡— t        t        dz  dt        dz   z  t        dz
  z  t        dz
  z  t        «      } t        t        dz  dt        z  z   dz   dt        «      }t        dt        t        z  t        z   t        «      Št        t        dz   t	        t        t
        z  «      z  t        dz  dz   t        «      Št        |g‰gg«      Št        | «      dt        t        d«      dz  «      z  t        d«      z  k(  sJ ‚t        |«      t        k(  sJ ‚t        t        ˆfd„«       t        t        ˆfd	„«       t        t        ˆfd
„«       y )Nr/   r2   r.   r’   iìÿÿÿr8   i  c                  ó   •— t        ‰ «      S r{   ©r,   r¡   s   €r>   r?   z3test_TransferFunction_gain_margin.<locals>.<lambda>Ã  s   ø€ ¬°CÓ(8€ r=   c                  ó   •— t        ‰ «      S r{   rg  r©   s   €r>   r?   z3test_TransferFunction_gain_margin.<locals>.<lambda>Ä  s   ø€ œ{¨3Ó/€ r=   c                  ó,   •— t        t        ‰ «      «      S r{   )r,   r#   ra  s   €r>   r?   z3test_TransferFunction_gain_margin.<locals>.<lambda>Å  s   ø€ œ{¬:°dÓ+;Ó<€ r=   )r   r;   rS   rT   r   rª   r"   r,   r   r   r	   r-   r¶   rX   rc  s     @@@r>   Ú!test_TransferFunction_gain_marginrj  ¸  sý   ú€ ä
œ1˜a™4 ¤A a¡C¡¬!¨A©#¡´°"±Ñ!5´qÓ
9€CÜ
œ1˜a™4 !¤A¡#™:¨™>¨1¬aÓ
0€CÜ
˜1œa¤™c¤!™e¤QÓ
'€CÜ
œA ™E¤3¤q¬¡u£:Ñ-¬q°!©t°a©x¼Ó
;€CÜ! C 5¨#¨ -Ó0€Dä�sÓ˜s¤3¤q¨£t¨C¡x£=Ñ0´°R³Ñ8Ò8Ð8Ð8Ü�sÓœrÒ!Ð!Ð!ä
ÔÓ 8Ô9Ü
Œ:Ó/Ô0Ü
Œ:Ó<Õ=r=   c            
      ó.  — t        ddgddgg«      } t        ddg«      }t        ddgg«      }t        dg«      }t        | |||«      }|j                  t        ddgddgg«      k(  sJ ‚|j                  t        ddg«      k(  sJ ‚|j                  t        ddgg«      k(  sJ ‚|j
                  t        dg«      k(  sJ ‚|j                  t        ddgddgg«      t        dgdgg«      t        ddgg«      t        dgg«      fk(  sJ ‚t        t        t        g«      t        t        g«      t        t        g«      t        t        g«      «      }|j                  t        t        gg«      k(  sJ ‚|j                  t        t        gg«      k(  sJ ‚|j                  t        t        gg«      k(  sJ ‚|j
                  t        t        gg«      k(  sJ ‚|j                  t        t        gg«      t        t        gg«      t        t        gg«      t        t        gg«      fk(  sJ ‚t        t        ddgddgg«      t        ddgddgg«      t        ddgddgg«      t        ddgddgg«      «      }|j                  t        ddgddgg«      k(  sJ ‚|j                  t        ddgddgg«      k(  sJ ‚|j                  t        ddgddgg«      k(  sJ ‚|j
                  t        ddgddgg«      k(  sJ ‚|j                  t        ddgddgg«      t        ddgddgg«      t        ddgddgg«      t        ddgddgg«      fk(  sJ ‚t        t        t        gt        t        gg«      }t        t        t        gt        t        gg«      }t        t        t         gt"        t$        gg«      }	t        t&        t(        gt*        t,        gg«      }
t        |||	|
«      }|j                  t        t        t        gt        t        gg«      k(  sJ ‚|j                  t        t        t        gt        t        gg«      k(  sJ ‚|j                  t        t        t         gt"        t$        gg«      k(  sJ ‚|j
                  t        t&        t(        gt*        t,        gg«      k(  sJ ‚|j                  t        t        t        gt        t        gg«      t        t        t        gt        t        gg«      t        t        t         gt"        t$        gg«      t        t&        t(        gt*        t,        gg«      fk(  sJ ‚t        «       }|j                  t        dgg«      t        dgg«      t        dgg«      t        dgg«      fk(  sJ ‚t        ddgddgg«      }t        ddg«      }t        ||«      }|j                  t        ddgddgg«      k(  sJ ‚|j                  t        ddg«      k(  sJ ‚|j                  t        ddgg«      k(  sJ ‚|j
                  t        dgg«      k(  sJ ‚|j                  t        ddgddgg«      t        dgdgg«      t        ddgg«      t        dgg«      fk(  sJ ‚|j.                  dk(  sJ ‚|j.                  dk(  sJ ‚|j.                  dk(  sJ ‚|j.                  dk(  sJ ‚|j.                  dk(  sJ ‚|j.                  dk(  sJ ‚t1        t2        d	„ «       t1        t2        d
„ «       t1        t2        d„ «       t1        t2        d„ «       t1        t4        d„ «       t1        t4        d„ «       y )Nr   r.   ç      ø¿r�   r6   r/   TFc            	      ó¼   — t        t        t        t        dz   dz  g«      t        t        dz   g«      t        t        dz  dz
  g«      t        dt        z  g«      «      S r6  ©r&   r   r;   r<   r=   r>   r?   z.test_StateSpace_construction.<locals>.<lambda>%  sI   € œz¬&´!´a¸±c¸A±X°Ó*?ÄÌÈ1ÉÈÃÜ*0´!°Q±$¸±(°Ó*<¼fÀaÌÁcÀU»mó M€ r=   c            	      ó¼   — t        t        t        g«      t        t        dz   t        dz  dz   g«      t        t        dz  dz
  g«      t        dt        z  g«      «      S )Nr.   r3   r/   rn  r<   r=   r>   r?   z.test_StateSpace_construction.<locals>.<lambda>'  sI   € œz¬&´!°«+´v¼qÀ¹sÄAÀqÁDÈ1ÁH¸oÓ7NÜ*0´!°Q±$¸±(°Ó*<¼fÀaÌÁcÀU»mó M€ r=   c            
      óÔ   — t        t        t        g«      t        t        dz   g«      t        t        dz  dz
  gt        dz  dt        z  z   dz   gg«      t        dt        z  g«      «      S r6  rn  r<   r=   r>   r?   z.test_StateSpace_construction.<locals>.<lambda>)  s\   € œz¬&´!°«+´v¼qÀ¹s¸e³}Ü*0´1°a±4¸!±8°*¼qÀ!¹tÀaÌÁc¹zÈA¹~Ð>NÐ1OÓ*PÔRXÐZ[Ô\]ÑZ]ÐY^ÓR_ó a€ r=   c            
      óö   — t        t        t         t         gt        dgg«      t        t        dz  dgdt        gg«      t        dt        gg«      t        dt        z  dt        z  gt        t        gg«      «      S )Nr   r/   rn  r<   r=   r>   r?   z.test_StateSpace_construction.<locals>.<lambda>+  sh   € œz¬&´A°2¼°r°(¼QÀ¸FÐ1CÓ*DÜ06¼¸1¹¸a¸À1ÄaÀ&Ð7IÓ0JÜ06¸¼A¸°xÓ0@Ü06¸¼1¹¸aÄ¹c¸
ÄQÌÀFÐ7KÓ0Ló N€ r=   c                  óH   — t        t        dz  t        dz   dt        z  d«      S rŸ   )r&   r;   r<   r=   r>   r?   z.test_StateSpace_construction.<locals>.<lambda>1  s   € œj¬¨A©¬q°©s°A´a±C¸Ó;€ r=   c                  ó\   — t        t        ddg«      t        dg«      t        dg«      d«      S )Nr/   r6   rw   r.   r   )r&   r   r<   r=   r>   r?   z.test_StateSpace_construction.<locals>.<lambda>2  s)   € œj¬°°C°Ó)9¼6À2À$»<Ü)/°°«°aó9€ r=   )r   r&   Ústate_matrixÚinput_matrixÚoutput_matrixÚfeedforward_matrixrM   rN   rO   rP   Úa3rQ   rR   rW   Úb3Úc0rÒ   Úc2Úc3rÓ   rÔ   rÕ   Úd3Úis_SISOr-   r   rY   )ÚA1ÚB1ÚC1ÚD1Úss1Úss2Úss3ÚA4ÚB4ÚC4ÚD4Úss4Úss5ÚA6ÚB6Úss6s                   r>   Útest_StateSpace_constructionr�  È  s"  € ä	�!�Q�˜!˜Q˜Ð Ó	!€BÜ	��A�‹€BÜ	�!�Q��Ó	€BÜ	��‹€BÜ
�R˜˜R Ó
$€Cà×Ñœv¨¨1 v°°1¨vÐ&6Ó7Ò7Ð7Ð7Ø×Ñœv q¨! f›~Ò-Ð-Ð-Ø×Ñ¤¨¨A¨ xÓ 0Ò0Ð0Ð0Ø×!Ñ!¤V¨Q¨C£[Ò0Ð0Ð0Ø�8‰8œ  A ¨¨A¨Ð/Ó0´&¸1¸#À¸s¸Ó2DÄfÈqÐRSÈfÈXÓFVÔX^ÐabÐ`cÐ_dÓXeÐfÒfÐfÐfô ”VœR˜D“\¤6¬2¨$£<ÜœB˜4“L¤&¬"¨£,ó0€Cð ×Ñœv¬ t f›~Ò-Ð-Ð-Ø×Ñœv¬ t f›~Ò-Ð-Ð-Ø×Ñ¤¬¨ v£Ò.Ð.Ð.Ø×!Ñ!¤V¬b¨T¨F£^Ò3Ð3Ð3Ø�8‰8œ¤ ˜v›¬´°¨v«¼ÄÀ¸v»ÌÔQSÐPTÈvËÐWÒWÐWÐWô ”V˜d B˜Z¨!¨Q¨Ð0Ó1Ü˜S !˜H q¨! fÐ-Ó.Ü˜Q ˜F Q¨ FÐ+Ó,Ü˜Q ˜F Q¨ FÐ+Ó,ó.€Cð
 ×Ñœv¨¨b z°A¸°7Ð&;Ó<Ò<Ð<Ð<Ø×Ñœv¨¨Q x°!°Q°Ð&8Ó9Ò9Ð9Ð9Ø×Ñ¤¨¨A¨°°A°Ð'7Ó 8Ò8Ð8Ð8Ø×!Ñ!¤V¨a°¨V°a¸°VÐ,<Ó%=Ò=Ð=Ð=Ø�8‰8œ  r 
Ø!" Q ð )ó *ä  a Ø!" A ð (ó )ä  A Ø!" A ð (ó )ä  A Ø!" A ð (ó )ð*ò *ð *ð *ô 
”"”b�œB¤˜8Ð$Ó	%€BÜ	”"”b�œB¤˜8Ð$Ó	%€BÜ	”"”b�œB¤˜8Ð$Ó	%€BÜ	”"”b�œB¤˜8Ð$Ó	%€BÜ
�R˜˜R Ó
$€Cà×Ñœv¬¬B x´"´b°Ð&:Ó;Ò;Ð;Ð;Ø×Ñœv¬¬B x´"´b°Ð&:Ó;Ò;Ð;Ð;Ø×Ñ¤¬¬R¨´2´r°(Ð';Ó <Ò<Ð<Ð<Ø×!Ñ!¤V¬b´"¨X¼¼B°xÐ,@Ó%AÒAÐAÐAØ�8‰8œ¤¤R Ü!#¤R ð *ó +ä¤¤R Ü!#¤R ð *ó +ä¤¤R Ü!#¤R ð *ó +ä¤¤R Ü!#¤R ð *ó +ð,ò ,ð ,ð ,ô ‹,€CØ�8‰8œ  ˜u›¤v°¨s¨e£}´f¸q¸c¸U³mÄVÈaÈSÈEÃ]ÐSÒSÐSÐSä	�!�Q�˜!˜Q˜Ð Ó	!€BÜ	��A�‹€BÜ
�R˜Ó
€Cà×Ñœv¨¨1 v°°1¨vÐ&6Ó7Ò7Ð7Ð7Ø×Ñ¤¨¨1 v£Ò.Ð.Ð.Ø×Ñ¤¨¨A¨ xÓ 0Ò0Ð0Ð0Ø×!Ñ!¤V¨a¨S¨E£]Ò2Ð2Ð2Ø�8‰8œ  A Ø!" A ð (ó )ä  Ø!" ð %ó &ä  A ˜xÓ(Ü  ˜u›ð'ò 'ð 'ð 'ð �;‰;˜$ÒÐÐØ�;‰;˜$ÒÐÐØ�;‰;˜%ÒÐÐØ�;‰;˜%ÒÐÐØ�;‰;˜$ÒÐÐØ�;‰;˜$ÒÐÐô Œ:ñ Mô Nä
Œ:ñ Mô Nä
Œ:ñ aô bä
Œ:ñ Nô Oô Œ9Ñ;Ô<Ü
Œ9ñ 9õ :r=   c                  óT  ‡
‡‡‡— t        ddgddgg«      } t        ddgddgg«      }t        ddgddgg«      }t        ddgdd	gg«      }t        | |||«      Š
t        g d
¢g d¢g d¢g«      }t        ddgddgddgg«      }t        g d¢g d¢g«      }t        ddgddgg«      }t        ||||«      Št        «       Št        t        dg«      t        dg«      t        dg«      t        dg«      «      Št        t        g d¢g d¢g d¢g d¢g d¢g«      t        ddgddgddgddgddgg«      t        g d¢g d¢g«      t        ddgddgg«      «      }t        t        g d¢g d¢g d¢g d¢g d¢g«      t        ddgddgddgddgddgg«      t        g d ¢g d!¢g«      t        d"d#gddgg«      «      }	‰
‰z   |k(  sJ ‚‰
‰z  |	k(  sJ ‚‰d$z   t        t        dgg«      t        dgg«      t        dgg«      t        d$gg«      «      k(  sJ ‚‰d%z  t        t        dgg«      t        dgg«      t        d&gg«      t        d'gg«      «      k(  sJ ‚d%‰z  t        t        dgg«      t        d(gg«      t        dgg«      t        d'gg«      «      k(  sJ ‚t        t        ˆ
ˆfd)„«       t        t        ˆˆfd*„«       y )+Nr1   r.   r/   r‹   r2   éüÿÿÿr   r3   rw   ©r‹   r1   r/   ©rw   r‹   r   ©r/   r2   r3   r�   ©r1   r/   r‹   ©r.   r1   r3   ©r1   r.   r   r   r   ©r/   r‹   r   r   r   ©r   r   r‹   r1   r/   ©r   r   rw   r‹   r   ©r   r   r/   r2   r3   ©r/   r‘  r1   r/   r‹   ©r   r.   r.   r1   r3   r5   )r‹   r1   r/   r   r   )rw   r‹   r   r   r   )r/   r2   r3   r   r   )é   é   é÷ÿÿÿr1   r.   )éñÿÿÿéîÿÿÿr   r/   r‹   éöÿÿÿrž  r¡  )rš   rš   r‹   r/   r‘  )r3   r�   éúÿÿÿr   r.   r¤  rš   r6   rÞ  ç      @g      @rŽ   c                  ó   •— ‰ ‰z   S r{   r<   )rƒ  r…  s   €€r>   r?   z%test_StateSpace_add.<locals>.<lambda>r  rõ   r=   c                  ó   •— ‰ ‰z  S r{   r<   )r„  rŠ  s   €€r>   r?   z%test_StateSpace_add.<locals>.<lambda>s  s   ø€ ˜s 3™w€ r=   )r   r&   r-   r   )r  r€  r�  r‚  ÚA2ÚB2ÚC2ÚD2Úexpected_addÚexpected_mulrƒ  r„  r…  rŠ  s             @@@@r>   Útest_StateSpace_addr®  4  s!  û€ Ü	�!�Q�˜˜B˜Ð Ó	!€BÜ	�!�Q�˜˜R˜Ð!Ó	"€BÜ	�!�R�˜!˜Q˜Ð Ó	!€BÜ	�!�Q�˜˜B˜Ð Ó	!€BÜ
�R˜˜R Ó
$€Cä	’šKª	Ð2Ó	3€BÜ	�!�Q�˜˜R˜ " a Ð)Ó	*€BÜ	’šIÐ&Ó	'€BÜ	�"�a�˜!˜Q˜Ð Ó	!€BÜ
�R˜˜R Ó
$€CÜ
‹,€CÜ
”V˜Q˜C“[¤&¨!¨£+¬v°q°c«{¼FÀAÀ3»KÓ
H€Cô 	ÜÚÚÚÚÚðó 	ô 	Ø
ˆaˆØ	ˆRˆØ
ˆaˆØ	ˆRˆØ	ˆaˆðó 	ô 	ÚÚðó 	ô 	Ø	
ˆAˆØ	
ˆAˆðó 	ó!	ð ô, 	ÜÚÚÚÚÚðó 	 ô 	Ø�ˆ
Ø
ˆrˆ
Ø
�ˆ
Ø	ˆrˆ
Øˆcˆ
ðó 	ô 	ÚÚðó 	ô 	Ø	ˆRˆØ	ˆaˆðó 	ó!	ð ð* �‰9˜Ò$Ð$Ð$Øˆs‰7�lÒ"Ð"Ð"Ø�‰9œ
¤6¨A¨3¨%£=´&¸1¸#¸³-ÄÈ!ÈÈÃÔPVÐY\ÐX]ÐW^ÓP_Ó`Ò`Ð`Ð`Øˆs‰7”j¤¨!¨¨£´¸¸°u³¼vÈÀuÀg»ÔPVÐY\ÐX]ÐW^ÓP_Ó`Ò`Ð`Ð`Øˆs‰7”j¤¨!¨¨£´¸¸°w³ÄÈ!ÈÈÃÔPVÐY\ÐX]ÐW^ÓP_Ó`Ò`Ð`Ð`Ü
Œ:Ô(Ô)Ü
Œ:”Õ'r=   c                  óü  — t        t        t        gt        t        gg«      } t        t
        t        gt        t        gg«      }t        t        t        gt        t        gt        t        gg«      }t        t        t        gt        t        gt        t         gg«      }t#        | |||«      }| }t        ddgddgg«      }t        ddg«      }t        ddgg«      }t        dg«      }	t#        ||||	«      }
|t#        t        t        t        gt        t        gg«      t        t
        t        gt        t        gg«      t        t         t         gt         t         gt         t         gg«      t        t         t         gt         t         gt         t          gg«      «      k(  sJ ‚|
 t#        t        ddgddgg«      t        dgdgg«      t        ddgg«      t        dgg«      «      k(  sJ ‚| |k(  sJ ‚|
    |
k(  sJ ‚y )Nrw   r.   )r   rN   rO   rP   rx  rQ   rR   rW   ry  rz  rÒ   r{  r|  rÓ   rÔ   rÕ   r}  r&   )ÚAÚBÚCÚDÚSSÚSS_negÚ	state_matÚ	input_matÚ
output_matÚfeedforward_matÚsystems              r>   Útest_StateSpace_negationr»  u  s   € Ü””R�œ2œr˜(Ð#Ó$€AÜ””R�œ2œr˜(Ð#Ó$€AÜ””R�œ2œr˜(¤R¬ HÐ-Ó.€AÜ””R�œ2œr˜(¤R¬ HÐ-Ó.€AÜ	�A�q˜!˜QÓ	€BØˆS€Fä˜˜Q˜ ! R Ð)Ó*€IÜ˜˜2�w“€IÜ˜"˜a˜˜	Ó"€JÜ˜a˜S“k€OÜ˜	 9¨j¸/ÓJ€FàÜ”6œB¤˜8Ü¤˜8ð%ó &äœB¤˜8Ü¤˜8ð%ó &äœR˜C¤" ˜:Ü˜C¤" ˜:Ü˜C¤" ˜:ð'ó (ô œR˜C¤" ˜:Ü˜C¤" ˜:Ü˜C¤" ˜:ð'ó (ó		)ò
)ð 
)ð 
)ð ˆ7Ü”6˜B ˜8Ø ˜8ð%ó &ä˜Q˜4  ˜+Ó&Ü˜A˜r˜7˜)Ó$Ü˜B˜4˜&“>ó		#ò#ð #ð #ð ˆ7�bŠ=Ðˆ=Ø�ˆzˆ]Ð˜vÒ%Ð%Ñ%r=   c                  ób  — t        t        t        g«      t        t        dz   dz  g«      t        t        dz  dz
  g«      t        dt        z  g«      «      } t        t        t        t        z   g«      t        t        dz   t        dz
  z  g«      t        t        dz  t        dz  z
  g«      t        t        t        z
  g«      «      }| j	                  t        di«      t        t        dgg«      t        dgg«      t        dgg«      t        dgg«      «      k(  sJ ‚|j	                  t        di«      t        t        t        dz   gg«      t        dgg«      t        dt        dz  z
  gg«      t        t        dz
  gg«      «      k(  sJ ‚| j                  t        t        i«      t        t        t        gg«      t        t        dz   dz  gg«      t        t        dz  dz
  gg«      t        dt        z  gg«      «      k(  sJ ‚|j                  t        t        t        t        i«      t        t        t        t        z   gg«      t        t        dz   t        dz
  z  gg«      t        t        dz   t        dz  z   gg«      t        t        t        z
  gg«      «      k(  sJ ‚t        t        z  t        z   }t        t        dz  z  t        t        z  z   t        z   }t        t        |g«      t        |g«      «      }t        t        dt        z  dz   gg«      t        dt        dz  z  d	t        z  z   dz   gg«      t        dgg«      t        dgg«      «      }t        t        d
t        z  dz   gg«      t        dt        dz  z  dt        z  z   dz   gg«      t        dgg«      t        dgg«      «      }|j	                  t        dt        dt        dt        d	t        di«      |k(  sJ ‚|j	                  t        dt        dt        dt        d	t        di«      j                  «       |k(  sJ ‚|j                  «       |k(  sJ ‚y )Nr.   r/   r3   r2   é$   é   r’   r   r1   rŠ   r‰   rŒ   r�   rŽ   )r&   r   r;   rI   r¯   r¨   rS   rT   rO   rN   rW   rR   rQ   r°   )rƒ  r„  rÍ   rÎ   ÚGÚexpectÚexpect_s          r>   Ú!test_SymPy_substitution_functionsrÂ  —  sª  € ä
”VœQ˜C“[¤&¬1¨q©5°1©*¨Ó"6¼ÄÀ1ÁÀqÁ¸zÓ8JÌFÐTUÔVWÑTWÐSXËMÓ
Z€CÜ
”VœQ¤™U˜G“_¤f¬q°1©u´q¸1±u©oÐ->Ó&?ÄÌÈAÉÔPQÐSTÑPTÉÈÓAVÔX^Ô`aÔdeÑ`eÐ_fÓXgÓ
h€Cà�8‰8”Q�q�E‹?œj¬°!°°«¼ÀÀ¸v»ÌÐQSÐPTÈvËÔX^ÐacÐ`dÐ_eÓXfÓgÒgÐgÐgØ�8‰8”Q�q�E‹?œj¬´!°a±%°°	Ó):¼FÀQÀCÀ5»MÌ6ÐTUÔXYÐ[\ÑX\ÑT\ÐS]ÐR^ÓK_ÔagÔjkÐnoÑjoÐipÐhqÓarÓsÒsÐsÐsð �<‰<œœ1˜ÓÜ”6œA˜3˜%“=¤&¬A°©E°A©:¨,¨Ó"8¼&Ä1ÀaÁ4È!Á8À*ÀÓ:NÔPVÐYZÔ[\ÑY\ÐX]ÐW^ÓP_Ó`òað að aà�<‰<œœ1œa¤˜
Ó#Ü”6œA¤™E˜7˜)Ó$¤f´°A±¼¸A¹©Ð.?Ð-@Ó&AÄ6ÌQÐPQÉTÈEÔTUÐWXÑTXÉLÈ>ÐJZÓC[Ô]cÔfgÔjkÑfkÐelÐdmÓ]nÓoòpð pð pô 
ŒA‰”‰€BÜ	ŒAˆq‰D‰”2”a‘4‰œ"Ñ	€BÜ”6˜2˜$“<¤¨¨£Ó.€AÜœ ¤1¡ q¡ 	˜{Ó+¬V°a¼¸1¹±f¸qÄ¹s±lÀQÑ6FÐ5GÐ4HÓ-IÌ6ÐTUÐSVÐRWË=ÔZ`ÐcdÐbeÐafÓZgÓh€FÜœ #¤a¡%¨#¡+  Ó0´&¸3¼qÀ!¹t¹8ÀcÌ!ÁeÑ;KÈcÑ;QÐ:RÐ9SÓ2TÔV\Ð_`Ð^aÐ]bÓVcÔekÐnoÐmpÐlqÓerÓs€GØ�6‰6”2�qœ"˜a¤ Q¬¨A¬r°1Ð5Ó6¸&Ò@Ð@Ð@Ø�6‰6”2�qœ"˜a¤ Q¬¨A¬r°1Ð5Ó6×<Ñ<Ó>À'ÒIÐIÐIØ�<‰<‹>˜WÒ$Ð$Ñ$r=   c            	      ó˜  — t        ddgddgg«      } t        ddg«      }t        ddgg«      }t        dg«      }t        | |||«      }t        t        t        t        gt        t
        gg«      t        t        gt        gg«      t        t        t        gg«      ¬«      }|j                  t        «      }| j                  t        «      }|d   d   }|d   d   }	|t        d	t        z  d
z   t        dz  dt        z  z   dz   t        «      k(  sJ ‚|	j                  |j                   k(  sJ ‚|	j                  |j                  k(  sJ ‚t        g d¢g d¢g d¢g«      }
t        g d¢g d¢g d¢g«      }t        g d¢g d¢g d¢g«      }t        g d¢g d¢g d¢g«      }t        |
|||«      }|j                  t        «      }|d   d   t        dt        dz  z  dt        dz  z  z   dt        z  z
  dz   dt        dz  z  dt        dz  z  z   dt        z  z
  dz
  t        «      k(  sJ ‚|d   d   t        dt        dz  z  dt        dz  z  z   dt        z  z
  d z
  dt        dz  z  dt        dz  z  z   dt        z  z
  dz
  t        «      k(  sJ ‚|d   d   t        dt        dz  z  d!t        z  z   dz
  dt        dz  z  dt        dz  z  z   dt        z  z
  dz
  t        «      k(  sJ ‚|j                  t        «      t        t         t        t        z  t
        t        z  z
  t        t        z  z   z  t        t         t        z  t        t        z  z   t        t        z  z   z  z
  t         t
        z  t        t        z  z   t        t        z  z   t
        t        z  z   t        dz  z
  t        «      ggk(  sJ ‚t        j                  t        «      }|t        t        ddgt         dz   d"t         z  t"        z  gg«      t        dgdgg«      t        ddgg«      t        dgg«      «      k(  sJ ‚|j                  t        «      d   d   t        k(  sJ ‚t%        t&        d#„ «       y )$Nr“   rw   r3   r/   r2   r.   r   )r±  r²  rˆ   é;   r5   r7   )rl  r�   r3   )r.   r   r.   )r/   r.   r.   )r6   r   r.   )r   r.   r/   )r/   r/   r3   ©r   r.   r   )r   r/   r.   )r.   r   r/   )r/   r/   r   )r.   r.   r.   )r3   r/   r.   rŠ   r‰   g      %@r¥  r6   g      @g      @g      @rŒ   r�   c                  óÀ   — t        t        t        dz  z  t        dz  z   t        t        z  z
  t        z   t        t        dz  z
  t        «      j                  t        «      S r§   )r   rT   r;   rI   rS   rv  r&   r<   r=   r>   r?   z!test_conversion.<locals>.<lambda>Û  sD   € Ô/´´!°Q±$±¼¸A¹±ÄÄ!ÁÑ0CÄaÑ0GÌÌQÐPQÉTÉÔSTÓU×]Ñ]Ô^hÓi€ r=   )r   r&   rN   rO   rP   rx  rR   rW   rÒ   r{  rv  r   r;   rK   rL   re  r²   r&  r-   rX   )r  r€  r�  r‚  r¿   ÚH3Útm1Útm2r[   r\   r¨  r©  rª  r«  rÀ   Útm3r´  s                    r>   Útest_conversionrË  ¯  s?  € ä	�"�b�˜A˜r˜7Ð#Ó	$€BÜ	��A�‹€BÜ	�!�Q��Ó	€BÜ	��‹€BÜ	�B˜˜B Ó	#€BÜ	”FœR¤˜H¤r¬2 hÐ/Ó0´f¼r¸dÄRÀD¸\Ó6JÔPVÔY[Ô]_ÐX`ÐWaÓPbÔ	c€BØ
�*‰*Ô%Ó
&€CØˆ3�-‰-Ô(Ó
)€Cà
ˆa‰&�‰)€CØ
ˆa‰&�‰)€CàÔ" 2¤a¡4¨"¡9¬a°©d°Q´q±S©j¸1©n¼aÓ@Ò@Ð@Ð@Ø�7‰7�s—w‘w�hÒÐÐØ�7‰7�c—g‘gÒÐÐô 
’¢	ª9Ð5Ó	6€BÜ	’šiªÐ3Ó	4€BÜ	’šI¢yÐ1Ó	2€BÜ	’šI¢yÐ1Ó	2€BÜ	�B˜˜B Ó	#€BØ
�*‰*Ô%Ó
&€Cð ˆq‰6�!‰9Ô(¨¬Q°©T©°C¼¸1¹±HÑ)<¸tÄA¹vÑ)EÈÑ)KÈSÔQRÐTUÑQUÉXÐX[Ô\]Ð_`Ñ\`ÑX`ÑM`ÐcfÔghÑchÑMhÐknÑMnÔpqÓrÒrÐrÐrØˆq‰6�!‰9Ô(¨¬Q°©T©°C¼¸1¹±HÑ)<¸tÄA¹vÑ)EÈÑ)KÈSÔQRÐTUÑQUÉXÐX[Ô\]Ð_`Ñ\`ÑX`ÑM`ÐcfÔghÑchÑMhÐknÑMnÔpqÓrÒrÐrÐrØˆq‰6�!‰9Ô(¨¬Q°©T©°C¼±EÑ)9¸CÑ)?ÀÄQÈÁTÁÈCÔPQÐSTÑPTÉHÑATÐWZÔ[\ÑW\ÑA\Ð_bÑAbÔdeÓfÒfÐfÐfØ�:‰:Ô&Ó'Ô-=¼r¸cÄ2ÄbÁ5Ì2ÌbÉ5Á=ÔSUÔVWÑSWÑCWÑ>XÔ[]Ô`bÐ_bÔceÑ_eÔhjÔkmÑhmÑ_mÔprÔstÑptÑ_tÑ[uÑ>uÜ?A¸cÄ"¹fÄrÌ!Át¹mÌbÔQSÉeÑ>SÔVXÔYZÑVZÑ>ZÔ]^Ð`aÑ]aÑ>aÔcdó.fð -gð ,hò hð hð hô 
�‰”ZÓ	 €BØÜ”6 ¨QÐ/Ü ™U˜F B¤r¡E¬$¡JÐ/ð1ó 2ä˜A˜3Ø˜3ð ó !ä˜A˜q˜6˜(Ó#Ü˜A˜3˜%“=ó	"ò"ð "ð "ð �:‰:Ô&Ó'¨Ñ*¨1Ñ-´Ò4Ð4Ð4ô Œ:ÑiÕjr=   c                  ód
  — t        ddgddgg«      } t        dgdgg«      }t        ddgg«      }t        dg«      }t        dgdgg«      }t        d«      }t        | |||«      }|j                  «       t        dgg«      k(  sJ ‚|j                  |¬«      t        d	t	        | «      z  d
t	        d|z  «      z  z
  gg«      k(  sJ ‚t        ddgddgg«      }t        dd«      }t        ddg«      }	t        ||¬«      }
|
j                  |	¬«      t        dt	        d|z  «      z  gdt	        | «      z  dt	        d|z  «      z  z
  gg«      k(  sJ ‚t        ddgddgg«      }t        dgdgg«      }t        ddgg«      }t        dg«      }t        dg«      }t        ||||«      }|j                  ||¬«      }t        |j                  «       j                  «       j                  «       d   «      t        ddt	        d|z  dz  «      z  t        t        d«      |z  dz  «      z  z   dt	        d|z  dz  «      z  t        t        d«      |z  dz  «      z  z
  «      k(  sJ ‚t        ddgddgg«      }t        dgdgg«      }t        ddgg«      }t        dt        |«      z  gg«      }t        |||«      }t        |j                  ||¬«      d   j                  «       j                  «       j                  «       «      }|t        dt        |«      z  dt	        d|z  dz  «      z  t        t        d«      |z  dz  «      z  t        |«      z  z   dt	        d|z  dz  «      z  t        t        d«      |z  dz  «      z  t        |«      z  z
  «      k(  sJ ‚t        d«      \  }}}t        ddgddgg«      }t        dgd|z  gg«      }t        ddgg«      }t        |gdgg«      }t        t	        | |z  «      gg«      }t        |||«      } | j                  |||¬«      j                  «       }!|!d   j                  d   d   ||||z  z  z   d|dz  |z  z  z
  t	        | |z  «      |dz  |z  z  z   k(  sJ ‚t        d«      \
  }"}#}$}%}&}'}(})}*}+t        |"|#g|$|%gg«      },t        |&|'g«      }-t        |(|)gg«      }.t        |*|+g«      }/t        |,|-|.«      }0|0j                  |/¬«      d   }1|1j                  |"df|#df|$df|%df|&df|'df|(df|)df|*df|+dfg
«      }1|1d	t	        | «      z  d
t	        d|z  «      z  z
  k(  sJ ‚y )Nr   r.   r�   r‹   rw   r/   r˜   )Úinitial_conditionsr7   r4   r3   )r°  r²  r2   r‘  r1   r’   )Úinput_vectorr0  rŒ   gY8b½É4@r“   r8   )r0  rÎ  zm a x_0)rÍ  rÎ  r0  z+a_11 a_12 a_21 a_22 b_1 b_2 c_1 c_2 i_1 i_2)r   r   r&   Údsolver   r   rµ   r   r®   r°   r   r   r   r   rM   r¯   )2r  r€  r�  r‚  ÚI1r˜   rƒ  r¨  rª  ÚI2r„  ÚA3ÚB3ÚC3ÚD3ÚU3r…  Úopr†  r‡  rˆ  ÚU4rŠ  Úop4rü  rS   Úx0ÚA5ÚB5ÚC5ÚI5ÚU5r‹  Úop5Úa11Úa12Úa21Úa22rR   rW   rÒ   r{  Úi1Úi2rŒ  r�  ÚC6ÚI6rŽ  Úexpr6s2                                                     r>   Útest_StateSpace_dsolverê  Þ  sµ  € ô 
�!�Q�˜"˜b˜Ð"Ó	#€BÜ	�!��q�c�
Ó	€BÜ	�!�R��	Ó	€BÜ	��‹€BÜ	�!��q�c�
Ó	€BÜ�‹€AÜ
�R˜˜R Ó
$€Cð �:‰:‹<œ6 A 3 %›=Ò(Ð(Ð(Ø�:‰:¨ˆ:Ó,´¸¼3À¸r»7¹ÀQÄsÈ2ÈaÉ4ÃyÁ[Ñ9PÐ8QÐ7RÓ0SÒSÐSÐSä	�"�a�˜1˜b˜'Ð"Ó	#€BÜ	ˆQˆq‹€BÜ	��A�‹€BÜ
�r˜RÔ
 €CØ�:‰:¨ˆ:Ó,´¸¼3¸rÀ!¹t»9¹¸ÈÌ#ÈqÈbË'É	ÐTUÔVYÐZ\Ð]^ÑZ^ÓV_ÑT_ÑH_ÐG`Ð7aÓ0bÒbÐbÐbä	�"�a�˜2˜r˜(Ð#Ó	$€BÜ	�!��q�c�
Ó	€BÜ	�!�Q��Ó	€BÜ	��‹€BÜ	��‹€BÜ
�R˜˜R Ó
$€CØ	�‰ ¨ˆÓ	+€BÜˆr�{‰{‹}×#Ñ#Ó%×+Ñ+Ó-¨aÑ0Ó1´S¸Ð?OÔPSÐTVÐWXÑTXÐYZÑTZÓP[Ñ?[Ô\_Ô`dÐefÓ`gÐhiÑ`iÐjkÑ`kÓ\lÑ?lÑ9lØ.1´#°b¸±d¸1±f³+©o¼cÄ$ÀqÃ'È!Á)ÈAÁ+Ó>NÑ.Nñ:Oó 6Pò Pð Pð Pô 
�"�a�˜2˜r˜(Ð#Ó	$€BÜ	�!��q�c�
Ó	€BÜ	�!�Q��Ó	€BÜ	�"”Y˜q“\‘/Ð"Ð#Ó	$€BÜ
�R˜˜RÓ
 €CÜ
ˆc�j‰j˜Q¨RˆjÓ0°Ñ3×<Ñ<Ó>×EÑEÓG×MÑMÓOÓ
P€CØ”#�cœ) A›,Ñ&Ð)9¼#¸bÀ¹dÀ1¹f»+Ñ)EÄcÌ$ÈqË'ÐRSÉ)ÐTUÉ+ÓFVÑ)VÔW`ÐabÓWcÑ)cÑcØ.1´#°b¸±d¸1±f³+©o¼cÄ$ÀqÃ'È!Á)ÈAÁ+Ó>NÑ.NÌyÐYZË|Ñ.[ñ\ó ]ò ]ð ]ð ]ô �yÓ!�H€A€qˆ"Ü	�!�Q�˜!˜Q˜Ð Ó	!€BÜ	�!��q˜1‘u�g�Ó	€BÜ	�!�Q��Ó	€BÜ	�"�˜�s�Ó	€BÜ	”#�q�b˜1‘f“+��Ó	 €BÜ
�R˜˜RÓ
 €CØ
�*‰*¨¸Àˆ*Ó
C×
LÑ
LÓ
N€CØˆq‰6�;‰;�q‰>˜!Ñ  Q¨¨!©¡W¡¨q°!°Q±$°q±&©zÑ 9¼CÀÀÀ1Á»IÀqÈ!ÁtÈAÁvÑ<NÑ NÒNÐNÐNÜ18Ð9fÓ1gÑ.€Cˆˆc�3˜˜B  B¨¨BÜ	�#�s�˜c 3˜ZÐ(Ó	)€BÜ	��R�Ó	€BÜ	�"�b��
Ó	€BÜ	��R�Ó	€BÜ
�R˜˜RÓ
 €CØ�J‰J¨"ˆJÓ-¨aÑ0€EØ�J‰J˜˜a˜ 3¨ (¨S°"¨I¸¸R°yÀ2ÀqÀ'ÈBÐPQÈ7ÐUWÐYZÐT[Ð^`ÐbdÐ]eÐhjÐlmÐgnÐqsÐuvÐpwÐxÓy€EØ�A”c˜1˜"“g‘I ¤# b¨¡d£)¡Ñ+Ò+Ð+Ñ+r=   c            	      ó4  — t        ddgddgg«      } t        ddg«      }t        ddgg«      }t        dg«      }t        | |||«      }t        t        ddgddgg«      t        ddgddgg«      t        ddgddgg«      «      }t        t        ddgddgg«      t        ddgddgg«      «      }t        t        t        t        gt        t
        gg«      t        t        gt        gg«      t        t        t        gg«      «      }|j                  «       d	k(  sJ ‚|j                  «       d
k(  sJ ‚|j                  «       t        ddgddgg«      k(  sJ ‚|j                  «       t        ddgddgddgddgg«      k(  sJ ‚|j                  «       t        dgdgg«      t        dgdgg«      gk(  sJ ‚|j                  «       t        dgdgdgdgg«      gk(  sJ ‚|j                  «       j                  t        dft        dft        dft
        dft        dft        dfg«      }|t        ddgddgg«      k(  sJ ‚|j                  «       d	k(  sJ ‚|j                  «       d
k(  sJ ‚|j                  «       t        ddgddgg«      k(  sJ ‚|j                  «       t        g d¢g d¢g«      k(  sJ ‚|j!                  «       t        dgdgg«      t        dgdgg«      gk(  sJ ‚|j!                  «       t        dgdgg«      gk(  sJ ‚|j!                  «       t        t        gt        gg«      t        t        t        z  t        t        z  z   gt        t        z  t
        t        z  z   gg«      gk(  sJ ‚|j                  «       j                  t        dft        dft        dft
        dft        dft        dfg«      }	|	t        ddgddgg«      k(  sJ ‚t        ddgddgg«      }
t        dgdgg«      }t        ddgg«      }t        dgg«      }t        |
|||«      }t        t        ddgddgg«      t        dgdgg«      t        ddgg«      t        dgg«      «      }|j#                  |«      }|j#                  |«      }|j$                  |j$                  |j$                  z   k(  sJ ‚|j&                  |j&                  |j&                  z   k(  sJ ‚|j(                  |j(                  |j(                  z   k(  sJ ‚|j*                  t        g d¢g d¢g d¢g d¢g«      k(  sJ ‚|j,                  t        ddgddgddgddgg«      k(  sJ ‚|j.                  t        g d¢g d¢g«      k(  sJ ‚|j0                  t        ddgddgg«      k(  sJ ‚|j$                  |j$                  |j$                  z   k(  sJ ‚|j&                  |j&                  |j&                  z   k(  sJ ‚|j(                  |j(                  |j(                  z   k(  sJ ‚|j*                  t        t        t        ddgt        t
        ddgg d¢g d¢g«      k(  sJ ‚|j,                  t        t        dgt        dgddgddgg«      k(  sJ ‚|j.                  t        t        t        ddgg d¢g«      k(  sJ ‚|j0                  t        ddgddgg«      k(  sJ ‚y )Nrl  r�   r.   r   r6   r1   r/   rw   TFr3   r‹   r¤  r“   g      è¿)r.   rw   r/   r�   ©r   r.   r   r   ©r.   r   r   r   ©r   r   r.   r   ©r   r   r   r.   )r   r&   rN   rO   rP   rx  rR   rW   rÒ   r{  Úis_observableÚobservability_matrixÚobservable_subspacer¯   Úis_controllableÚcontrollability_matrixÚcontrollable_subspaceÚappendÚ
num_statesri  rh  rt  ru  rv  rw  )ÚA_matÚB_matÚC_matÚD_matÚSS1ÚSS2ÚSS3ÚSS4ÚQoÚQcr  r€  r�  r‚  rƒ  r„  r…  rŠ  s                     r>   Útest_StateSpace_functionsr    sÈ  € ô �T˜2�J  A Ð'Ó(€EÜ�C˜�8Ó€EÜ�Q˜�F�8Ó€EÜ�A�3‹K€EÜ
�U˜E 5¨%Ó
0€CÜ
”V˜a ˜V a¨ WÐ-Ó.¬v¸¸1°vÀÀ1¸vÐ6FÓ/GÌÐQSÐUVÐPWÐZ[Ð]_ÐY`ÐOaÓHbÓ
c€CÜ
”V˜a ˜V a¨ WÐ-Ó.¬v¸¸2°wÀÀBÀÐ6HÓ/IÓ
J€CÜ
”Vœb¤"˜X¬¬B xÐ0Ó1´6¼B¸4Ä"À¸,Ó3GÌÔRTÔVXÐQYÐPZÓI[Ó
\€Cð ×ÑÓ $Ò&Ð&Ð&Ø×ÑÓ %Ò'Ð'Ð'Ø×#Ñ#Ó%¬°!°Q°¸!¸Q¸Ð0@Ó)AÒAÐAÐAØ×#Ñ#Ó%¬°"°q°¸QÀ¸8ÀqÈ"ÀXÐPRÐUVÈxÐ0XÓ)YÒYÐYÐYØ×"Ñ"Ó$¬°!°°q°c°
Ó);¼VÀaÀSÈ1È#ÀJÓ=OÐ(PÒPÐPÐPØ×"Ñ"Ó$¬°"°¸°t¸q¸TÀBÀ4Ð0HÓ)IÐ(JÒJÐJÐJØ	×	!Ñ	!Ó	#×	(Ñ	(¬2¨q¨'´B¸°8¼bÀ!¸WÄrÈ2ÀhÔQSÐUVÐPWÔZ\Ð^_ÐY`Ð)aÓ	b€BØ”˜!˜Q˜ ! R Ð)Ó*Ò*Ð*Ð*ð ×ÑÓ  DÒ(Ð(Ð(Ø×ÑÓ  EÒ)Ð)Ð)Ø×%Ñ%Ó'¬F°S¸%°LÀQÈ#À,Ð3OÓ,PÒPÐPÐPØ×%Ñ%Ó'¬6²>Â>Ð2RÓ+SÒSÐSÐSØ×$Ñ$Ó&¬6°C°5¸Q¸%°.Ó+AÄ6ÈEÈ7ÐWZÐT[ÐJ\ÓC]Ð*^Ò^Ð^Ð^Ø×$Ñ$Ó&¬6°A°3¸¸°*Ó+=Ð*>Ò>Ð>Ð>Ø×$Ñ$Ó&¬6Ü+-¨$Ü+-¨$ð30ó ,1ä28Ü+-¬b©5´2´b±5©=¨/Ü+-¬b©5´2´b±5©=¨/ð:;ó 3<ð+=ò =ð =ð =ð
 
×	#Ñ	#Ó	%×	*Ñ	*¬R°¨G´b¸!°W¼rÀ2¸hÌÈRÈÔSUÐWXÐRYÔ\^Ð`aÐ[bÐ+cÓ	d€BØ”˜!˜Q˜ ! R Ð)Ó*Ò*Ð*Ð*ô 
�!�Q�˜!˜Q˜Ð Ó	!€BÜ	�!��q�c�
Ó	€BÜ	�!�Q��Ó	€BÜ	�!��‹€BÜ
�R˜˜R Ó
$€CÜ
”V˜a ˜V a¨ VÐ,Ó-¬v¸°s¸Q¸C°jÓ/AÄ6ÈAÈqÈ6È(ÓCSÔU[Ð^_Ð]`Ð\aÓUbÓ
c€CØ
�*‰*�S‹/€CØ
�*‰*�S‹/€Cà�>‰>˜SŸ^™^¨c¯n©nÑ<Ò<Ð<Ð<Ø�>‰>˜SŸ^™^¨c¯n©nÑ<Ò<Ð<Ð<Ø�?‰?˜cŸo™o°·±Ñ?Ò?Ð?Ð?Ø×Ñœv¢|²\Â<ÒQ]Ð&^Ó_Ò_Ð_Ð_Ø×Ñœv¨¨1 v°°1¨v¸¸1°vÀÀ1¸vÐ&FÓGÒGÐGÐGØ×Ñ¤ª²lÐ'CÓ DÒDÐDÐDØ×!Ñ!¤V¨a°¨V°a¸°VÐ,<Ó%=Ò=Ð=Ð=ð �>‰>˜SŸ^™^¨c¯n©nÑ<Ò<Ð<Ð<Ø�>‰>˜SŸ^™^¨c¯n©nÑ<Ò<Ð<Ð<Ø�?‰?˜cŸo™o°·±Ñ?Ò?Ð?Ð?Ø×Ñœv¬¬B°°1 ~¼¼BÀÀ1°~Â|ÒUaÐ&bÓcÒcÐcÐcØ×Ñœv¬¨A w´°Q°¸!¸Q¸À!ÀQÀÐ&HÓIÒIÐIÐIØ×Ñ¤¬¬R°°A¨ºÐ'EÓ FÒFÐFÐFØ×!Ñ!¤V¨a°¨V°a¸°VÐ,<Ó%=Ò=Ð=Ñ=r=   c                  óü  — t        ddgddgg«      } t        dgdgg«      }t        ddgg«      }t        dgg«      }t        ddgddgg«      }t        dgdgg«      }t        ddgg«      }t        dgg«      }t        | |||«      }t        ||||«      }	t        t        t        dz   t        «      }
t	        ||	«      }|t	        t        t        ddgddgg«      t        dgdgg«      t        ddgg«      t        dgg«      «      t        t        ddgddgg«      t        dgdgg«      t        ddgg«      t        dgg«      «      «      k(  sJ ‚|j                  «       t        t        g d¢g d¢g d¢g d¢g«      t        dgdgdgdgg«      t        g d¢g«      t        dgg«      «      k(  sJ ‚|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  t        «      t        t        dz  t        dz  t        dz  z
  t        z
  dz   t        «      k(  sJ ‚t	        |«      }t	        ||	«      }|j                  «       |j                  «       k(  sJ ‚t	        |
|«      }|t	        t        t        t        dz   t        «      t        t        ddgddgg«      t        dgdgg«      t        ddgg«      t        dgg«      «      «      k(  sJ ‚|j                  «       t        t        g d	¢g d
¢g d¢g«      t        dgdgdgg«      t        g d
¢g«      t        dgg«      «      k(  sJ ‚|j                  t        «      t        t        dz  t        dz  t        dz  z   t        z
  dz
  t        «      k(  sJ ‚t        ddgddgg«      }t        ddgddgg«      }t        ddgddgg«      }t        ddgddgg«      }t        g d¢g d¢g d¢g«      }t        ddgddgddgg«      }t        g d¢g d¢g«      }t        ddgddgg«      }t        ||||«      }t        ||||«      }t        ||«      }|t        t        t        ddgddgg«      t        ddgddgg«      t        ddgddgg«      t        ddgddgg«      «      t        t        g d¢g d¢g d¢g«      t        ddgddgddgg«      t        g d¢g d¢g«      t        ddgddgg«      «      «      k(  sJ ‚|j                  «       t        t        g d¢g d¢g d¢g d¢g d¢g«      t        ddgddgddgddgddgg«      t        g d¢g d ¢g«      t        dd!gddgg«      «      k(  sJ ‚|j                  |j                  k(  sJ ‚|j                  |j                  k(  sJ ‚t        |«      }t        ||«      }|j                  «       |j                  «       k(  sJ ‚|j                  t        «      |j                  t        «      k(  sJ ‚t        dt        t        «      }t        dt        dz   t        «      }t        t        t        dz   t        «      }t        |
|g||gg«      }t        ||«      }|t        t        t        ddgddgg«      t        ddgddgg«      t        ddgddgg«      t        ddgddgg«      «      t        t        t        t        dz   t        «      t        dt        t        «      ft        dt        dz   t        «      t        t        t        dz   t        «      ff«      «      k(  sJ ‚y )"Nr   r.   rì  rí  ©r   r.   r.   r   rï  r/   r3   )rw   r   r   )r   r   r.   )rw   r.   r   r1   r‹   r2   r‘  rw   r’  r“  r”  r�   r•  r–  r—  r˜  )r/   r   r‹   r1   r/   )r¤  r4   rw   r‹   r   )r‘  r4   r/   r2   r3   r8   éôÿÿÿr“   )r‘  rˆ   r1   r/   r‹   r�  éøÿÿÿ)r   r&   r   r;   r   r¸   ri  rh  rv  r#   r"   ) rO   rR   rÒ   rÔ   rP   rW   r{  rÕ   rƒ  r„  r[   r5  Úser2Úser3Úser_tfrx  ry  r|  r}  Úa4Úb4Úc4Úd4r…  rŠ  Úser4Úser5Úser6r\   r]   r^   Útfms                                    r>   Útest_StateSpace_seriesr  ]  s  € ä	�!�Q�˜!˜Q˜Ð Ó	!€BÜ	�!��q�c�
Ó	€BÜ	�!�Q��Ó	€BÜ	�!��‹€BÜ	�!�Q�˜!˜Q˜Ð Ó	!€BÜ	�!��q�c�
Ó	€BÜ	�!�Q��Ó	€BÜ	�!��‹€Bä
�R˜˜R Ó
$€CÜ
�R˜˜R Ó
$€CÜ
œ1œa ™c¤1Ó
%€CÜ�#�sÓ€DØ”6œ*¤VØ ˜FØ ˜Fð-$ó &%ä&,Ø˜CØ˜Cð.!ó '"ä#)¨A¨q¨6¨(Ó#3´V¸a¸S¸E³]ó	Dô FPÔPVØ ˜FØ ˜FðX$ó Q%ä&,Ø˜CØ˜Cð.!ó '"ä#)¨A¨q¨6¨(Ó#3´V¸a¸S¸E³]ó	FDó	Eò Eð Eð Eð �9‰9‹;œ*Ü"Ú(Ú(Ú(Ú(ð	$*ó +ô
 #Ø˜CØ˜CØ˜CØ˜Cð	$!ó "ô
 #¢L >Ó2Ü" Q C 5›Mó+ò +ð +ð +ð �?‰?˜aÒÐÐØ×Ñ˜qÒ Ð Ð Ø�<‰<Ô(Ó)Ô-=¼aÀ¹dÄAÀqÁDÌ1ÈaÉ4ÁKÔRSÁOÐVWÑDWÔYZÓ-[Ò[Ð[Ð[Ü�#‹;€DÜ�$˜Ó€DØ�9‰9‹;˜$Ÿ)™)›+Ò%Ð%Ð%ô �C˜Ó€FØ”VÔ,¬Q´°A±´qÓ9¼:ÄfØ ˜FØ ˜FðN$ó G%ä&,Ø˜CØ˜Cð.!ó '"ä#)¨A¨q¨6¨(Ó#3´V¸a¸S¸E³]ó	<Dó Eò Eð Eð Eð
 �;‰;‹=œJÜ"Ú'Ú&Ú&ð$(ó )ô #Ø˜CØ˜CØ˜Cð$!ó "ô #¢I ;Ó/Ü" Q C 5›Mó
+ò 
+ð 
+ð 
+ð �>‰>Ô*Ó+Ô/?ÄÀ1ÁÄaÈÁdÌQÐPQÉTÁkÔTUÁoÐXYÑFYÔ[\Ó/]Ò]Ð]Ð]ô 
�!�Q�˜!˜R˜Ð!Ó	"€BÜ	�!�Q�˜"˜b˜Ð"Ó	#€BÜ	�!�R�˜1˜a˜&Ð!Ó	"€BÜ	�!�Q�˜!˜R˜Ð!Ó	"€BÜ	’š[ª)Ð4Ó	5€BÜ	�!�Q�˜"˜b˜ B¨ 7Ð+Ó	,€BÜ	’šYÐ'Ó	(€BÜ	�"�a�˜1˜a˜&Ð!Ó	"€BÜ
�R˜˜R Ó
$€CÜ
�R˜˜R Ó
$€CÜ�c˜3Ó€DØ”:œj¬Ø˜�GØ˜�Gð1ó *ä%Ø˜!�HØ˜�Hð'ó  ä &Ø˜�GØ˜�Gð(ó !ä%Ø˜�GØ˜�Gð'ó  óô !+¬6ÚÚÚð3!ó ,"ô $*Ø˜!�HØ˜�HØ˜!�Hð+ó $ô !'ÚÚð( ó !!ä"(Ø˜�GØ˜�Gð*ó #ó
!ó ò  ð  ð  ð& �9‰9‹;œ*ÜÚ+Ú+Ú,Ú,Ú)ð +ó ,ô Ø˜a˜Ø˜b˜	Ø˜b˜	Ø˜r˜
Ø˜R˜ð "ó #ô Ú*Ú'ð )ó *ô Ø˜R˜Ø˜B˜ð !ó "ó!#ò #ð #ð #ð& �?‰?˜cŸn™nÒ,Ð,Ð,Ø×Ñ˜sŸ™Ò.Ð.Ð.Ü�c‹?€DÜ�d˜CÓ €DØ�9‰9‹;˜$Ÿ)™)›+Ò%Ð%Ð%Ø�<‰<Ô.Ó/°4·<±<Ô@VÓ3WÒWÐWÐWÜ
˜1œa¤Ó
#€CÜ
˜1œa ™c¤1Ó
%€CÜ
œ1œa ™c¤1Ó
%€CÜ
  3¨ *¨s°C¨jÐ!9Ó
:€CÜ�c˜3Ó€DØ”:œj¬Ø˜Q˜Ø˜B˜ð1!ó *"ä#)Ø˜a˜Ø˜R˜ð+"ó $#ä$*Ø˜B˜Ø˜Q˜ð,!ó %"ä#)Ø˜Q˜Ø˜B˜ð+!ó $"ó#ô %;Ü)¬!¬Q°©U´AÓ6Ô8HÈÌAÌqÓ8QÐRÜ)¨!¬Q°©U´AÓ6Ô8HÌÌAÐPQÉEÔSTÓ8UÐVð<Xó %Yó
Zò 
Zð 
Zñ 
Zr=   c                  óÔ  — t        ddgddgg«      } t        dgdgg«      }t        ddgg«      }t        dgg«      }t        ddgddgg«      }t        dgdgg«      }t        ddgg«      }t        dgg«      }t        | |||«      }t        ||||«      }	t        ||	«      }
|
t        t        t        ddgddgg«      t        dgdgg«      t        ddgg«      t        dgg«      «      t        t        ddgddgg«      t        dgdgg«      t        ddgg«      t        dgg«      «      «      k(  sJ ‚|
j                  «       t        t        g d¢g d¢g d¢g d¢g«      t        dgdgdgdgg«      t        g d¢g«      t        dgg«      «      k(  sJ ‚|
j	                  t
        «      t        t        t        dz   z  t        dz  dz
  t        «      k(  sJ ‚t        t        t        dz   t        «      }t        ||«      }|t        t        t        ddgddgg«      t        dgdgg«      t        ddgg«      t        dgg«      «      t        t        t        dz   t        «      «      k(  sJ ‚|j                  «       t        t        g d	¢g d
¢g d¢g«      t        dgdgdgg«      t        g d¢g«      t        dgg«      «      k(  sJ ‚|j	                  t
        «      t        t        dz  t        dz  dz
  t        «      k(  sJ ‚t        ddgddgg«      }t        ddgddgg«      }t        ddgddgg«      }t        ddgddgg«      }t        g d¢g d¢g d¢g«      }t        ddgddgddgg«      }t        g d¢g d¢g«      }t        ddgddgg«      }t        ||||«      }t        ||||«      }t        ||«      }|t        t        t        ddgddgg«      t        ddgddgg«      t        ddgddgg«      t        ddgddgg«      «      t        t        g d¢g d¢g d¢g«      t        ddgddgddgg«      t        g d¢g d¢g«      t        ddgddgg«      «      «      k(  sJ ‚|j                  «       t        t        g d¢g d¢g d¢g d¢g d¢g«      t        ddgddgddgddgddgg«      t        g d¢g d¢g«      t        dd gddgg«      «      k(  sJ ‚t        dt        t        «      }t        dt        dz   t        «      }t        t        t        dz   t        «      }t        ||g||gg«      }t        ||«      }|t        t        t        t        t        dz   t        «      t        dt        t        «      ft        dt        dz   t        «      t        t        t        dz   t        «      ff«      t        t        ddgddgg«      t        ddgddgg«      t        ddgddgg«      t        ddgddgg«      «      «      k(  sJ ‚y )!Nr   r.   rì  rí  rî  rï  r  r/   rÅ  )r.   r   r   )r   r   rw   ©r   r.   rw   r1   r‹   r2   r‘  r3   rw   r’  r“  r”  r�   r•  r–  r—  r˜  r™  rš  r›  rœ  r�  r5   )	r   r&   r    r¸   rv  r   r;   r$   r"   )rO   rR   rÒ   rÔ   rP   rW   r{  rÕ   rƒ  r„  rÍ   r[   rÎ   rx  ry  r|  r}  r
  r  r  r  r…  rŠ  rÖ   r\   r]   r^   r  r×   s                                r>   Útest_StateSpace_parallelr  è  s  € ä	�!�Q�˜!˜Q˜Ð Ó	!€BÜ	�!��q�c�
Ó	€BÜ	�!�Q��Ó	€BÜ	�!��‹€BÜ	�!�Q�˜!˜Q˜Ð Ó	!€BÜ	�!��q�c�
Ó	€BÜ	�!�Q��Ó	€BÜ	�!��‹€BÜ
�R˜˜R Ó
$€CÜ
�R˜˜R Ó
$€CÜ	�#�sÓ	€BØ”œ*¤V¨a°¨V°a¸°VÐ,<Ó%=¼vÈÀsÈQÈCÀjÓ?QÔSYÐ\]Ð_`Ð[aÐZbÓScÔekÐnoÐmpÐlqÓerÓsÜ$¤V¨a°¨V°Q¸°F¨OÓ%<¼fÀqÀcÈ1È#ÀYÓ>OÔQWÐZ[Ð]^ÐY_ÐX`ÓQaÔciÐlmÐknÐjoÓcpÓqósò sð sð sà�7‰7‹9œ
¤6Ú$Ú$Ú$Ú$ð	+&ó $'ô
 Ø˜Ø˜Ø˜Ø˜ð	 ó ô
 ¢˜~Ó.Ü  ˜u›ó'ò 'ð 'ð 'ð �:‰:Ô&Ó'Ô+;¼A¼qÀ1¹u¹IÄqÈ!ÁtÈaÁxÔQRÓ+SÒSÐSÐSô œ1œa ™c¤1Ó
%€CÜ	�#�sÓ	€BØ”œ*¤VØ˜A˜Ø˜A˜ð- ó &!ä"(Ø˜Ø˜ð*ó #ä%¨¨1 v hÓ/´¸!¸¸³ó	@ô BRÔRSÔUVÐYZÑUZÔ\]ÓA^ó	`ò `ð `ð `ð
 �7‰7‹9œ
ÜÚ"Ú"Ú"ð $ó %ô Ø˜Ø˜Ø˜ð ó ô ¢
˜|Ó,Ü  ˜u›ó
'ò 
'ð 
'ð 
'ð �:‰:Ô&Ó'Ô+;¼A¸q¹DÄ!ÀQÁ$ÈÁ(ÌAÓ+NÒNÐNÐNô 
�!�Q�˜!˜R˜Ð!Ó	"€BÜ	�!�Q�˜"˜b˜Ð"Ó	#€BÜ	�!�R�˜1˜a˜&Ð!Ó	"€BÜ	�!�Q�˜!˜R˜Ð!Ó	"€BÜ	’š[ª)Ð4Ó	5€BÜ	�!�Q�˜"˜b˜ B¨ 7Ð+Ó	,€BÜ	’šYÐ'Ó	(€BÜ	�"�a�˜1˜a˜&Ð!Ó	"€BÜ
�R˜˜R Ó
$€CÜ
�R˜˜R Ó
$€CÜ	�c˜3Ó	€BØ”œj¬Ø˜Q˜Ø˜B˜ð1!ó *"ä#)Ø˜a˜Ø˜R˜ð+"ó $#ä$*Ø˜B˜Ø˜Q˜ð,!ó %"ä#)Ø˜Q˜Ø˜B˜ð+!ó $"ó#ô %/¬vÚ#Ú#Ú#ð7%ó 0&ô (.Ø˜a˜Ø˜R˜Ø˜a˜ð/"ó (#ô %+Ú"Ú"ð,$ó %%ä&,Ø˜Q˜Ø˜Q˜ð.!ó '"ó
%#ó$ò $ð $ð $ð& �7‰7‹9œ
¤6Ú'Ú(Ú(Ú)Ú'ð+)ó $*ô Ø˜A˜Ø˜R˜Ø˜A˜Ø˜R˜Ø˜Q˜ð !ó "ô Ú)Ú'ð )ó *ô Ø˜A˜Ø˜A˜ð  ó !ó"ò "ð "ð "ô( ˜1œa¤Ó
#€CÜ
˜1œa !™e¤QÓ
'€CÜ
œ1œa !™e¤QÓ
'€CÜ
  3¨ *¨s°C¨jÐ!9Ó
:€CÜ	�c˜3Ó	€BØ”Ô4Ü)¬!¬Q°©U´AÓ6Ô8HÈÌAÌqÓ8QÐRÜ)¨!¬Q°©U´AÓ6Ô8HÌÌAÐPQÉEÔSTÓ8UÐVð6Xó Yô #¤6Ø˜A˜Ø˜B˜ð+!ó $"ä#)Ø˜A˜Ø˜R˜ð+"ó $#ä$*Ø˜B˜Ø˜A˜ð, ó %!ä"(Ø˜A˜Ø˜B˜ð*!ó #"ó#ó$ò $ð $ñ $r=   c                  ój  — t        ddgddgg«      } t        dgdgg«      }t        ddgg«      }t        dgg«      }t        ddgddgg«      }t        dgdgg«      }t        ddgg«      }t        dgg«      }t        | |||«      }t        ||||«      }	t        ||	«      }
|
t        t        t        ddgddgg«      t        dgdgg«      t        ddgg«      t        dgg«      «      t        t        ddgddgg«      t        dgdgg«      t        ddgg«      t        dgg«      «      d«      k(  sJ ‚|
j                  «       t        t        g d¢g d¢g d¢g d¢g«      t        dgdgdgdgg«      t        g d¢g«      t        dgg«      «      k(  sJ ‚|
j	                  t
        «      t        t        t        dz
  z  t        dz  t        z
  dz   t        «      k(  sJ ‚t        ||	d«      }|j                  «       t        t        g d¢g d	¢g d¢g d¢g«      t        dgdgdgdgg«      t        g d¢g«      t        dgg«      «      k(  sJ ‚|j	                  t
        «      t        t        t        dz
  z  t        dz  d
t        d
z  z  z
  t        z
  dz   t        «      k(  sJ ‚t        t        t        dz   t        «      }t        ||«      }|t        t        t        ddgddgg«      t        dgdgg«      t        ddgg«      t        dgg«      «      t        t        t        dz   t        «      d«      k(  sJ ‚|j                  «       t        t        g d¢g d¢g d¢g«      t        dgdgdgg«      t        g d¢g«      t        dgg«      «      k(  sJ ‚t        ddgd
dgg«      }t        dd
gddgg«      }t        d
dgddgg«      }t        dd
gddgg«      }t        g d¢g d¢g d¢g«      }t        ddgddgddgg«      }t        g d¢g d¢g«      }t        ddgddgg«      }t        ||||«      }t        ||||«      }t        ||«      }|t        t        t        ddgd
dgg«      t        dd
gddgg«      t        d
dgddgg«      t        dd
gddgg«      «      t        t        g d¢g d¢g d¢g«      t        ddgddgddgg«      t        g d¢g d¢g«      t        ddgddgg«      «      d«      k(  sJ ‚|j                  «       t        t        t        d«      t        dd«      t        dd«      t        dd
«      t        d«      gt        dd
«      t        dd«      t        dd«      t        dd«      t        d«      gt        d«      t        dd«      t        d d«      t        d!d
«      t        d"«      gt        d#d
«      t        d$d«      t        d%d«      t        d&d«      t        d'«      gt        dd
«      t        d(d«      t        d)d«      t        d*d«      t        d+«      gg«      t        t        dd«      t        d,d«      gt        dd«      t        d-d«      gt        dd«      t        d.d«      gt        dd«      t        d/d«      gt        dd«      t        d0d«      gg«      t        t        d«      t        dd«      t        d1d«      t        d-d
«      t        d#«      gt        dd
«      t        d2d«      t        d2d«      t        d"d«      t        d«      gg«      t        t        dd«      t        d3d«      gt        dd«      t        dd«      gg«      «      k(  sJ ‚t        ||d«      }|j                  «       t        t        t        dd«      t        d4d«      t        d«      t        d5«      t        d6d«      gt        d7d«      t        d8d9«      t        dd
«      t        d«      t        d'd«      gt        d:d«      t        d;d«      t        d«      t        d<«      t        d=d«      gt        d>d«      t        d?d9«      t        d@d
«      t        d+«      t        d&d«      gt        d
d«      t        dAd9«      t        dd
«      t        dB«      t        dCd«      gg«      t        t        dDd«      t        dEd«      gt        d#d9«      t        dFd9«      gt        dDd«      t        dGd«      gt        dHd9«      t        dId9«      gt        dd9«      t        dJd9«      gg«      t        t        dd«      t        d3d«      t        d«      t        d«      t        dd«      gt        dd«      t        dFd9«      t        dd
«      t        d«      t        dKd«      gg«      t        t        dd«      t        d#d«      gt        dd9«      t        dLd9«      gg«      «      k(  sJ ‚y )MNr   r.   rw   rì  )r.   rw   rw   r   r  rï  r3   )r.   r.   r.   r   r/   rÅ  )r.   rw   r.   r  r1   r‹   r2   r‘  r’  r“  r”  r�   r•  r–  r¡  iÛÿÿÿr8   iÙÿÿÿr7   r4   é'   i×ÿÿÿiÓÿÿÿiÍÿÿÿiíÿÿÿr   é�   éI   é«   r½  é/   é   éU   rŸ  é   iëÿÿÿé   i£ÿÿÿiÝÿÿÿr�   ióÿÿÿr\  é>   r  i»ÿÿÿé    iyÿÿÿrš   r£  é)   r  iŸÿÿÿrˆ   i‘ÿÿÿr“   iãÿÿÿr’   éQ   r5   iïÿÿÿr‘   iáÿÿÿiåÿÿÿéW   r�   r¢  iõÿÿÿ)	r   r&   r!   r¸   rv  r   r;   r%   r   )rO   rR   rÒ   rÔ   rP   rW   r{  rÕ   rƒ  r„  rò  ró  r[   rõ  rx  ry  r|  r}  r
  r  r  r  r…  rŠ  Úfd4Úfd5s                             r>   Útest_StateSpace_feedbackr'  `  s—
  € ä	�!�Q�˜!˜Q˜Ð Ó	!€BÜ	�!��q�c�
Ó	€BÜ	�!�Q��Ó	€BÜ	�!��‹€BÜ	�!�Q�˜!˜Q˜Ð Ó	!€BÜ	�!��q�c�
Ó	€BÜ	�!�Q��Ó	€BÜ	�!��‹€BÜ
�R˜˜R Ó
$€CÜ
�R˜˜R Ó
$€CÜ
�3˜Ó
€Cð ”(œ:¤f¨q°!¨f°q¸!°fÐ-=Ó&>ÄÈÈÈaÈSÀzÓ@RÔTZÐ]^Ð`aÐ\bÐ[cÓTdÔflÐopÐnqÐmrÓfsÓtÜ$¤V¨a°¨V°Q¸°F¨OÓ%<¼fÀqÀcÈ1È#ÀYÓ>OÔQWÐZ[Ð]^ÐY_ÐX`ÓQaÔciÐlmÐknÐjoÓcpÓqÐsuówò wð wð wà�8‰8‹:œ¤FÚ*Ú*Ú*Ú*ð	,,ó %-ô /5Ø˜CØ˜CØ˜CØ˜Cð	6!ó /"ô $*Ú)˜Nó$,Ü-3Ø˜S˜Eó.#ó
$ò 
$ð 
$ð 
$ð �;‰;Ô'Ó(Ô,<¼QÄÀAÁ¹YÌÈ1ÉÌqÉÐSTÉÔVWÓ,XÒXÐXÐXô �3˜˜QÓ
€CØ�8‰8‹:œ¤FÚ(Ú(Ú(Ú(ð	,*ó %+ô -3Ø˜CØ˜CØ˜CØ˜Cð	4!ó -"ô $*Ú)˜Nó$,Ü-3Ø˜S˜Eó.#ó
$ò 
$ð 
$ð 
$ð �;‰;Ô'Ó(Ô,<¼QÄÀAÁ¹YÌÈ1ÉÈqÔQRÐTUÑQUÉvÉÔXYÑHYÐ\]ÑH]Ô_`Ó,aÒaÐaÐaô œ1œa ™c¤1Ó
%€CÜ
�3˜Ó
€CØ”(œ:¤fØ ˜FØ ˜Fð.$ó '%ä&,Ø˜CØ˜Cð.!ó '"ä#)¨A¨q¨6¨(Ó#3´V¸a¸S¸E³]ó	Dô
 -¬Q´°A±´qÓ9¸2ó?ò ?ð ?ð ?ð �8‰8‹:œ¤VÚ'Ú'Ú'ð-)ó &*ô ,2Ø˜CØ˜CØ˜Cð3!ó ,"ô $*Ú&˜Kó$)Ü*0Ø˜S˜Eó+#ó$ò $ð $ð $ô 
�!�Q�˜!˜R˜Ð!Ó	"€BÜ	�!�Q�˜"˜b˜Ð"Ó	#€BÜ	�!�R�˜1˜a˜&Ð!Ó	"€BÜ	�!�Q�˜!˜R˜Ð!Ó	"€BÜ	’š[ª)Ð4Ó	5€BÜ	�!�Q�˜"˜b˜ B¨ 7Ð+Ó	,€BÜ	’šYÐ'Ó	(€BÜ	�"�a�˜1˜a˜&Ð!Ó	"€BÜ
�R˜˜R Ó
$€CÜ
�R˜˜R Ó
$€Cô �s˜CÓ
 €CØ”,œz¬&Ø ˜GØ ˜Gð2%ó +&ä'-Ø !˜HØ ˜Hð/&ó ('ä(.Ø ˜GØ ˜Gð0%ó )&ä'-Ø ˜GØ ˜Gð/%ó (&ó 'ô )3´6Ú'Ú'Ú'ð;)ó 4*ô ,2Ø !˜HØ ˜HØ !˜Hð3&ó ,'ô )/Ú&Ú&ð0(ó ))ä*0Ø ˜GØ ˜Gð2%ó +&ó
)'ð )+ó%,ò ,ð ,ð ,ð& �8‰8‹:œ¤FÜ% a›[¬(°2°q«/¼8ÀCÈÓ;KÌXÐVYÐ[\ÓM]Ô_gÐhkÓ_lÐmÜ% a¨›^¬X°c¸1Ó-=¼xÈÈ1»~ÌxÐXZÐ\]ËÔ`hÐijÓ`kÐlÜ% a›[¬(°3¸Ó*:¼HÀSÈ!Ó<LÌhÐWZÐ\]ÓN^Ô`hÐilÓ`mÐnÜ% b¨!›_¬h°s¸AÓ.>ÄÈÈQÃÔQYÐZ]Ð_`ÓQaÔckÐlnÓcoÐpÜ% b¨!›_¬h°r¸1«o¼xÈÈA»ÔPXÐY[Ð]^ÓP_ÔaiÐjlÓamÐnð,pó %qô
 syÜ% b¨!›_¬h°r¸1«oÐ>Ü% a¨›^¬X°c¸1Ó-=Ð>Ü% a¨›^¬X°b¸!«_Ð=Ü% a¨›^¬X°c¸1Ó-=Ð>Ü% a¨›^¬X°c¸1Ó-=Ð>ðz@ó sAô
 CIÜ% a›[¬(°3¸Ó*:¼HÀRÈ»OÌXÐVYÐ[\ÓM]Ô_gÐhjÓ_kÐlÜ% a¨›^¬X°c¸1Ó-=¼xÈÈQÓ?OÔQYÐZ]Ð_`ÓQaÔckÐlnÓcoÐpðJró CsätzÜ% b¨!›_¬h°r¸1«oÐ>Ü% a¨›^¬X°a¸«^Ð<ð|>ó u?ó@ò @ð @ð @ô" �s˜C Ó
#€CØ�8‰8‹:œ¤FÜ% a¨›^¬X°b¸!«_¼hÀq»kÌ8ÐTVË<ÔYaÐbeÐghÓYiÐjÜ% b¨!›_¬h°t¸RÓ.@Ä(È2ÈqÃ/ÔS[Ð\]ÓS^Ô`hÐikÐmnÓ`oÐpÜ% c¨1Ó-¬x¸¸A«ÄÈÃÌhÐWZËmÔ]eÐfiÐklÓ]mÐnÜ% b¨!›_¬h°t¸RÓ.@Ä(È2ÈqÃ/ÔS[Ð\^ÓS_ÔaiÐjmÐopÓaqÐrÜ% a¨›^¬X°c¸2Ó->ÄÈÈQÃÔQYÐZ\ÓQ]Ô_gÐhjÐlmÓ_nÐoð,qó %rô
 tzÜ% a¨›^¬X°c¸1Ó-=Ð>Ü% b¨"Ó-¬x¸¸BÓ/?Ð@Ü% a¨›^¬X°c¸1Ó-=Ð>Ü% c¨2Ó.´¸¸RÓ0@ÐAÜ% c¨2Ó.´¸¸RÓ0@ÐAð{Có tDô
 FLÜ% b¨!›_¬h°r¸1«o¼xÈ»{ÌHÐUWËLÔZbÐcfÐhiÓZjÐkÜ% b¨!›_¬h°r¸2Ó.>ÄÈÈQÃÔQYÐZ\ÓQ]Ô_gÐhkÐmnÓ_oÐpðMró FsätzÜ% a¨›^¬X°b¸!«_Ð=Ü% a¨›_¬h°s¸BÓ.?Ð@ð|Bó uCóDò Dð Dñ Dr=   N)ˆÚsympy.core.addr   Úsympy.core.functionr   Úsympy.core.mulr   Úsympy.core.numbersr   r   r   r	   Úsympy.core.powerr
   Úsympy.core.singletonr   Úsympy.core.symbolr   Ú&sympy.functions.elementary.exponentialr   r   Ú'sympy.functions.special.delta_functionsr   Ú(sympy.functions.elementary.miscellaneousr   Ú(sympy.functions.elementary.trigonometricr   Úsympy.matrices.denser   Úsympy.physics.control.ltir   Úsympy.polys.polytoolsr   Úsympy.polys.rootoftoolsr   Úsympy.simplify.simplifyr   Úsympy.core.containersr   Úsympy.matricesr   r   r   r   r   Úsympy.physics.controlr   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   Úsympy.testing.pytestr-   rS   r•   rT   rÈ   r;   rU   rV   rI   r´   rª   r&  r²   rI  rN   rO   rP   rx  rQ   rR   rW   ry  rz  rÒ   r{  r|  rÓ   rÔ   rÕ   r}  re  rd  rc  ru   ré   r  r"  r'  r*  r-  r7  rQ  rp  rz  r›  r¨  r¸  rÀ  rÔ  rë  rð  rö  r  r  r'  r-  r;  rG  rR  rT  rW  rY  rd  rj  r�  r®  r»  rÂ  rË  rê  r  r  r  r'  r<   r=   r>   ú<module>r<     s  ðÝ Ý (Ý ß 4Ó 4Ý  Ý "Ý %ß =Ý =Ý 9Ý 9Ý $Ý =Ý (Ý +Ý ,Ý 'ß >Ñ >ß =÷W÷ W÷ W÷ Wó Wõ (á.5ð 7ó /Ñ +€€1€aˆˆAˆq�!�Q˜˜3  b¨!áAHð Jó BÑ >€€BˆˆB��B˜˜B  B¨¨B°°B¸¸Bá�q˜!˜Q™$  4¡¨¡¨1¡Ñ,¨r°1©uÑ4°aÓ8€Ù�q˜!˜QÓ€Ù�r˜!‘t˜a‘x  A¡¨¡¨1Ó-€ò^9òB^8òB1òD(6òV	ò	&ò	ò(FòV(AòV)@òX;ò|@iòF+Cò\2EòjEòP1Wòh33òl05òf#òL5ò@$&òN>òD%*òP!>òFfJòP$WòL	\ò	[ò	\ò?ò>ò k:òX?(òB &òD%ò0,kò^;,ò|>>òBHZòVu$ópADr=   