Ë
    7^(hÖ  ã                   óh   — d dl mc mc mZ d dlmZmZmZmZm	Z	 d dl
mZ d dlmZ d„ Zd„ Zd„ Zd„ Zy)	é    N)ÚcosÚsinÚMatrixÚsymbolsÚzeros)Úsimplify)Údynamicsymbolsc                  ó¼  — t        d«      \  } }}t        d«      }t        d«      \  }}}t        j                  d«      }t	        |gg«      }t	        |  |z  ||z  z
  gg«      }	t        ||j                  z
  «      t	        dg«      k(  sJ ‚t        |	|j                  z
  «      t	        dg«      k(  sJ ‚t        j                  dd«      }
t	        |gg«      }t	        |  |z  ||z  z   ||z  z
  gg«      }t        ||
j                  z
  «      t	        dg«      k(  sJ ‚t        ||
j                  z
  «      t	        dg«      k(  sJ ‚t        j                  ddd«      }t	        |gg«      }t	        |  |z  ||z  z   ||z  z
  |z   gg«      }t        ||j                  z
  «      t	        dg«      k(  sJ ‚t        ||j                  z
  «      t	        dg«      k(  sJ ‚t        j                  ddd«      }t	        |gg«      }t	        |  |z  ||z  z
  |z   gg«      }t        ||j                  z
  «      t	        dg«      k(  sJ ‚t        ||j                  z
  «      t	        dg«      k(  sJ ‚y )Núc0 k0 m0Úgzv0 x0 f0é   r   TF)r   r	   ÚmodelsÚmulti_mass_spring_damperr   r   Úmass_matrixÚforcing)Úc0Úk0Úm0r   Úv0Úx0Úf0Úkane1Úmassmatrix1Úforcing1Úkane2Úmassmatrix2Úforcing2Úkane3Úmassmatrix3Úforcing3Úkane4Úmassmatrix4Úforcing4s                      úg/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/sympy/physics/mechanics/tests/test_models.pyÚ$test_multi_mass_spring_damper_inputsr%      sU  € ä˜Ó$�J€BˆˆBÜ�‹€AÜ 
Ó+�J€BˆˆBä×+Ñ+¨AÓ.€EÜ˜2˜$˜“.€KÜ˜˜˜B™  B¡™Ð'Ð(Ó)€HÜ�K %×"3Ñ"3Ñ3Ó4¼À¸s»ÒCÐCÐCÜ�H˜uŸ}™}Ñ,Ó-´¸¸³Ò<Ð<Ð<ä×+Ñ+¨A¨tÓ4€EÜ˜2˜$˜“.€KÜ˜˜˜B™  2¡™¨¨2©Ñ-Ð.Ð/Ó0€HÜ�K %×"3Ñ"3Ñ3Ó4¼À¸s»ÒCÐCÐCÜ�H˜uŸ}™}Ñ,Ó-´¸¸³Ò<Ð<Ð<ä×+Ñ+¨A¨t°TÓ:€EÜ˜2˜$˜“.€KÜ˜˜˜B™  2¡™¨¨2©Ñ-°Ñ2Ð3Ð4Ó5€HÜ�K %×"3Ñ"3Ñ3Ó4¼À¸s»ÒCÐCÐCÜ�H˜uŸ}™}Ñ,Ó-´¸¸³Ò<Ð<Ð<ä×+Ñ+¨A¨u°dÓ;€EÜ˜2˜$˜“.€KÜ˜˜˜B™  B¡™¨Ñ+Ð,Ð-Ó.€HÜ�K %×"3Ñ"3Ñ3Ó4¼À¸s»ÒCÐCÐCÜ�H˜uŸ}™}Ñ,Ó-´¸¸³Ò<Ð<Ñ<ó    c                  ó"  — t        d«      \  } }}t        d«      \  }}}t        d«      \  }}}t        d«      \  }	}
t        d«      \  }}t        d«      \  }}t        j                  d«      }t	        ||z   |z   ||z   |g||z   ||z   |g|||gg«      }t	        |  |	z  ||
z  z
  g| |z  ||z  z
  g| |z  ||z  z
  gg«      }t        ||j                  z
  «      t        d«      k(  sJ ‚t        ||j                  z
  «      t	        g d¢«      k(  sJ ‚y )	Nr   zc1 k1 m1zc2 k2 m2zv0 x0zv1 x1zv2 x2é   ©r   r   r   )	r   r	   r   r   r   r   r   r   r   )r   r   r   Úc1Úk1Úm1Úc2Úk2Úm2r   r   Úv1Úx1Úv2Úx2r   r   r   s                     r$   Ú*test_multi_mass_spring_damper_higher_orderr4   &   s<  € Ü˜Ó$�J€BˆˆBÜ˜Ó$�J€BˆˆBÜ˜Ó$�J€BˆˆBÜ˜GÓ$�F€BˆÜ˜GÓ$�F€BˆÜ˜GÓ$�F€Bˆä×+Ñ+¨AÓ.€EÜ˜2 ™7 R™<¨¨b©°"Ð5Ø ™7 B¨¡G¨RÐ0Ø˜r 2˜,ð(ó )€Kô ˜˜˜B™  B¡™Ð'Ø˜˜B™  B¡™Ð'Ø˜˜B™  B¡™Ð'ð)ó *€Hô �K %×"3Ñ"3Ñ3Ó4¼¸a»Ò@Ð@Ð@Ü�H˜uŸ}™}Ñ,Ó-´º	Ó1BÒBÐBÑBr&   c                  óD  — t        d«      \  } }t        d«      }t        d«      }t        d«      \  }}}}t        d«      \  }}	t        j                  d«      }
