+
    h(                         ^ RI HtHt ^ RIHt ^ RIHt ^ RIHtH	t	 ^ RI
Ht ^ RIHtHtHtHt ^ RIHt ^ RIHtHtHt ^ R	IHt ]! R
4      tR tR tR tR tR tR t R t!R t"R t#R t$R t%R# )    )Floatpi)symbols)ordered)cossin)ImmutableDenseMatrix)ReferenceFrameVectordynamicsymbolsdot)VectorTypeError)xyz)raisesAc                     \        R \        R7      w  rr#\        R4      w  rErgrVP                  WV P                  4       VP                  WVP
                  4       VP                  W&VP                  4       WsP                  ,          WP
                  ,          ,           WP                  ,          ,           p
\        \        V
P                  V 4      4      4      WEWgW08X  g   Q h\        \        V
P                  V4      4      4      WVWxV	08X  g   Q h\        \        V
P                  V4      4      4      WgW08X  g   Q h\        \        V
P                  V4      4      4      WxV	08X  g   Q hR# )z
A, B, C, D)clsa, b, c, d, e, fN)
r   r
   r   orient_axisr   r   r   setr   free_dynamicsymbols)r   BCDabcdefvs              H/usr/lib/python3/dist-packages/sympy/physics/vector/tests/test_vector.pytest_free_dynamicsymbolsr%      s   >:JA!%&89A!MM!MM!MM!	######Awq,,Q/01aA!5GGGGwq,,Q/01aA!_DDDwq,,Q/01aA\AAAwq,,Q/01aAY>>>    c            
      h  aa \         P                  \         P                  8w  g   Q h\         P                  \         P                  8w  g   Q h\         P                  \         P                  8w  g   Q h\         P                  ^ ,           \         P                  8X  g   Q h\        \         P                  ,          \        \         P                  ,          ,           \        \         P                  ,          ,           o\        ^,          \         P                  ,          \        ^,          \         P                  ,          ,           \        ^,          \         P                  ,          ,           p SV ,           oSV ,
          p\	        S\
        4      '       g   Q h\        S\         P                  4      \        8X  g   Q h\        S\         P                  4      \        8X  g   Q h\        S\         P                  4      \        8X  g   Q h\	        V \
        4      '       g   Q h\        V \         P                  4      \        ^,          8X  g   Q h\        V \         P                  4      \        ^,          8X  g   Q h\        V \         P                  4      \        ^,          8X  g   Q h\	        S\
        4      '       g   Q h\        S\         P                  4      \        ^,          \        ,           8X  g   Q h\        S\         P                  4      \        ^,          \        ,           8X  g   Q h\        S\         P                  4      \        ^,          \        ,           8X  g   Q h\	        V\
        4      '       g   Q h\        V\         P                  4      \        \        ^,          ,
          8X  g   Q h\        V\         P                  4      \        \        ^,          ,
          8X  g   Q h\        V\         P                  4      \        \        ^,          ,
          8X  g   Q hSP                  \         4      \        \        .\        .\        ..4      8X  g   Q h\        R4      p\         P                  RRV\         P                  34      pSP                  V4      \        \        .\        \        V4      ,          \        \        V4      ,          ,           .\        ) \        V4      ,          \        \        V4      ,          ,           ..4      8X  g   Q h\        R4      p\        \         P                  ,          \        \         P                  ,          ,           \        VP                  ,          ,           p\        ^ 4      P                  4       / 8X  g   Q hSP                  4       \         S/8X  g   Q hVP                  4       \         \        \         P                  ,          \        \         P                  ,          ,           V\        VP                  ,          /8X  g   Q h\        \         P                  ,          \        \         P                  ,          ,           \        \         P                  ,          ,           pVP                  \         4      \        \        \        08X  g   Q h\!        \"        VV3R l4       R# )r   qr   Axisc                  &   < SP                  S 4      # N)	applyfunc)v1v3s   r$   <lambda>test_Vector.<locals>.<lambda>Q   s    bll2.r&   N)r   r   r   r   
