+
    ‹°³j.  ã                   ó~  € ^ RI 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 ^ RIHt ^ R	IHt . ROt ! R
 R]4      t ! R R]4      t ! R R]	4      t ! R R]4      tR tR tR tR tR tR t]P:                  P=                  R4      ^ ,          t]P:                  PA                  ]4      ]n        R# )é    )Ú
Derivative)ÚUndefinedFunctionÚAppliedUndef)ÚSymbol)Úinit_printing)ÚLatexPrinter)ÚPrettyPrinter)Úcenter_accent)Ú
StrPrinter)Ú
PRECEDENCEc                   ó0   a € ] tR t^t o RtR tR tRtV tR# )ÚVectorStrPrinterz'String Printer for vector expressions. c                óÄ  a€ ^ RI Hp VP                  o\        \	        V3R lVP
                   4       4      4      \        \        VP                  ^ ,          4      \        4      ,          '       dY   \        VP                  ^ ,          P                  4      p\        VP
                  4       F  w  rEW2P                  ,          pK  	  V# \        4       P                  V4      # )r   ©Údynamicsymbolsc              3   ó,   <"  € T F	  qS8H  x € K  	  R # 5i©N© ©Ú.0ÚiÚts   & €Ú^/home/luca/screen-checking/.venv/lib/python3.14/site-packages/sympy/physics/vector/printing.pyÚ	<genexpr>Ú5VectorStrPrinter._print_Derivative.<locals>.<genexpr>   s   øé € Ð1¡[ ˜!–V£[ùs   ƒ)Úsympy.physics.vector.functionsr   Ú_tÚboolÚsumÚ	variablesÚ
