+
    iQ.                       ^ RI Ht ^ RIHt ^ RIHtHt ^ RI	H
t
Ht ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ R	IHtHtHt ^ R
IHt ]'       d   ^ RIHt  ! R R]4      t ! R R]]4      t ! R R]]4      t  ! R R]4      t!R# )    )annotations)TYPE_CHECKING)simplifytrigsimp)call_highest_priority
_sympifyit)	StdFactKBdiff)Integral)factor)SAddMul)Expr)
BaseVectorc                      ] tR t^t$ RtR]R&   ]! R4      R 4       t]! R4      R 4       t]! R4      R	 4       t	]! R
4      R 4       t
]! R]4      ]! R4      R 4       4       t]! R]4      ]! R4      R 4       4       tR t]! R]4      ]! R4      R 4       4       t]! R4      R 4       tR%R lt];P                  ]P$                  P                  ,          un        ]tR t];P                  ]P                  ,          un        R t];P                  ]P                  ,          un        R tR tR tR tR tR t];P                  ]P                  ,          un        R&R  lt R! t!R" t"]";P                  ]#P                  ,          un        R# t$R$t%R# )'BasisDependentz
Super class containing functionality common to vectors and
dyadics.
Named so because the representation of these quantities in
sympy.vector is dependent on the basis they are expressed in.
BasisDependentZerozero__radd__c                	$    V P                  W4      # N	_add_funcselfothers   &&Y/var/www/html/photoedit/myenv/lib/python3.14/site-packages/sympy/vector/basisdependent.py__add__BasisDependent.__add__   s    ~~d**    r    c                	$    V P                  W4      # r   r   r   s   &&r   r   BasisDependent.__radd__   s    ~~e**r"   __rsub__c                	&    V P                  W) 4      # r   r   r   s   &&r   __sub__BasisDependent.__sub__#   s    ~~dF++r"   r'   c                	&    V P                  W) 4      # r   r   r   s   &&r   r%   BasisDependent.__rsub__'   s    ~~eU++r"   r   __rmul__c                	$    V P                  W4      # r   	_mul_funcr   s   &&r   __mul__BasisDependent.__mul__+   s     ~~d**r"   r/   c                	$    V P                  W4      # r   r-   r   s   &&r   r+   BasisDependent.__rmul__0   s     ~~e**r"   c                	B    V P                  \        P                  V 4      # r   )r.   r   NegativeOner   s   &r   __neg__BasisDependent.__neg__5   s    ~~ammT22r"   __rtruediv__c                	$    V P                  V4      # r   )_div_helperr   s   &&r   __truediv__BasisDependent.__truediv__8   s     &&r"   r;   c                	    \        R 4      # )zInvalid divisor for division)	TypeErrorr   s   &&r   r8   BasisDependent.__rtruediv__=   s    788r"   Nc                    RVRVRVRVRVRV/pV P                   p	V P                  P                  4        F%  w  rWP                  ! V3/ VB V
,          ,          p	K'  	  V	# )ze
Implements the SymPy evalf routine for this quantity.

evalf's documentation
=====================