isinstancer   r   	to_matrixMatrixr   	orientnewr   r   r
   separatefree_symbolsr   	TypeError)v2v4r(   r   v5v6r-   r.   s         @@r$   test_Vectorr<      s	   33!##::33!##::33!##::337acc>>	
133133133	B	
AaccAqDH	q!tACCx	'B	bB	bBb&!!!!r133<1r133<1r133<1b&!!!!r133<1a4r133<1a4r133<1a4b&!!!!r133<1a4!8###r133<1a4!8###r133<1a4!8###b&!!!!r133<1q!t8###r133<1q!t8###r133<1q!t8###<<?fqcA3_5555A	C!QSS*A<<?fqc()CF
QQZ(?&@()rCF{QQZ'?&@&B C C C C
 	sA	
133133133	B!92%%%;;=QG###;;=Q!##!##q!ACC%8888 
133133133	B??1!Aa(((
9./r&   c                  #   \        R 4      w  rr#\        R ^4      w  rErg\        R ^4      w  rr\        R4      pVP                  RRW,P                  .4      pVP                  RRWP                  .4      pWP                  ,          W,P
                  ,          ,           pW.P                  ,          V,           pVP                  V4      pVP                  V4      pWP                  ,          WP
                  ,          ,           W-P                  ,          ,           pVP                  V4      W]P                  ,          W,          VP
                  ,          ,           WlP
                  ,          ,           8X  g   Q hVP                  V4      W]P                  ,          W&,          VP                  ,          ,           WlP
                  ,          ,           8X  g   Q hVP                  V4      W]P                  ,          W&,          VP                  ,          ,           VVP
                  ,          ,           V\        V4      ,          V,          VP                  ,          ,
          8X  g   Q hVP                  V4      W]P                  ,          W,           V,          VP
                  ,          ,           WnP                  ,          ,           VVP
                  ,          ,           8X  g   Q hVP                  V4      W]P                  ,          WnP                  ,          ,           W&,          VP                  ,          ,           WlP
                  ,          ,           8X  g   Q hVP                  V4      W]P                  ,          WnP                  ,          ,           W&,          VP                  ,          ,           WlP
                  ,          ,           V\        V4      ,          V,          VP                  ,          ,
          8X  g   Q hVP                  V4      WP                  ,          WV,          VP
                  ,          ,           V^,          W*,          ,           VP                  ,          ,           WP
                  ,          ,           V\        V4      ,          V,          V,          \        V4      V,          V,          ,
          V\        V4      ,          V	,          ,
          VP                  ,          ,           8X  g   Q hVP                  V4      WP                  ,          ^V^,          ,          W*,          ,           VP                  ,          ,           V