t	        ||z   |  |z  t        |«      z  g|  |z  t        |«      z  | dz  |z  gg«      }t	        |  |z  |	dz  z  t        |«      z  |z   g|| z  |z  t        |«      z  gg«      }t        ||
j                  z
  «      t        d«      k(  sJ ‚t        ||
j                  z
  «      t	        ddg«      k(  sJ ‚t        j                  dd	«      }t	        ||z   |  |z  t        |«      z  g|  |z  t        |«      z  | dz  |z  gg«      }t	        |  |z  |	dz  z  t        |«      z  g|| z  |z  t        |«      z  gg«      }t        ||j                  z
  «      t        d«      k(  sJ ‚t        ||j                  z
  «      t	        ddg«      k(  sJ ‚t        j                  dd	d
«      }t	        ||z   |  |z  t        |«      z  g|  |z  t        |«      z  | dz  |z  gg«      }t	        |  |z  |	dz  z  t        |«      z  g|| z  |z  t        |«      z  |z   gg«      }t        ||j                  z
  «      t        d«      k(  sJ ‚t        ||j                  z
  «      t	        ddg«      k(  sJ ‚t        j                  dd
d	«      }t	        ||z   |  |z  t        |«      z  g|  |z  t        |«      z  | dz  |z  gg«      }t	        |  |z  |	dz  z  t        |«      z  |z   g|| z  |z  t        |«      z  gg«      }t        ||j                  z
  «      t        d«      k(  sJ ‚t        ||j                  z
  «      t	        ddg«      k(  sJ ‚y )Núl0 m0r,   r   z
q0 q1 F T1zu0 u1r   é   r   FT©r   r	   r   Ún_link_pendulum_on_cartr   r   r   r   r   r   r   )Úl0r   r,   r   Úq0Úq1ÚFÚT1Úu0Úu1r   r   r   r   r   r   r   r   r    r!   r"   r#   s                         r$   Ú#test_n_link_pendulum_on_cart_inputsrA   9   s»  € Ü�WÓ�F€BˆÜ	�‹€BÜ�‹€AÜ" <Ó0�M€BˆˆAˆrÜ˜GÓ$�F€Bˆä×*Ñ*¨1Ó-€EÜ˜2 ™7 R C¨¡F¬3¨r«7¡NÐ3Ø˜3˜r™6¤# b£'™>¨2¨q©5°©8Ð4ð6ó 7€Kä˜˜˜B™˜r 1™u™¤S¨£WÑ,¨qÑ0Ð1°A°b±D¸±G¼CÀ»G±OÐ3DÐEÓF€HÜ�K %×"3Ñ"3Ñ3Ó4¼¸a»Ò@Ð@Ð@Ü�H˜uŸ}™}Ñ,Ó-´¸¸A¸³Ò?Ð?Ð?ä×*Ñ*¨1¨eÓ4€EÜ˜2 ™7 R C¨¡F¬3¨r«7¡NÐ3Ø˜3˜r™6¤# b£'™>¨2¨q©5°©8Ð4ð6ó 7€Kä˜˜˜B™˜r 1™u™¤S¨£WÑ,Ð-°°"±°R±¼¸B»±Ð/@ÐAÓB€HÜ�K %×"3Ñ"3Ñ3Ó4¼¸a»Ò@Ð@Ð@Ü�H˜uŸ}™}Ñ,Ó-´¸¸A¸³Ò?Ð?Ð?ä×*Ñ*¨1¨e°TÓ:€EÜ˜2 ™7 R C¨¡F¬3¨r«7¡NÐ3Ø˜3˜r™6¤# b£'™>¨2¨q©5°©8Ð4ð6ó 7€Kä˜˜˜B™˜r 1™u™¤S¨£WÑ,Ð-°°"±°R±¼¸B»±À"Ñ0DÐ/EÐFÓG€HÜ�K %×"3Ñ"3Ñ3Ó4¼¸a»Ò@Ð@Ð@Ü�H˜uŸ}™}Ñ,Ó-´¸¸A¸³Ò?Ð?Ð?ä×*Ñ*¨1¨d°EÓ:€EÜ˜2 ™7 R C¨¡F¬3¨r«7¡NÐ3Ø˜3˜r™6¤# b£'™>¨2¨q©5°©8Ð4ð6ó 7€Kä˜˜˜B™˜r 1™u™¤S¨£WÑ,¨qÑ0Ð1°A°b±D¸±G¼CÀ»G±OÐ3DÐEÓF€HÜ�K %×"3Ñ"3Ñ3Ó4¼¸a»Ò@Ð@Ð@Ü�H˜uŸ}™}Ñ,Ó-´¸¸A¸³Ò?Ð?Ñ?r&   c                  ó®  — t        d«      \  } }t        d«      \  }}t        d«      }t        d«      }t        d«      \  }}}t        d«      \  }	}
}t        d«      \  }}t        j                  d«      }t	        ||z   |z   |  |z  t        |«      z  | |z  t        |«      z  z
  | |z  t        |«      z  g|  |z  t        |«      z  | |z  t        |«      z  z
  | dz  |z  | dz  |z  z   | |z  |z  t        |«      t        |«      z  t        |«      t        |«      z  z   z  g| |z  t        |«      z  | |z  |z  t        |«      t        |«      z  t        |«      t        |«      z  z   z  |dz  |z  gg«      }t	        |  |z  |
