+
    h                         ^ RI HtHt ^ RIHt ^ RIHtHt ^ RIH	t
 ^ RIHtHtHt ^ RIHt ^ RIHt ]! R4      tR	 tR
 tR tR tR tR tR# )    )Floatpi)symbols)cossin)ImmutableDenseMatrix)ReferenceFramedynamicsymbolsouter_check_dyadic)raisesAc            	      ,  a \         P                  \         P                  ,          o\         P                  \         P                  ,          p \         P                  \         P                  ,          pS^ ,          ^ 8X  g   Q hS^ 8w  g   Q hS^,          ^\         P                  ,          \         P                  ,          8X  g   Q hSR,          RS,          8X  g   Q hS^ S,          ,          ^ 8X  g   Q hSV ,          ^ 8X  g   Q hS\         P                  ,          \         P                  8X  g   Q hS\         P                  ,          ^ 8X  g   Q hS\         P                  ,          \         P                  \         P                  ,          8X  g   Q hS\         P                  ,          \         P                  ) \         P                  ,          8X  g   Q hV \         P                  ,          \         P                  ) \         P                  ,          8X  g   Q h\         P                  S,          ^ 8X  g   Q h\         P                  S,          \         P                  ) \         P                  ,          8X  g   Q h\         P                  S,          \         P                  \         P                  ,          8X  g   Q h\         P                  S,          \         P                  8X  g   Q h\         P                  S,          ^ 8X  g   Q h\         P                  V ,          \         P                  8X  g   Q hSV,          \         P                  \         P                  ,          8X  g   Q hVS,          ^ 8X  g   Q hSP	                  \         4      ^ 8X  g   Q h\        R4      p\        R^4      p\         P                  RRV\         P                  .4      pSP                  V4      SP                  WD4      8X  g   Q hSP                  V4      \        V4      ^,          VP                  VP                  ,          ,          \        V4      ) \        V4      ,          VP                  VP                  ,          ,          ,           \        V4      ) \        V4      ,          VP                  VP                  ,          ,          ,           \        V4      ^,          VP                  VP                  ,          ,          ,           8X  g   Q hSP                  V\         4      \        V4      VP                  \         P                  ,          ,          \        V4      ) VP                  \         P                  ,          ,          ,           8X  g   Q hSP                  \         V4      \        V4      \         P                  VP                  ,          ,          \        V4      ) \         P                  VP                  ,          ,          ,           8X  g   Q hSP	                  V4      V) \         P                  \         P                  ,          ,          V) \         P                  \         P                  ,          ,          ,           8X  g   Q hSP                  \         4      \        . R
O. RO. RO.4      8X  g   Q hSP                  \         V4      \        \        V4      \        V4      ) ^ .. RO. RO.4      8X  g   Q hVP                  \         4      \        . RO. RO. RO.4      8X  g   Q h\        R4      w  rVrxrV\         P                  ,          V\         P                  ,          ,           V\         P                  ,          ,           pV\         P                  ,          V	\         P                  ,          ,           V
\         P                  ,          ,           pVP                  V4      pVP                  \         4      \        WX,          WY,          WZ,          .Wh,          Wi,          Wj,          .Wx,          Wy,          Wz,          ..4      8X  g   Q hVP                  V4      p\         P                  RRV\         P                  .4      p\        VP                  \         4      VP                  \         4      ,          VP                  \         4      P                   ,          VP                  V4      4       F$  w  ppVV,
          P#                  4       ^ 8X  d   K$  Q h	  \%        \&        V3R l4       R	# )r   g       @g      ?qBAxisza, b, c, d, e, fCc                  &   < S P                  ^ 4      # r   )	applyfunc)d1s   H/usr/lib/python3/dist-packages/sympy/physics/vector/tests/test_dyadic.py<lambda>test_dyadic.<locals>.<lambda>A   s    bll1o    N)   r   r   )r   r   r   )r   r   r   )r   xyzdtr
   	orientnewexpressr   r   	to_matrixMatrixr   r   zipdcmTsimplifyr   	TypeError)d2d3r   qdr   abcdefv1v2d4d5r   expectedactualr   s                     @r   test_dyadicr:      s   	