isinstanceÚtypeÚargsr   ÚstrÚfuncÚ	enumerateÚ_strr   Údoprint)ÚselfÚer   Úolr   Úvr   s   &&    @r   Ú_print_DerivativeÚ"VectorStrPrinter._print_Derivative   sš   ø€ ÝAØ×ÑˆÜ”Ô1 Q§[¢[Ó1Ó1Ó2Üœ4 §¡ q¥	›?Ô,=Ó>÷?ô ?ä�Q—V‘V˜A•Y—^‘^Ó$ˆBÜ! !§+¡+Ö.‘�Ø×)Ñ)Õ)’ñ /àˆIä“<×'Ñ'¨Ó*Ð*ó    c                ó@  € ^ RI Hp VP                  p\        \	        V4      \
        4      '       d1   \        4       P                  V4      P                  RV,          R4      # VP                  P                  RV P                  VP                  R4      ,          ,           # )r   r   z(%s)Ú z, )r   r   r   r!   r"   r   r   r(   Úreplacer%   Ú__name__Ú	stringifyr#   )r)   r*   r   r   s   &&  r   Ú_print_FunctionÚ VectorStrPrinter._print_Function   sm   € ÝAØ×ÑˆÜ”d˜1“gÔ0×1Ò1Ü“<×'Ñ'¨Ó*×2Ñ2°6¸Aµ:¸rÓBÐBØ�v‰v�‰ ¨$¯.©.¸¿¹ÀÓ*FÕ!FÕFÐFr/   r   N)	r3   Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r-   r5   Ú__static_attributes__Ú__classdictcell__©Ú__classdict__s   @r   r   r      s   ø‡ € Ù1ò
+÷Gð Gr/   r   c                   ó*   a € ] tR t^&t o RtR tRtV tR# )ÚVectorStrReprPrinterz+String repr printer for vector expressions.c                ó   € \        V4      # r   )Úrepr)r)   Úss   &&r   Ú
_print_strÚVectorStrReprPrinter._print_str(   s   € Ü�A‹wˆr/   r   N)r3   r7   r8   r9   r:   rD   r;   r<   r=   s   @r   r@   r@   &   s   ø‡ € Ù5÷ð r/   r@   c                   óF   a a€ ] tR t^,t oRtRV 3R lltV 3R ltRtVtV ;t	# )ÚVectorLatexPrinterz&Latex Printer for vector expressions. c                ó"  <€ ^ RI Hp VP                  P                  pVP                  p\        V RV,           4      '       d9   \        \        V4      \        4      '       g   \        V RV,           4      ! W4      # \        \        V4      \        4      '       di   VP                  V38X  dW   \        V4      pVe9   V P                  V\        R,          4      pV P                  V4      pV: RV: R2# \        SV `A  V4      # \        SV `E  W4      # )r   r   Ú_print_ÚPowz^{Ú})r   r   r%   r3   r   Úhasattrr!   r"   r   Úgetattrr#   r   Úparenthesizer   Úparenthesize_superÚsuperÚ_printr5   )r)   ÚexprÚexpr   r%   r   ÚbaseÚ	__class__s   &&&    €r   r5   Ú"VectorLatexPrinter._print_Function/   sÛ   ø€ ÝAØ�y‰y×!Ñ!ˆØ×Ñˆä�D˜) dÕ*×+Ò+Ü”t˜D“zÔ#4×5Ò5Ü˜4 ¨TÕ!1Ô2°4Ó=Ð=Üœ˜T›
Ô$5×6Ò6¸D¿I¹IÈ!ÈÔ<Mä˜$“<ˆDØŠð ×(Ñ(¨¬z¸%Õ/@ÓA�Ø×.Ñ.¨tÓ4�Û%)«3Ð/Ð/ä‘w‘~ dÓ+Ð+ä‘7Ñ*¨4Ó5Ð5r/   c                ó   <a€ ^ RI Hp VP                  4       p\        V\        4      '       g   RV P                  V4      ,          # VP                  oVP                  pVP                  \        4      pVP                  p\        ;QJ d    V3R lV 4       F  '       d   K   RM	  RM! V3R lV 4       4      '       * p\        ;QJ d    V3R lV 4       F  '       d   K   RM	  RM! V3R lV 4       4      '       * pV'       g	   V'       d   \        SV `5  V4      # \        V4      pV P                  V4      p	V	P!                  R^4      p
V
^ ,          p	V^8X  d   RV	,          p	MBV^8X  d   R	V	,          p	M1V^8X  d   R
V	,          p	M V^8X  d   RV	,          p	M\        SV `5  V4      # \        V
4      ^8w  d   V	RV
^,          ,           ,          p	V	# )r   r   z\left(%s\right)c              3   óN   <"  € T F  qP                   S08X  g   K  R x € K  	  R# 5i)TN)Úfree_symbolsr   s   & €r   r   Ú7VectorLatexPrinter._print_Derivative.<locals>.<genexpr>Q   s   øé € ÐC¡c ¯^©^À¸sÑ-BŸš£cùs   ƒ%›
%FTc              3   ó.   <"  € T F
  pSV8H  x € K  	  R # 5ir   r   r   s   & €r   r   rZ   R   s   øé € Ð-© 1˜˜Qž«ùs   ƒÚ_z\dot{%s}z	\ddot{%s}z
\dddot{%s}z\ddddot{%s})r   r   Údoitr!   r   r(   r   rR   Úatomsr   r    ÚallrP   r-   Úlenr5   Úsplit)r)   Úder_exprr   rR   ÚredÚsymsÚtest1Útest2ÚdotsrT   Ú
base_splitr   rU   s   &&         @€r   r-   Ú$VectorLatexPrinter._print_DerivativeE   sh  ù€ ÝAà—=‘=“?ˆÜ˜(¤J×/Ò/Ø%¨¯©°XÓ(>Õ>Ð>ð ×ÑˆØ�}‰}ˆØ�j‰jœÓ&ˆØ×!Ñ!ˆß“CÔC¡cÓC—C—C’CÔC¡cÓCÓCÔCˆß“CÔ-©Ó-—C—C’CÔ-©Ó-Ó-Ô-ˆß—EÜ‘7Ñ,¨XÓ6Ð6ô �4‹yˆØ×#Ñ# DÓ)ˆØ—Z‘Z  QÓ'ˆ
Ø˜!�}ˆØ�1Œ9Ø Õ%‰DØ�QŒYØ $Õ&‰DØ�QŒYØ  4Õ'‰DØ�QŒYØ! DÕ(‰Dä‘7Ñ,¨XÓ6Ð6Üˆz‹?˜aÔØ�C˜* Q�-Õ'Õ'ˆDØˆr/   r   r   )
r3   r7   r8   r9   r:   r5   r-   r;   r<   Ú__classcell__©rU   r>   s   @@r   rG   rG   ,   s   ù‡ € Ù0÷6÷,"õ "r/   rG   c                   óB   a a€ ] tR t^jt oRtV 3R ltV 3R ltRtVtV ;t	# )ÚVectorPrettyPrinterz)Pretty Printer for vectorialexpressions. c           
     óz  <€ ^ RI Hp VP                  p^ p\        \	        VP
                  4      4      p\        V4      ^ 8”  d9   VR
,          V8X  d   VP                  4        V^,          pK9  \        SV `%  V4      # \        \        VP                  4      \        4      '       d   VP                  P                  V38X  g   \        SV `%  V4      # V P                  VP                  4      p\        VP                   4      ^8”  d   \        SV `%  V4      # V^8¼  d   \        SV `%  V4      # ^ R^R^R^R^R/pVP"                  pV P$                  '       gD   Rp	\'        ^ V4       F  p
V	R,          p	K  	  VR,          ^ ;;,          V	R	,           ,          uu&   V# \)        VR,          ^ ,          Wt,          4      .VR&   V# )r   r   r1   u   Ì‡u   Ìˆu   âƒ›u   âƒœÚ'Úpicturez(t)éÿÿÿÿ)r   r   r   ÚlistÚreversedr    r`   ÚpoprP   r-   r!   r"   rR   r   r#   r5   rp   Ú__dict__Ú_use_unicodeÚranger
   )r)   Úderivr   r   Údot_ird   Úpformrg   ÚdÚapostrophesr   rU   s   &&         €r   r-   Ú%VectorPrettyPrinter._print_Derivativem   sŠ  ø€ ÝAà×ÑˆØˆÜ”H˜UŸ_™_Ó-Ó.ˆä�$‹i˜!ŒmØ�B�x˜1Œ}Ø—‘”