subsmaxnchopstrictquadverbose)r   
componentsitemsevalf)r   nrA   rB   rC   rD   rE   rF   optionsveckvs   &&&&&&&&    r   rI   BasisDependent.evalfA   sg     $tVD(6tYw0iiOO))+DA771((1,,C ,
r"   c           	         V P                   P                  4        UUu. uF  w  r#\        V3/ VB V,          NK  	  pppV P                  ! V!  # u uppi )zn
Implements the SymPy simplify routine for this quantity.

simplify's documentation
========================

)rG   rH   simpr   )r   kwargsrM   rN   simp_componentss   &,   r   r   BasisDependent.simplifyT   sY     $(??#8#8#:<#:41  ,V,q00#: 	 <~~//<   Ac           	         V P                   P                  4        UUu. uF  w  r#\        V3/ VB V,          NK  	  pppV P                  ! V!  # u uppi )zo
Implements the SymPy trigsimp routine, for this quantity.

trigsimp's documentation
========================

)rG   rH   tsimpr   )r   optsrM   rN   trig_componentss   &,   r   r   BasisDependent.trigsimpb   sY     $(??#8#8#:<#:41 !+d+a//#: 	 <~~//<rU   c                	&    V P                   ! R/ VB # N )r   )r   rR   s   &,r   _eval_simplifyBasisDependent._eval_simplifyp   s    }}&v&&r"   c                	&    V P                   ! R/ VB # r\   )r   )r   rX   s   &,r   _eval_trigsimpBasisDependent._eval_trigsimps   s    }}$t$$r"   c                	$    V P                  V4      # r   r
   )r   wrts   &&r   _eval_derivativeBasisDependent._eval_derivativev   s    yy~r"   c           	     	    V P                   P                  4        UUu. uF  w  r4\        V.VO5/ VB V,          NK  	  pppV P                  ! V!  # u uppi r   )rG   rH   r   r   )r   symbolsassumptionsrM   rN   integral_componentss   &*,   r   _eval_IntegralBasisDependent._eval_Integraly   s`    +/??+@+@+BD+B41  (CGC{CaGG+B 	 D~~233D   !Ac                &    V \         P                  3# )zb
Returns the expression as a tuple wrt the following
transformation -

expression -> a/b -> a, b