qssB	
qssB	
qssB6Q;;7N76QWqss]"""7cBhR=A7a<<8qss??8q==8qssQSSy   8uqss{"""8uqss{"""338q==338uqss{"""338qssQSSy   338qss??338q==338qss??7accACCi7a<<558q==sA	Q	B	C!QSS*A::a=BJJq,,,,::a=c!faiACC!##I63q6'CF:JSS133Y: F7SV+acc	:;>A!faiSS133Y>    ::aA13395#a&QSS133Y8OOOOO::aA13395#a&QSS133Y8OOOOO558acc	*rcaccACCi-@@@@@<<?fiI%FGGGG<<1#a&3q6'1)=)2)2)4 "5 5 5 5 <<?fiI%FGGGG12A!	
QSS1qss7	QW	$B	
QSS1qss7	QW	$B	"B<<?fquaeQU&;'(uaeQU&;'(uaeQU&;&= > > > > 
"B	C!QSS*Aa2<<? :QUU1XZZ G "Q1&6!++-2221 9-.r   c            
         \        R 4      w
  rr#rErgr\        R4      p
V
P                  V
P                  ,          p^V ,          ^V,          ,           V,          pV
P                  V,          V
P                  ,          W,           W,          ,          8w  g   Q hVP                  4       pV
P                  V,          V
P                  ,          W,           W,          ,          8X  g   Q hV	^,          V^,          ,          ^\        ,          V,          V^,          ,          ,          V,          pVP                  4       pV
P                  V,          V
P                  ,          V	^,          V^,          ,          ^\        ,          V,          V^,          ,          ,          8X  g   Q h^^V ,          ,           ^^^V ,          ,           ,          ,
          ^^V ,          ,           ,          V,          pVP                  4       pV
P                  V,          V
P                  ,          ^ 8X  g   Q hRV ,          V^,          ,          ^V^,          ,          ,
          ^V ^,          ,          V,          ,
          W,           ^,          ,          V,          pVP                  4       pV
P                  V,          V
P                  ,          RV,          8X  g   Q hR# )zx, y, z, k, n, m, w, f, s, ANN)r   r	   r   r)   r   )r   r   r    knmwr3   sr   r<   dytest1test2test3test4s                   r   test_dyadic_simplifyrI   D   s   #*+I#J A!aAsA	
qssBUQU]b ECC%K!##15QU"3333NNECC%K!##15QU"3333TAqD[AFQJA-."4ENNECC%K!##1a4!Q$;!b&1*q!t2C#DEEE!a%i!q1q5y/)a!a%i8B>ENNECC%K!##!###1fq!tma!Q$h&QTA5!%!CrIENNECC%K!##"q&(((r   c                      \        R 4      p \        R4      pWP                  V P                  ,          ,          pVP                  V^/4      ^V P                  V P                  ,          ,          8X  g   Q hR# )r<   rC   N)r	   r   r   subs)r<   rC   r.   s      r   test_dyadic_subsrL   [   sR    sAA	339A661a&>Qacc	]***r   c                  (    \        \        R  4       R# )c                      \        ^ 4      # r   r    r   r   r   #test_check_dyadic.<locals>.<lambda>c   s	    mA.r   N)r   r*   rO   r   r   test_check_dyadicrQ   b   s    
9./r   c                     \        R 4      p \        V P                  V P                  ,          ,          pVP                  ^4      \	        R^4      V P                  V P                  ,          ,          8X  g   Q h\        R4      p^V,          \        ,          V P                  V P                  ,          ,          pVP                  ^4      \	        R^4      \	        R^4      ,          V,          V P                  V P                  ,          ,          8X  g   Q hVP                  ^	VR/R7      \	        R^	4      V P                  V P                  ,          ,          8X  g   Q hR# )r<   z3.1416rC   5g"~@)rK   z80.48760378N)r	   r   r   evalfr   r   )r<   r.   rC   s      r   test_dyadic_evalfrU   f   s    sA
accACCiA771:x+qssQSSy9999A	A
QSS133YA771:sAx);;a?1339MMMM771Au:7&%q*AQSS133Y*OOOOr   c                  ~  aaa \        R 4      w  oop \        R4      p\        VP                  VP                  4      pSS,          V,          oSP	                  S\        S4      /4      \        S4      S,          V,          8X  g   Q hSP	                  SS,          \        /4      \        V,          8X  g   Q hSS,          V ,          V,          oSP	                  SS,          V ,          ^/4      V8X  g   Q hSP	                  S^V ^ /4      V8X  g   Q h\        \        V3R l4       \        \        VVV3R l4       R# )zx y zr<   c                  $   < S P                  4       # Nxreplace)vs   r   r   &test_dyadic_xreplace.<locals>.<lambda>z   s    ajjlr   c                  *   < S P                  SS.4      # rX   rY   )r[   r   r   s   r   r   r\   {   s    ajj!Q0r   N)	r   r	   r   r   rZ   r   r   r   r*   )r    r<   Dr[   r   r   s      @@@r   test_dyadic_xreplacer_   p   s    gGAq!sAacc133A	!aA::q3q6l#s1vax!|333::qsRj!R!V+++	
1q1A::!ax!n%***::qAaj!Q&&&
9*+
901r   N)sympy.core.numbersr   r   sympy.core.symbolr   (sympy.functions.elementary.trigonometricr   r   sympy.matrices.immutabler   r%   sympy.physics.vectorr	   r
   r   sympy.physics.vector.dyadicr   sympy.testing.pytestr   r   r:   rI   rL   rQ   rU   r_   rO   r   r   <module>rg      sG    * % ? C F F 5 '35/p).+0P2r   