o
    GZh                     @   s4   d dl mZmZ d dlmZ d dlmZ dd ZdS )    )Symbolsymbols)Truss)sqrtc            
      C   s
  t d} t d}t d}td\}}}t d}t }|jg ks!J |jg ks(J |jg ks/J |ji ks6J |ji ks=J |ji ksDJ |j	i ksKJ |j
i ksRJ || ddf|ddf|ddf |j| ddf|ddf|ddfgksuJ |j| ||gksJ |jg d	ksJ |ji ksJ |ji ksJ |j	i ksJ || |j| ddf|ddfgksJ |j| |gksJ |jd
dgksJ |ji ksJ |ji ksJ ||ddf ||| |f|||f|| |f |j|| |g|||g|| |giksJ |j
|d|d|diks
J || |j|| |g|| |giksJ |j
|d|diks+J ||||f td\}}	|||f |j| ddf|ddf|ddfgksTJ |j| ||gks_J |ji ksgJ |ji ksoJ |j|| |g|||g|| |giksJ |||	f |j|| |g|	||g|| |giksJ |j
|d|	d|diksJ || |df| |d df| d| df||d df |j| |dg|d dgd| dgg||d dggiksJ |j|  |dg|d dgd| dggksJ || |d df |j| |dgd| dgg||d dggiksJ |j|  |dgd| dggks0J || df|df |j| d|diksFJ |j	i ksNJ |j| |dgd| dgt ddgt ddgg||d dgt ddggiksvJ ||  |j|diksJ |j	i ksJ |j| |dgd| dgg||d dgt ddggiksJ || df |  |j	d td | ksJ |j	d td | | ksJ |j	d | d ksJ |j
| | dksJ |j
|	 dksJ |j
| dksJ d S )NABCz
AB, BC, ACPr         )r   r   r
   r
   )r   r   r   r   zD, CDZ      -   pinnedZrollerZR_A_xZR_A_yZR_D_y)r   r   r   nodesZnode_labelsZnode_positionsmembersloadsZsupportsZreaction_loadsZinternal_forcesadd_noderemove_nodeZ
add_memberZremove_memberZchange_node_labelZchange_member_labelZ
apply_loadZremove_loadZapply_supportZremove_supportZsolver   )
r   r   r   ZABBCZACr	   tDZCD r   a/var/www/auris/lib/python3.10/site-packages/sympy/physics/continuum_mechanics/tests/test_truss.py
test_truss   s    &
 &
 (((4<.2$P
<"r   N)Zsympy.core.symbolr   r   Z'sympy.physics.continuum_mechanics.trussr   Zsympyr   r   r   r   r   r   <module>   s    