Ø˜•
’ä‘wÑ0°Ó7Ð7äœ4 §
¡
Ó+Ô->×?Ò?Ø—‘—‘ Q DÔ(Ü‘7Ñ,¨UÓ3Ð3à×(Ñ(¨¯©Ó4ˆEô ˆu�}‰}Ó Ô!Ü‘7Ñ,¨UÓ3Ð3ð �AŒ:Ü‘7Ñ,¨UÓ3Ð3ð �2ØÐ,ØÐ,ØÐ3ØÐ2ð	4ˆð �N‰Nˆð × × Ð ØˆKÜ˜1˜e–_�Ø˜sÕ"’ñ %àˆi�L˜�O˜{¨UÕ2Õ2‹Oð ˆô *¨!¨I­,°q­/¸4½;ÓGÐHˆAˆi‰LØˆr/   c                ó   <€ ^ RI Hp VP                  pVP                  pVP                  pVP
                  pV P                  \        V4      4      p\        V\        4      '       d   WS38X  g   \        SV `-  V4      # V# )r   r   )r   r   r   r%   r#   r3   Ú_print_Symbolr   r!   r   rP   r5   )	r)   r*   r   r   r%   r#   Ú	func_namerz   rU   s	   &&      €r   r5   Ú#VectorPrettyPrinter._print_Function�   sl   ø€ ÝAØ×Ñˆà�v‰vˆØ�v‰vˆØ—M‘Mˆ	Ø×"Ñ"¤6¨)Ó#4Ó5ˆô ˜4Ô!2×3Ò3¸À¼Ü‘7Ñ*¨1Ó-Ð-Øˆr/   r   )
r3   r7   r8   r9   r:   r-   r5   r;   r<   rj   rk   s   @@r   rm   rm   j   s   ù‡ € Ù3õ.÷`õ r/   rm   c                óZ   € \        V 3/ VB p^ RIpVR8w  d   W#n        \        V4       R# R# )a  Function for printing of expressions generated in the
sympy.physics vector package.

Extends SymPy's StrPrinter, takes the same setting accepted by SymPy's
:func:`~.sstr`, and is equivalent to ``print(sstr(foo))``.

Parameters
==========

expr : valid SymPy object
    SymPy expression to print.
settings : args
    Same as the settings accepted by SymPy's sstr().

Examples
========

>>> from sympy.physics.vector import vprint, dynamicsymbols
>>> u1 = dynamicsymbols('u1')
>>> print(u1)
u1(t)
>>> vprint(u1)
u1

NÚNone)ÚvsprintÚbuiltinsr\   Úprint)rR   ÚsettingsÚoutstrr…   s   &,  r   Úvprintr‰   ­   s/   € ô6 �TÑ&˜XÑ&€FãØ�&ÔØŒ
ÜˆfŽñ 	r/   c                ó:   € \        V4      pVP                  V 4      # )zíFunction for displaying expression representation's with vector
printing enabled.

Parameters
==========

expr : valid SymPy object
    SymPy expression to print.
settings : args
    Same as the settings accepted by SymPy's sstrrepr().

)r@   r(   )rR   r‡   Úps   &, r   Ú	vsstrreprrŒ   Ð   s   € ô 	˜XÓ&€AØ�9‰9�T‹?Ðr/   c                ó:   € \        V4      pVP                  V 4      # )aE  Function for displaying expressions generated in the
sympy.physics vector package.

Returns the output of vprint() as a string.

Parameters
==========

expr : valid SymPy object
    SymPy expression to print
settings : args
    Same as the settings accepted by SymPy's sstr().

Examples
========

>>> from sympy.physics.vector import vsprint, dynamicsymbols
>>> u1, u2 = dynamicsymbols('u1 u2')
>>> u2d = dynamicsymbols('u2', level=1)
>>> print("%s = %s" % (u1, u2 + u2d))
u1(t) = u2(t) + Derivative(u2(t), t)
>>> print("%s = %s" % (vsprint(u1), vsprint(u2 + u2d)))
u1 = u2 + u2'

)r   r(   )rR   r‡   Ústring_printers   &, r   r„   r„   á   s   € ô6 & hÓ/€NØ×!Ñ! $Ó'Ð'r/   c                ó¨   € \        V4      pVP                  R,          p^ RIHp V! V4      p VP	                  V 4      V! V4       #   T! T4       i ; i)aÎ  Function for pretty printing of expressions generated in the
sympy.physics vector package.

Mainly used for expressions not inside a vector; the output of running
scripts and generating equations of motion. Takes the same options as
SymPy's :func:`~.pretty_print`; see that function for more information.

Parameters
==========

expr : valid SymPy object
    SymPy expression to pretty print
settings : args
    Same as those accepted by SymPy's pretty_print.


Úuse_unicode)Úpretty_use_unicode)rm   Ú	_settingsÚ&sympy.printing.pretty.pretty_symbologyr‘   r(   )rR   r‡   Úppr�   r‘   Úuflags   &,    r   Úvpprintr–      sN   € ô& 
˜XÓ	&€Bð
 —,‘,˜}Õ-€KÝIÙ˜{Ó+€Eð"Ø�z‰z˜$Óá˜5Õ!øÑ˜5Õ!ús   ®A Á
Ac                ó:   € \        V4      pVP                  V 4      # )aa  Function for printing latex representation of sympy.physics.vector
objects.

For latex representation of Vectors, Dyadics, and dynamicsymbols. Takes the
same options as SymPy's :func:`~.latex`; see that function for more
information;

Parameters
==========

expr : valid SymPy object
    SymPy expression to represent in LaTeX form
settings : args
    Same as latex()

Examples
========

>>> from sympy.physics.vector import vlatex, ReferenceFrame, dynamicsymbols
>>> N = ReferenceFrame('N')
>>> q1, q2 = dynamicsymbols('q1 q2')
>>> q1d, q2d = dynamicsymbols('q1 q2', 1)
>>> q1dd, q2dd = dynamicsymbols('q1 q2', 2)
>>> vlatex(N.x + N.y)
'\\mathbf{\\hat{n}_x} + \\mathbf{\\hat{n}_y}'
>>> vlatex(q1 + q2)
'q_{1} + q_{2}'
>>> vlatex(q1d)
'\\dot{q}_{1}'
>>> vlatex(q1 * q2d)
'q_{1} \\dot{q}_{2}'
>>> vlatex(q1dd * q1 / q1d)
'\\frac{q_{1} \\ddot{q}_{1}}{\\dot{q}_{1}}'

)rG   r(   )rR   r‡   Úlatex_printers   &, r   Úvlatexr™   "  s    € ôH ' xÓ0€Mà× Ñ  Ó&Ð&r/   c                 óR   € \         V R&   \        V R&   \        V R&   \        R/ V B  R# )a�  Initializes time derivative printing for all SymPy objects, i.e. any
functions of time will be displayed in a more compact notation. The main
benefit of this is for printing of time derivatives; instead of
displaying as ``Derivative(f(t),t)``, it will display ``f'``. This is
only actually needed for when derivatives are present and are not in a
physics.vector.Vector or physics.vector.Dyadic object. This function is a
light wrapper to :func:`~.init_printing`. Any keyword
arguments for it are valid here.

{0}

Examples
========

>>> from sympy import Function, symbols
>>> t, x = symbols('t, x')
>>> omega = Function('omega')
>>> omega(x).diff()
Derivative(omega(x), x)
>>> omega(t).diff()
Derivative(omega(t), t)

Now use the string printer:

>>> from sympy.physics.vector import init_vprinting
>>> init_vprinting(pretty_print=False)
>>> omega(x).diff()
Derivative(omega(x), x)
>>> omega(t).diff()
omega'

Ústr_printerÚpretty_printerr˜   Nr   )rŒ   r–   r™   r   )Úkwargss   ,r   Úinit_vprintingrž   K  s/   € ôB &€Fˆ=ÑÜ&€FÐÑÜ$€Fˆ?ÑÜÑ�FÔr/   zExamples
    ========N)r‰   rŒ   r„   r–   r™   rž   )!Úsympy.core.functionr   r   r   Úsympy.core.symbolr   Úsympy.interactive.printingr   Úsympy.printing.latexr   Úsympy.printing.pretty.prettyr	   r“   r
   Úsympy.printing.strr   Úsympy.printing.precedencer   Ú__all__r   r@   rG   rm   r‰   rŒ   r„   r–   r™   rž   r:   ra   ÚparamsÚformatr   r/   r   Ú<module>r©      s·   ðÝ *ß ?Ý $Ý 4Ý -Ý 6Ý @Ý )Ý 0ò€ôG�zô Gô.Ð+ô ô;˜ô ;ô|@˜-ô @òF òFò"(ò>"òD&'òR$ðN 
×	Ñ	×	$Ñ	$Ð%=Ó	>¸qÕ	A€Ø'×/Ñ/×6Ñ6°vÓ>€Ö r/   