U
    ZÊ¹j  ã                   @   sL  d dl mZ d dlmZ d dlmZ d dlmZ d dl	m
Z
mZmZmZ d dlmZmZmZ d dlmZ dd	„ Zd
d„ Ze
dƒZe deej¡Zg Zg Ze ej¡ e ej¡ e ej ¡ e ejej ¡ e eej ¡ e eej eej  ¡ e ed ej ej ej ¡ e ed e ej dej e  ej  ¡ edƒZ!e ejee!eƒƒejd  ej  ¡ dZ"dZ#e ejej ¡ e eejeƒ¡ e ed e ej ee!eƒƒej  ¡ dZ$dZ%eD ]Ze eejB ¡ �qØdejd  ej  Z&dZ'dZ(dZ)dZ*dd„ Z+edd„ ƒZ,dd„ Z-dd „ Z.d!d"„ Z/d#d$„ Z0d%S )&é    )ÚFunction)ÚIntegral)Úlatex)Úpretty)Ú
CoordSys3DÚDelÚVectorÚexpress)ÚaÚbÚc)ÚXFAILc                 C   s   t | ddd�S )zASCII pretty-printingF©Zuse_unicodeZ	wrap_line©Úxpretty©Úexpr© r   ú_/var/www/html/bwave/python/venv/lib/python3.8/site-packages/sympy/vector/tests/test_printing.pyr      s    r   c                 C   s   t | ddd�S )zUnicode pretty-printingTFr   r   r   r   r   r   Úupretty   s    r   ÚNÚCé   é   Úfuh         âŽ›   2   âŒ         âŽž    
j_N + âŽœx_C  - âŽ® f(b) dbâŽŸ k_N
      âŽ�       âŒ¡        âŽ     z‚j_N + /         /       \
      |   2    |        |
      |x_C  -  | f(b) db|
      |        |        |
      \       /         / uy   âŽ› 2    âŽž        âŽ›âŒ         âŽž    
âŽ�a  + bâŽ  i_N  + âŽœâŽ® f(b) dbâŽŸ k_N
                âŽ�âŒ¡        âŽ     zy/ 2    \ + /  /       \
\a  + b/ i_N| |        |
           | | f(b) db|
           | |        |
           \/         / u            2
3â‹…y_Câ‹…x_N z         2
3*y_C*x_N ug   âŽ› 2    âŽž                                     
âŽ�a  + bâŽ  (i_N|k_N)  + (3â‹…y_C - 3â‹…c) (k_N|k_N)zY/ 2    \ (i_N|k_N) + (3*y_C - 3*c) (k_N|k_N)
\a  + b/                                    c                   C   sð   t td ƒdkst‚t td ƒdks(t‚t td ƒdks<t‚t td ƒdksPt‚t td	 ƒd
ksdt‚t td ƒdksxt‚t tƒdksˆt‚t td ƒdksœt‚t td ƒdks°t‚t td ƒdksÄt‚t td ƒdksØt‚t td	 ƒdksìt‚d S )Nr   Ú0é   zN.ir   z(-1)*N.ir   z	N.i + N.jé   z&N.j + (C.x**2 - Integral(f(b), b))*N.ké	   z	C.k + N.iz3*C.y*N.x**2z	(N.i|N.k)é   za*(N.i|N.k)é   za*(N.i|N.k) + (-b)*(N.j|N.k)z2(N.j|N.k) + (C.x**2 - Integral(f(b), b))*(N.k|N.k))ÚstrÚvÚAssertionErrorÚsÚdr   r   r   r   Útest_str_printing[   s    r&   c                   C   sÜ   t td ƒdkst‚t td ƒdks(t‚t td ƒdks<t‚t td ƒtksPt‚t td ƒd	ksdt‚t td
 ƒtksxt‚t tƒtksˆt‚t td ƒdksœt‚t td ƒdks°t‚t td ƒtksÄt‚t td ƒdksØt‚d S )Nr   r   r   Úi_Nr    ú(a) i_N + (-b) j_Nr   r   ú(-1) i_Né   ú(0|0)ú(a) (i_N|k_N) + (-b) (j_N|k_N)é   é
   ú((cos(a)) (i_C|k_N) + (-sin(a)) (j_C|k_N))	r   r"   r#   Ú
pretty_v_8Úpretty_v_11r$   Úpretty_sr%   Ú
pretty_d_7r   r   r   r   Útest_pretty_printing_asciik   s    r4   c                   C   sò   t td ƒdkst‚t td ƒdks(t‚t td ƒdks<t‚t td jƒdksRt‚t td ƒtksft‚t td	 ƒd
kszt‚t td ƒtksŽt‚t tƒtksžt‚t td ƒdks²t‚t td ƒdksÆt‚t td ƒt	ksÚt‚t td ƒdksît‚d S )Nr   r   r   r'   r    r(   z((a) i_N, (-b) j_N)r   r   r)   r*   r+   r,   r-   r.   r/   )
r   r"   r#   ÚargsÚupretty_v_8Úupretty_v_11r$   Ú	upretty_sr%   Úupretty_d_7r   r   r   r   Útest_pretty_print_unicode_vz   s    r:   c                   C   sÜ   t td ƒdkst‚t td ƒdks(t‚t td ƒdks<t‚t td ƒdksPt‚t td	 ƒd
ksdt‚t td ƒdksxt‚t tƒdksˆt‚t td ƒdksœt‚t td ƒdks°t‚t td ƒdksÄt‚t td ƒdksØt‚d S )Nr   z\mathbf{\hat{0}}r   z\mathbf{\hat{i}_{N}}r   z- \mathbf{\hat{i}_{N}}r    zI\left(a\right)\mathbf{\hat{i}_{N}} + \left(- b\right)\mathbf{\hat{j}_{N}}é   zP\left(\mathbf{{x}_{N}} + a^{2}\right)\mathbf{\hat{i}_{N}} + \mathbf{\hat{k}_{N}}r   zk\mathbf{\hat{j}_{N}} + \left(\mathbf{{x}_{C}}^{2} - \int f{\left(b \right)}\, db\right)\mathbf{\hat{k}_{N}}z'3 \mathbf{{y}_{C}} \mathbf{{x}_{N}}^{2}z#(\mathbf{\hat{0}}|\mathbf{\hat{0}})r   zM\left(a\right)\left(\mathbf{\hat{i}_{N}}{\middle|}\mathbf{\hat{k}_{N}}\right)r   z�\left(\mathbf{\hat{k}_{C}}{\middle|}\mathbf{\hat{k}_{N}}\right) + \left(\mathbf{\hat{i}_{N}}{\middle|}\mathbf{\hat{k}_{N}}\right)r*   zÀ\left(a^{2} + b\right)\left(\mathbf{\hat{i}_{N}}{\middle|}\mathbf{\hat{k}_{N}}\right) + \left(\int f{\left(b \right)}\, db\right)\left(\mathbf{\hat{k}_{N}}{\middle|}\mathbf{\hat{k}_{N}}\right))r   r"   r#   r$   r%   r   r   r   r   Útest_latex_printingŠ   s    r<   c                  C   sX  ddl m} m}m}m}m} tƒ }tdƒ}|j}|j	}| dƒ}	| ddd�}
d| |
d	  |
d
  }}d|