W&^,          ,          ,
          VP
                  ,          ,           V\        V4      ,          V,          V,          \        V4      V,          V,          ,
          V\        V4      ,          V	,          ,
          VP                  ,          ,           8X  g   Q hVP                  V4      WP                  ,          V\        V4      ,          V^,          ,          VP
                  ,          ,
          ^V^,          ,          W*,          ,           VP                  ,          ,           WV^,          ,          ,
          VP
                  ,          ,           ^V,          \        V4      ,          V,          V,          ^\        V4      ,          V,          V,          ,
          V\        V4      ,          V	,          ,
          VP                  ,          ,           ,
          P                  V4      P                  4       ^ 8X  g   Q hVP                  V4      WP                  ,          WeV,           ,          VP
                  ,          ,           WP                  ,          ,           V^,          W*,          ,           VP                  ,          ,           WP
                  ,          ,           V\        V4      ,          V,          V,          \        V4      V,          V,          ,
          V\        V4      ,          V	,          ,
          VP                  ,          ,           8X  g   Q hVP                  V4      WP                  ,          WP                  ,          ,           ^V^,          ,          W*,          ,           VP                  ,          ,           WV^,          ,          ,
          VP
                  ,          ,           V\        V4      ,          V,          V,          \        V4      V,          V,          ,
          V\        V4      ,          V	,          ,
          VP                  ,          ,           8X  g   Q hVP                  V4      WP                  ,          V\        V4      ,          V^,          ,          VP
                  ,          ,
          WP                  ,          ,           ^V^,          ,          W*,          ,           VP                  ,          ,           WV^,          ,          ,
          VP
                  ,          ,           ^V,          \        V4      ,          V,          V,          ^\        V4      ,          V,          V,          ,
          V\        V4      ,          V	,          ,
          VP                  ,          ,           ,
          P                  V4      P                  4       ^ 8X  g   Q hVP                  V4      WMP                  ,          W%,          V,           VP
                  ,          ,           V) V,          V,           VP                  ,          ,           8X  g   Q hVP                  V4      WMP                  ,          W]P
                  ,          ,           WmP                  ,          ,           8X  g   Q hVP                  V4      V) V,          V,           VP                  ,          W,          V,           VP
                  ,          ,           WmP                  ,          ,           8X  g   Q hVP                  WL4      ^ 8X  g   Q hVP                  W\4      VP                  V\        V4      ,          VP                  ,          ,
          8X  g   Q hVP                  Wl4      W,P                  ,          VP
                  ,           8X  g   Q hVP                  WM4      ^ 8X  g   Q hVP                  W]4      VP                  V\        V4      ,          VP                  ,          ,
          8X  g   Q hVP                  Wm4      W,P                  ,          VP
                  ,           8X  g   Q hVP                  WN4      ^ 8X  g   Q hVP                  W^4      VP                  V\        V4      ,          VP                  ,          ,
          8X  g   Q hVP                  Wn4      W,P                  ,          VP
                  ,           8X  g   Q hVP                  WL4      ^ 8X  g   Q hVP                  W\4      VP                  V\        V4      ,          VP                  ,          ,
          8X  g   Q hVP                  Wl4      VP                  W,P                  ,          ,           VP
                  ,           8X  g   Q hVP                  WM4      ^ 8X  g   Q hVP                  W]4      VP                  V\        V4      ,          VP                  ,          ,
          8X  g   Q hVP                  Wm4      VP                  W,P                  ,          ,           VP
                  ,           8X  g   Q hVP                  WN4      ^ 8X  g   Q hVP                  W^4      VP                  V\        V4      ,          VP                  ,          ,
          8X  g   Q hVP                  Wn4      VP                  W,P                  ,          ,           VP
                  ,           8X  g   Q hV^,          VP
                  ,          V^,          VP
                  ,          ,           V^,          VP
                  ,          ,           p^V,          p^V,          pV^,          VP
                  ,          P                  VP                  4      P                  V4      pV^,          VP
                  ,          P                  VP
                  4      P                  V4      pV^,          VP
                  ,          P                  VP                  4      P                  V4      pVP                  W4      P                  w  pp\        VP                  W4      P                  4      ^8X  g   Q hV^,          V8X  g   Q hV^,          V8X  g   Q hV^ ,          \        VVV,           V.4      8X  g   Q hV^ ,          \        ^ V^ .4      8X  g   Q hR# )zq1 q2 q3 q4Nr   r)   r   N)r   r
   r4   r   r   r   dtr   r   expresssimplifydiffr   argslenr3   )q1q2q3q4q1dq2dq3dq4dq1ddq2ddq3ddq4ddr>   r   r   r-   r8   r.   r9   r:   r;   n_measya_measyb_measxb_measyb_measzn_compa_comps                               r$   test_Vector_diffsrX   T   sC   #M2NBB'q9Cc+M1=DsA	C"cc+A	C"cc+A	ccBH	B	ccBB	qB	qB	CC"SS&2cc6	!B558sSSy28acc>1C##I====558sSSy28acc>1C##I====558cc	BHqssN2S6  3r7lS013367 8 8 8558cc	RWOacc$99C##IEI    558sSSy39,rx!##~=cc	IIII558cc	C##I-133>ssJSWs*QSS01 2 2 2558ss
