o
    *ήc                     @   s(   d dl mZmZ d dlmZ dd ZdS )    )Symbolsymbols)Trussc            
      C   sz  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 ||dd ||dd |j| ddf|ddf|ddfgkszJ |j| ||gksJ |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 ||| | |||| ||| | |j|| |g|||g|| |giksJ |j
|d|d|diksJ || |j|| |g|| |giks)J |j
|d|diks5J |||| td\}}	||| |j| ddf|ddf|ddfgks\J |j| ||gksgJ |ji ksoJ |ji kswJ |j|| |g|||g|| |giksJ |||	 |j|| |g|	||g|| |giksJ |j
|d|	d|diksJ || |d || |d d || d| d |||d d |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s
J || |d d |j| |dgd| dgg||d dggiks,J |j|  |dgd| dggks>J || d ||d |j| d|diksVJ |j	i ks^J |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sJ ||  |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 S )NABCz
AB, BC, ACPr         )r   r   r	   r	   )r
   r   r   r   zD, CDZ      -   pinnedrollerR_A_xR_A_yR_D_y)r   r   r   nodesnode_labelsnode_positionsmembersloadssupportsreaction_loadsinternal_forcesadd_noderemove_node
add_memberremove_memberchange_node_labelchange_member_label
apply_loadremove_loadapply_supportremove_support)
r   r   r   ABBCACr   tDCD r-   Y/tmp/pip-target-vg8gfxp4/lib/python/sympy/physics/continuum_mechanics/tests/test_truss.py
test_truss   s   &
(
 (((<.2$P
@r/   N)sympy.core.symbolr   r   'sympy.physics.continuum_mechanics.trussr   r/   r-   r-   r-   r.   <module>   s    