dz  z  t        |«      z  | |z  |
dz  z  t        |«      z  z
  ||z  |dz  z  t        |«      z  z
  |z   g|| z  |z  t        |«      z  || z  |z  t        |«      z  z   | |z  |z  t        |«      t        |«      z  t        |«      t        |«      z  z
  z  |dz  z  z
  g||z  |z  t        |«      z  | |z  |z  t        |«       t        |«      z  t        |«      t        |«      z  z   z  |
dz  z  z
  gg«      }t        ||j                  z
  «      t        d	«      k(  sJ ‚t        ||j                  z
  «      t	        g d
¢«      k(  sJ ‚y )Nr6   zl1 m1r/   r   zq0 q1 q2zu0 u1 u2zF T1r7   r(   r)   r8   )r:   r   Úl1r,   r/   r   r;   r<   Úq2r?   r@   Úu2r=   r>   r   r   r   s                    r$   Ú)test_n_link_pendulum_on_cart_higher_orderrF   ]   sù  € Ü�WÓ�F€BˆÜ�WÓ�F€BˆÜ	�‹€BÜ�‹€AÜ 
Ó+�J€BˆˆBÜ 
Ó+�J€BˆˆBÜ˜6Ó"�E€A€rä×*Ñ*¨1Ó-€EÜ˜2 ™7 R™<¨"¨¨R©´°B³©¸"¸R¹%ÄÀBÃ¹-Ñ)GØ˜3˜r™6¤# b£'™>ð+à˜3˜r™6¤# b£'™>¨B¨r©E´#°b³'©MÑ9¸2¸q¹5À¹8ÀbÈ!ÁeÈBÁhÑ;NØ˜b™5 ™8¤S¨£W¬S°«W¡_´s¸2³w¼sÀ2»w±Ñ%FÑGðIà˜3˜r™6¤# b£'™>Ø˜b™5 ™8¤S¨£W¬S°«W¡_´s¸2³w¼sÀ2»w±Ñ%FÑGØ˜q™5 ™8ð%ð	&ó '€Kô ˜˜˜B™˜r 1™u™¤S¨£WÑ,¨r°"©u°R¸±U©{¼3¸r»7Ñ/BÑBØ˜2™˜b !™e™¤C¨£GÑ+ñ,Ø./ñ0ð 1à˜"™˜R™¤ B£™¨!¨B©$¨r©'´#°b³'©/Ñ9Ø˜2™˜b™¤# b£'¬#¨b«'¡/´C¸³G¼CÀ»G±OÑ"CÑDÀRÈÁUÑJñKð Là˜"™˜R™¤ B£™¨"¨R©%°©(´S¸³W°H¼SÀ»WÑ4DÜ47¸³G¼CÀ»G±Oñ5Dñ +EØEGÈÁUñ+Kñ Kð Lð	Mó N€Hô �K %×"3Ñ"3Ñ3Ó4¼¸a»Ò@Ð@Ð@Ü�H˜uŸ}™}Ñ,Ó-´º	Ó1BÒBÐBÑBr&   )Úsympy.physics.mechanics.modelsÚphysicsÚ	mechanicsr   Úsympyr   r   r   r   r   Úsympy.simplify.simplifyr   Úsympy.physics.mechanicsr	   r%   r4   rA   rF   © r&   r$   ú<module>rN      s/   ðß /Ó /ß 4Õ 4Ý ,Ý 4ò=ò>Cò&!@óHCr&   