SY_4Q8J8 "SSj),.RL3,>,DB#+-,.03r7lT.A-BEFSS,II J J J 558ss
a#q&j29&<%CCt!VH$'(ssG+ +.03r7lS.@3.FB#+/,.03r7lT.A/BEFSS.II J J J EE!HSS2c"g:c1f#4QSS#88Ac1fH
=< #q&y(!##-.122c"gc1A#1E	#b'	#c2s2wJtO2,-.SS111 23:71:hhjAN N N 558ss
S#I%6%<<tcczIa")+qss2359CCZ@CEBD "%D&(+D,.1"gmc.ADBDFBE "&E'D'*+##C.. / / / 558ss
TCCZ/1sAv:	3I3 #36k1QSS89<>RL=!="$'GcMC$7=8:<s2w,;= !<$$ % % % EE!HSS2c"g:c1f#4QSS#8848C36BG+QSS0148c1f94Dacc3IJ2c"gc)#-#b'	#c0AACGD)*+##.. / 18
88:K K K 558s33w"&3,!33s3w}acc6IIIII558s33wSS(3ss72222558C#qss*bfslACC-??#cc'IIII773?a773?accBRL133$66666773?b33hn,,,773?a773?accBRL133$66666773?b33hn,,,773?a773?accBRL133$66666773?b33hn,,,773?a773?accBRL133$66666773?accBHnqss2222773?a773?accBRL133$66666773?accBHnqss2222773?a773?accBRL133$66666773?accBHnqss2222 
QqssRU133Y	Qqss	*BdGdG1uQSSyooacc"''+G1uQSSyooacc"''+G1uQSSyooacc"''+GWWR^((NFFrwwr~""#q(((!9>>!9>>!97):GDEEEE!97A////r&   c                  &  aaa \        R 4      o\        R4      p \        R4      p\        R4      w  or#pSV,          V P                  ,          VSP                  ,          ,           V^,          SP                  ,          ,           oSP                  SSRR7      W P                  ,          8X  g   Q hSP                  SV RR7      W P                  ,          8X  g   Q hSP                  VSRR7      SP                  8X  g   Q hSP                  W0RR7      SP                  8X  g   Q hSP                  W1RR7      SP                  8X  g   Q hSP                  VSRR7      ^V,          SP                  ,          8X  g   Q h\        \        VVV3R l4       R# )r>   r   r   zu1 u2 u3 u4F)
var_in_dcmc                  (   < SP                  SS 4      # r+   rB   )r>   u1r#   s   r$   r/   (test_vector_var_in_dcm.<locals>.<lambda>   s    qvvb!}r&   N)r
   r   r   r   r   rB   r   
ValueError)r   r   u2u3u4r>   r]   r#   s        @@@r$   test_vector_var_in_dcmrc      s9   sAsAsA#M2NB
R!##QSS 2q5133;.A66"aE6*b33h66666"aE6*b33h66666"aE6*acc11166"E6*acc11166"E6*acc11166"aE6*a"fqssl:::
:,-r&   c            
         \        R 4      w
  rr#rErgr\        R4      p
^V ,          ^V,          ,           V
P                  ,          pWP                  ,          W,           W,          ,          8w  g   Q hVP                  4       pWP                  ,          W,           W,          ,          8X  g   Q hV	^,          V^,          ,          ^\        ,          V,          V^,          ,          ,          V
P                  ,          pVP                  4       pWP                  ,          V	^,          V^,          ,          ^\        ,          V,          V^,          ,          ,          8X  g   Q h^^V ,          ,           ^^^V ,          ,           ,          ,
          ^^V ,          ,           ,          V
P                  ,          pVP                  4       pWP                  ,          ^ 8X  g   Q hRV ,          V^,          ,          ^V^,          ,          ,
          ^V ^,          ,          V,          ,
          W,           ^,          ,          V
P                  ,          pVP                  4       pWP                  ,          RV,          8X  g   Q hR# )zx, y, z, k, n, m, w, f, s, Ar>   N)r   r
   r   rA   r   )r   r   r   knmwr"   sr   r>   test1test2test3test4s                  r$   test_vector_simplifyrp      s   #*+I#J A!aAsAUQU]acc!ECCKQUqu----NNECCKQUqu----TAqD[AFQJA-.!##5ENNECCKQTAqD[AFQJA,=>???!a%i!q1q5y/)a!a%i8ACC?ENNECCKA1fq!tma!Q$h&QTA5!%!CqssJENNECCKBF"""r&   c                     \        R 4      w  r\        \        P                  ,          pVP	                  ^4      \        R^4      \        P                  ,          8X  g   Q h\        \        P                  ,          ^V ,          \        P                  ,          ,           V\        P                  ,          ,
          pVP	                  ^4      \        R^4      \        P                  ,          \        R^4      V ,          \        P                  ,          ,           V\        P                  ,          ,
          8X  g   Q hVP	                  ^V RVR/R7      \        R^4      \        P                  ,          \        R^4      \        P                  ,          ,           \        R^4      \        P                  ,          ,
          8X  g   Q hR	# )
za bz3.14165gX9v?gͪՖ@)subsz3.1415926536z6.17z5.8973N)r   r   r   r   evalfr   r   r   )r   r   r#   s      r$   test_vector_evalfru      sD   5>DA
QSSA771:x+acc1111
QSS1q5133;QSS(A771:x+acc1E#qMA4E4KKaRSRURUgUUUU771Aua/70E.!4Lqss4RUZ[acdUehihkhkUk4knst|~  oA  DE  DG  DG  oG  5G  G  G  Gr&   c                  j   \        R 4      p V P                  V P                  ,           pV P                  pVP	                  V4      \
        ^,          8X  g   Q h\        R4      pVP                  W P                  \
        4       V P                  pVP                  pVP	                  V4      ^ 8X  g   Q hR# )r   r   N)r
   r   r   r   angle_betweenr   r   )r   r-   r8   r   r.   r9   s         r$   test_vector_anglerx      s    sA	