d  ||
d |	 ƒ ||
d | ƒ }|| }d| t
| || ¡ ¡ |	ƒ }| ¡ }d}d}t|ƒ|ksØt‚t|ƒ|ksèt‚|dƒ}
d| |
d	  |
d
  }}d|
d  ||
d |	 ƒ ||
d | ƒ }|| }d}t|ƒ|k�sTt‚d S )Nr   )ÚsymbolsÚsinÚcosÚpiÚUnevaluatedExprr   ÚtÚ10T)Zpositiver   iõÿÿÿéûÿÿÿr   éüÿÿÿr    éýÿÿÿr   u-  âŽ›     âŽ›y_CâŽž    âŽ›  5  âŽžâŽž    
âŽœ2â‹…sinâŽœâ”€â”€â”€âŽŸâ‹…cosâŽ�10 â‹…tâŽ âŽŸ i_C
âŽœ     âŽœ  3âŽŸ           âŽŸ    
âŽœ     âŽ�10 âŽ            âŽŸ    
âŽœâ”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€âŽŸ    
âŽœ           4         âŽŸ    
âŽ�         10          âŽ     u0  âŽ›   4    âŽ›  5  âŽž    âŽ›y_CâŽž âŽž    
âŽœ-10 â‹…sinâŽ�10 â‹…tâŽ â‹…cosâŽœâ”€â”€â”€âŽŸ âŽŸ k_C
âŽœ                   âŽœ  3âŽŸ âŽŸ    
âŽœ                   âŽ�10 âŽ  âŽŸ    
âŽœâ”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€âŽŸ    
âŽ�           2â‹…Ï€           âŽ     r.   uo   âŽ›    -4    âŽ›    5âŽž    âŽ›      -3âŽžâŽž     
âŽ�2â‹…10  â‹…cosâŽ�tâ‹…10 âŽ â‹…sinâŽ�y_Câ‹…10  âŽ âŽ  i_C )Zsympyr=   r>   r?   r@   rA   r   r   ÚyÚir   ÚcrossZdoitr   r#   )r=   r>   r?   r@   rA   ZdelopZCC_rG   ZxhatrB   ÚtenÚepsÚmuZBxZvecBZvecEZvecB_strZvecE_strr   r   r   Útest_issue_23058£   s,    , 		,rM   c                  C   s‚   t ddddgdddgd�} | j ¡ d	ks,t‚| j ¡ d
ks>t‚| jjdksNt‚| jjdks^t‚| jjdksnt‚| jjdks~t‚d S )NÚAÚxrG   ÚzrH   ÚjÚk)Zvector_namesZvariable_nameszA.izA.xZi_AZx_Az\mathbf{{i}_{A}}z\mathbf{\hat{x}_{A}})r   rH   Ú__str__r#   rO   Z_pretty_formZ_latex_form)rN   r   r   r   Útest_custom_namesÕ   s    ÿrT   N)1Zsympy.core.functionr   Zsympy.integrals.integralsr   Zsympy.printing.latexr   Zsympy.printing.prettyr   r   Zsympy.vectorr   r   r   r	   Z	sympy.abcr
   r   r   Zsympy.testing.pytestr   r   r   Zorient_new_axisrR   r   r"   r%   ÚappendÚzerorH   rQ   rO   rG   r   r6   r0   r7   r1   r$   r8   r2   r9   r3   r&   r4   r:   r<   rM   rT   r   r   r   r   Ú<module>   sV   	 ,(*
2