r   Oner5   s   &r   as_numer_denomBasisDependent.as_numer_denom~   s     QUU{r"   c           	         V P                   P                  4        UUu. uF  w  r4\        V.VO5/ VB V,          NK  	  pppV P                  ! V!  # u uppi )z
Implements the SymPy factor routine, on the scalar parts
of a basis-dependent expression.

factor's documentation
========================

)rG   rH   fctrr   )r   argsrR   rM   rN   fctr_componentss   &*,   r   r   BasisDependent.factor   s^     $(??#8#8#:<#:41  3D3F3a77#: 	 <~~//<rm   c                &    \         P                  V 3# )z1Efficiently extract the coefficient of a product.ro   )r   rationals   &&r   as_coeff_MulBasisDependent.as_coeff_Mul   s    t}r"   c                   a  ^ \         ;QJ d"    . V 3R lS P                   4       F  NK  	  53# ! V 3R lS P                   4       4      3# )z3Efficiently extract the coefficient of a summation.c              3  V   <"   T F  qSP                   V,          ,          x  K   	  R # 5ir   )rG   ).0xr   s   & r   	<genexpr>.BasisDependent.as_coeff_add.<locals>.<genexpr>   s      H1DOOA...s   &))tuplerG   )r   depss   f*r   as_coeff_addBasisDependent.as_coeff_add   s5    %%HH%HH%HHHHHr"   c           	        V F$  p\        V\        4      '       g   K  \        R4      h	  V P                  P	                  4        UUu. uF  w  rE\        V.VO5/ VB V,          NK  	  pppV P                  ! V!  # u uppi )za
Implements the SymPy diff routine, for vectors.

diff's documentation
========================

zInvalid arg for differentiation)
isinstancer   r>   rG   rH   dfr   )r   ru   rR   r   rM   rN   diff_componentss   &*,    r   r   BasisDependent.diff   s     A!^,, ABB  $(??#8#8#:<#:41 a1$1&1A55#: 	 <~~//<s   !A<c                    V P                    Uu. uF-  pV P                   V,          P                  ! R/ VB V,          NK/  	  ppV P                  ! V!  # u upi )z(Calls .doit() on each term in the Dyadicr]   )rG   doitr   )r   hintsr   doit_componentss   &,  r   r   BasisDependent.doit   s[     %)OO5$3q  ??1-22;U;a??$3 	 5~~//5s   3Ar]   )   Nd   FFNF)F)&__name__
__module____qualname____firstlineno____doc____annotations__r   r    r   r'   r%   r   NotImplementedr/   r+   r6   r;   r8   rI   r   rJ   r   rQ   r   rW   r^   ra   re   rk   rq   r   rt   rz   r   r   r   r   __static_attributes__r]   r"   r   r   r      s    :&+ '+ 9%+ &+ :&, ', 9%, &, (:&+ ' )+ (9%+ & )+3 (>*' + )' =)9 *9 
MMTZZ'''MA
0 $
0 %'%4
0 NNdll"NI0 	LLBJJL0r"   r   c                  ,   a  ] tR t^tRtV 3R ltRtV ;t# )BasisDependentAddzh
Denotes sum of basis dependent quantities such that they cannot
be expressed as base or Mul instances.
c                	  < / pV F  p\        W@P                  4      '       g~   \        V\        4      '       d   V P                  ! VP                  !  pML\        V\
        4      '       d   V P                  ! VP                  !  pM\        \        V4      R ,           4      hW@P                  8X  d   K  VP                   F/  pVP                  V^ 4      VP                  V,          ,           W5&   K1  	  K  	  \        VP                  4       4      pV F  pW5,          ^ 8X  g   K  W5 K  	  \        V4      ^ 8X  d   V P                  # V Uu. uF  qUW5,          ,          NK  	  pp\        S
V `@  ! V .VO5/ VB p\        V\        4      '       d   V P                  ! VP                  !  # RR/p	\#        V	4      Vn        W8n        \        VP                  4       4      ^ ,          P(                  Vn        V# u upi )z  cannot be interpreted correctlycommutativeT)r   
_expr_typer   r.   ru   r   r   r>   strr   rG   getlistkeyslensuper__new__r	   _assumptions_components_sys)clsru   rK   rG   argr   tempnewargsobjri   	__class__s   &*,       r   r   BasisDependentAdd.__new__   s   
 Cc>>22c3''--#((4CS))--#((4C#CH$F%G H H hh^^ *q! 4s~~a7H H
 $   JOO%&A}!M 
 z?a88O /99jz}$$j9goc7G7w7c3==#((++$d+$[1$*+Q/44
 :s   	G1r]   )r   r   r   r   r   r   r   __classcell__r   s   @r   r   r      s    
' 'r"   r   c                  H   a  ] tR t^tRtR tR t]V 3R l4       tR t	Rt
V ;t# )BasisDependentMulzB
Denotes product of base- basis dependent quantity with a scalar.
c                	*    V P                   ! V/ VB pV# r   )_new)r   ru   rK   r   s   &*, r   r   BasisDependentMul.__new__   s    hh((
r"   c                	     \        V 4      ! V!  # r   )type)r   ru   s   &*r   _new_rawargsBasisDependentMul._new_rawargs   s     Dz4  r"   c                	  < ^ RI HpHpHpHp ^ p\
        P                  pRp	. p
V F  p\        WP                  4      '       d   V^,          pRp	K+  V\
        P                  8X  d   Rp	KD  \        WP                  V P                  34      '       d*   V^,          pVP                  pWP                  ,          pK  \        WP                  4      '       d   V^,          pTpK  \        WWEV34      '       d   V
P                  V4       K  W,          pK  	  V^8  d   \!        R4      hV^ 8X  d   \#        V/ VB # V	'       d   V P$                  # \        XV P                  4      '       d;   VP&                   Uu. uF  pV P                  W4      NK  	  ppV P                  ! V!  # \(        SV `T  ! WVP                  .V
O5/ VB p\        V\,        4      '       d   V P                  ! VP&                  !  # VP                  Vn        Wn        RR/p\/        V4      Vn        VP                  V/Vn        VP                  P4                  Vn        V# u upi )r   )CrossDotCurlGradientFTzInvalid multiplicationr   )sympy.vectorr   r   r   r   r   rp   r   
_zero_funcZero
_base_funcr.   _base_instance_measure_numberr   append
ValueErrorr   r   ru   r   r   r   r	   r   r   r   )r   ru   rK   r   r   r   r   countmeasure_numberzeroflag
extra_argsr   exprr   r   r   ri   r   s   &*,              r   r   BasisDependentMul._new   s   ;;

 C#~~..
C..#--!@AA
))"5"55C//
CH!=>>!!#&%! $ 19566aZ(((88O dCMM** II'%q }}^7%  '=='**goc"11))) !() c3==#((++!00,$d+$[1..?&&++
#'s   7Ic                	    VP                  V P                  4      pR V9   g   RV9   g   RV9   d   R V,           R,           pVR,           VP                  V P                  4      ,           # )(-+)*)_printr   r   )r   printermeasure_strs   && r   	_sympystrBasisDependentMul._sympystr1  s[    nnT%9%9:;#"4{"+c1KS 7>>$2E2E#FFFr"   r]   )r   r   r   r   r   r   r   classmethodr   r   r   r   r   s   @r   r   r      s3    ! 8 8tG Gr"   r   c                     a  ] tR tRt$ Rt/ tR]R&   R]R&   V 3R ltR t]	! R	4      R
 4       t
]
t]	! R4      R 4       t]	! R4      R 4       t]	! R4      R 4       t]	! R4      R 4       tR tR tR tRtV ;t# )r   i9  z2
Class to denote a zero basis dependent instance.
zdict['BaseVector', Expr]rG   r   _latex_formc                	p   < \         SV `  V 4      p\        P                  V 3P	                  4       Vn        V# r   )r   r   r   r   __hash___hash)r   r   r   s   & r   r   BasisDependentZero.__new__@  s0    goc" VVSM**,	
r"   c                	    V P                   # r   )r   r5   s   &r   r   BasisDependentZero.__hash__G  s    zzr"   __req__c                	,    \        WP                  4      # r   )r   r   r   s   &&r   __eq__BasisDependentZero.__eq__J  s    %11r"   r   c                	R    \        WP                  4      '       d   V# \        R 4      hz#Invalid argument types for additionr   r   r>   r   s   &&r   r    BasisDependentZero.__add__P  "    e__--LABBr"   r    c                	R    \        WP                  4      '       d   V# \        R 4      hr   r   r   s   &&r   r   BasisDependentZero.__radd__W  r   r"   r%   c                	T    \        WP                  4      '       d   V) # \        R 4      hz&Invalid argument types for subtractionr   r   s   &&r   r'   BasisDependentZero.__sub__^  s$    e__--6MDEEr"   r'   c                	R    \        WP                  4      '       d   V# \        R 4      hr   r   r   s   &&r   r%   BasisDependentZero.__rsub__e  s"    e__--LDEEr"   c                	    V # r   r]   r5   s   &r   r6   BasisDependentZero.__neg__l  s    r"   c                    V # )z0
Returns the normalized version of this vector.
r]   r5   s   &r   	normalizeBasisDependentZero.normalizeo  s	     r"   c                	    R # )0r]   )r   r   s   &&r   r   BasisDependentZero._sympystru  s    r"   r]   )r   r   r   r   r   rG   r   r   r   r   r   r   r    r   r'   r%   r6   r   r   r   r   r   s   @r   r   r   9  s     ,.J(- 9%2 &2 G:&C 'C 9%C &C :&F 'F 9%F &F r"   r   N)"
__future__r   typingr   sympy.simplifyr   rQ   r   rW   sympy.core.decoratorsr   r   sympy.core.assumptionsr	   sympy.core.functionr   r   sympy.integrals.integralsr   sympy.polys.polytoolsr   rt   
sympy.corer   r   r   sympy.core.exprr   sympy.vector.vectorr   r   r   r   r   r]   r"   r   <module>r     si    "   > C , * . 0 " "  .c0T c0L- -`OG OGd= =r"   