qssB	
BB2a4'''sAMM!SS"	
B	
BB1$$$r&   c                  <  aaa \        R 4      w  oop S^,          \        P                  ,          SS,          \        P                  ,          ,           SS,          V ,          \        P                  ,          ,           oSP                  S\        S4      /4      \        S4      ^,          \        P                  ,          S\        S4      ,          \        P                  ,          ,           SV ,          \        S4      ,          \        P                  ,          ,           8X  g   Q hSP                  SS,          \        /4      S^,          \        P                  ,          \        \        P                  ,          ,           SS,          V ,          \        P                  ,          ,           8X  g   Q hSP                  SS,          V ,          ^/4      S^,          \        P                  ,          SS,          \        P                  ,          ,           \        P                  ,           8X  g   Q hSP                  S^V ^ /4      \        P                  S\        P                  ,          ,           8X  g   Q h\        \        V3R l4       \        \        VVV3R l4       R# )zx y zc                  $   < S P                  4       # r+   xreplace)r#   s   r$   r/   &test_vector_xreplace.<locals>.<lambda>   s    ajjlr&   c                  *   < S P                  SS.4      # r+   r{   )r#   r   r   s   r$   r/   r}      s    ajj!Q0r&   N)
r   r   r   r   r   r|   r   r   r   r7   )r   r#   r   r   s    @@@r$   test_vector_xreplacer      s   gGAq!	1qss
QqS133Y1Q,A::q3q6l#s1vqy1333q6ACC'G!A#cRSf*WXWZWZJZ'ZZZZ::qsRj!QTACCZ"qss(%:QqSUQSS[%HHHH::qs1uqk"ad133h1QSS&8133&>>>>::qAaj!QSS1qss7]222
9*+
901r&   c                     a aa \        R 4      o\        R4      o SS P                  ,          o\        \        V VV3R l4       R# )r]   r>   c                  (   < SP                  S S4      # r+   r\   r>   N_v_Ar]   s   r$   r/   "test_issue_23366.<locals>.<lambda>   s    EJJq"$5r&   N)r   r
   r   r   r   r   s   @@@r$   test_issue_23366r      s/    		BsAqssFE
?56r&   c                     \        R 4      w  rr#rE\        R4      pWP                  ,          WP                  ,          ,           W&P                  ,          ,           pW6P                  ,          WFP                  ,          ,           WVP                  ,          ,           p\        W,          W,          W,          .W,          W,          W,          .W#,          W$,          W%,          ..4      p	VP                  V4      P                  V4      V	8X  g   Q hWx,          P                  V4      V	8X  g   Q h\        W0,          W1,          W2,          .W@,          WA,          WB,          .WP,          WQ,          WR,          ..4      p
VP                  V4      P                  V4      V
8X  g   Q hW,          P                  V4      V
8X  g   Q hR# r   r>   N)r   r
   r   r   r   r3   outerr2   )r   r   r   r    r!   r"   r>   r-   r8   v1v2v2v1s              r$   test_vector_outerr      sP   12A!sA	
333333	B	
333333	BACac?Cac?Cac?$ %D 88B<!!!$,,,Gq!T)))ACac?Cac?Cac?$ %D 88B<!!!$,,,Gq!T)))r&   c                  4   \        R 4      w  rr#rE\        R4      pWP                  ,          WP                  ,          ,           W&P                  ,          ,           pW6P                  ,          WFP                  ,          ,           WVP                  ,          ,           pWx,           W,           8X  g   Q hWx,
          V) V,           8X  g   Q hWx,          W,          8X  g   Q hWx,          VP                  V4      8X  g   Q hW,          VP                  V4      8X  g   Q hR# r   )r   r
   r   r   r   cross)	r   r   r   r    r!   r"   r>   r-   r8   s	            r$   test_overloaded_operatorsr     s    12A!sA	
333333	B	
333333	B7bg7rcBh7bg7bhhrl"""7bhhrl"""r&   N)&sympy.core.numbersr   r   sympy.core.symbolr   sympy.core.sortingr   (sympy.functions.elementary.trigonometricr   r   sympy.matrices.immutabler	   r3   sympy.physics.vectorr
   r   r   r   sympy.physics.vector.vectorr   	sympy.abcr   r   r   sympy.testing.pytestr   r   r%   r<   rX   rc   rp   ru   rx   r   r   r   r    r&   r$   <module>r      sk    * % & ? C L L 7   '3?40nQ0h.&#,G	%27*"
#r&   